Creare un SAS dell'account
A partire dalla versione 2015-04-05, Archiviazione di Azure supporta la creazione di un nuovo tipo di firma di accesso condiviso (SAS) a livello dell'account di archiviazione. Creando una firma di accesso condiviso dell'account, è possibile:
Delegare l'accesso alle operazioni a livello di servizio attualmente non disponibili con una firma di accesso condiviso specifica del servizio, ad esempio le
Get/Set Service Properties
operazioni eGet Service Stats
.Delegare l'accesso a più servizi in un account di archiviazione alla volta. Ad esempio, è possibile delegare l'accesso alle risorse sia in Archiviazione BLOB di Azure che in File di Azure usando una firma di accesso condiviso dell'account.
Delegare l'accesso alle operazioni di scrittura ed eliminazione per contenitori, code, tabelle e condivisioni file, che non sono disponibili con una firma di accesso condiviso specifica dell'oggetto.
Specificare un indirizzo IP o un intervallo di indirizzi IP da cui accettare le richieste.
Specificare il protocollo HTTP da cui accettare le richieste (HTTPS o HTTP/HTTPS).
I criteri di accesso archiviati non sono attualmente supportati per una firma di accesso condiviso dell'account.
Attenzione
Le firme di accesso condiviso sono chiavi che concedono le autorizzazioni alle risorse di archiviazione ed è necessario proteggerle esattamente come si protegge una chiave dell'account. È importante proteggere una firma di accesso condiviso da usi dannosi o non intenzionali. Usare la discrezione nella distribuzione di una firma di accesso condiviso e disporre di un piano per revocare una firma di accesso condiviso compromessa. Le operazioni che usano firme di accesso condiviso devono essere eseguite solo tramite una connessione HTTPS e gli URI di firma di accesso condiviso devono essere distribuiti solo in una connessione sicura, ad esempio HTTPS.
Autorizzare una firma di accesso condiviso dell'account
È possibile proteggere una firma di accesso condiviso dell'account usando una chiave dell'account di archiviazione. Quando si crea una firma di accesso condiviso dell'account, l'applicazione client deve possedere la chiave dell'account.
Per usare Microsoft Entra credenziali per proteggere una firma di accesso condiviso per un contenitore o un BLOB, creare una firma di accesso condiviso della delega utente.
Costruire un URI di firma di accesso condiviso dell'account
L'URI di firma di accesso condiviso dell'account è costituito dall'URI della risorsa per cui la firma di accesso condiviso delega l'accesso, seguito da un token di firma di accesso condiviso. Il token di firma di accesso condiviso è la stringa di query che include tutte le informazioni necessarie per autorizzare una richiesta alla risorsa. Specifica il servizio, la risorsa e le autorizzazioni disponibili per l'accesso e il periodo di tempo durante il quale la firma è valida.
Specificare i parametri di firma di accesso condiviso dell'account
I parametri obbligatori e facoltativi per il token di firma di accesso condiviso sono descritti nella tabella seguente:
Parametro di query di firma di accesso condiviso | Descrizione |
---|---|
api-version |
Facoltativa. Specifica la versione del servizio di archiviazione da usare per eseguire la richiesta effettuata usando l'URI di firma di accesso condiviso dell'account. Per altre informazioni, vedere Autorizzare le richieste usando una firma di accesso condiviso. |
SignedVersion (sv) |
Obbligatorio. Specifica la versione del servizio di archiviazione firmata da usare per autorizzare le richieste effettuate con la firma di accesso condiviso dell'account. Deve essere impostato sulla versione 2015-04-05 o successiva. Per altre informazioni, vedere Autorizzare le richieste usando una firma di accesso condiviso. |
SignedServices (ss) |
Obbligatorio. Specifica i servizi firmati accessibili con la firma di accesso condiviso dell'account. I valori possibili sono: - BLOB ( b )- Coda ( q )- Tabella ( t )- File ( f )È possibile combinare i valori per fornire l'accesso a più di un servizio. Ad esempio, ss=bf specifica l'accesso all'archiviazione BLOB e agli endpoint File di Azure. |
SignedResourceTypes (srt) |
Obbligatorio. Specifica i tipi di risorsa firmati accessibili con la firma di accesso condiviso dell'account. - Servizio ( s ): accesso alle API a livello di servizio (ad esempio, Get/Set Service Properties, Get Service Stats, List Containers/Queues/Tables/Shares).- Contenitore ( c ): accesso alle API a livello di contenitore (ad esempio, Crea/Elimina contenitore, Crea/Elimina coda, Crea/Elimina tabella, Crea/Elimina condivisione, Elenca BLOB/File e directory).- Oggetto ( o ): accesso alle API a livello di oggetto per BLOB, messaggi in coda, entità di tabella e file ,ad esempio Put BLOB, Query Entity, Get Messages, Create File.È possibile combinare i valori per fornire l'accesso a più tipi di risorsa. Ad esempio, srt=sc specifica l'accesso alle risorse del servizio e del contenitore. |
SignedPermissions (sp) |
Obbligatorio. Specifica le autorizzazioni firmate per la firma di accesso condiviso dell'account. Le autorizzazioni sono valide solo se corrispondono al tipo di risorsa firmato specificato. Se non corrispondono, vengono ignorati. - Lettura ( r ): valido per tutti i tipi di risorse firmati (Servizio, Contenitore e Oggetto). Consente le autorizzazioni di lettura per il tipo di risorsa specificato.- Scrittura ( w ): valido per tutti i tipi di risorse firmati (Servizio, Contenitore e Oggetto). Consente l'accesso in scrittura per il tipo di risorsa specificato, consentendo a un utente di creare e aggiornare le risorse.- Elimina ( d ): valido per i tipi di risorse Contenitore e Oggetto, ad eccezione dei messaggi della coda.- Eliminazione permanente ( y ): valido solo per il tipo di risorsa Object del BLOB.- Elenco ( l ): valido solo per i tipi di risorse del servizio e del contenitore.- Aggiungi ( a ): valido solo per i tipi di risorse Object seguenti: messaggi di coda, entità di tabella e BLOB di accodamento.- Crea ( c ): valido per i tipi di risorse Contenitore e i tipi di risorse Object seguenti: BLOB e file. Gli utenti possono creare nuove risorse, ma potrebbero non sovrascrivere le risorse esistenti.- Aggiornamento ( u ): valido solo per i tipi di risorse Object seguenti: messaggi di coda ed entità di tabella.- Processo ( p ): valido solo per il tipo di risorsa Object seguente: messaggi della coda.- Tag ( t ): valido solo per il tipo di risorsa Object seguente: BLOB. Consente operazioni di tag BLOB.- Filtro ( f ): valido solo per il tipo di risorsa Object seguente: BLOB. Consente di filtrare in base al tag BLOB.- Impostare i criteri di immutabilità ( i ): valido solo per il tipo di risorsa Oggetto seguente: BLOB. Consente di impostare/eliminare criteri di immutabilità e blocco legale in un BLOB. |
SignedStart (st) |
facoltativo. Ora in cui la firma di accesso condiviso diventa valida, espressa in uno dei formati ISO 8601 UTC accettati. Se viene omesso, si presuppone che l'ora di inizio sia l'ora in cui il servizio di archiviazione riceve la richiesta. Per altre informazioni sui formati UTC accettati, vedere Formattazione dei valori DateTime. |
SignedExpiry (se) |
Obbligatorio. Ora in cui la firma di accesso condiviso diventa non valida, espressa in uno dei formati ISO 8601 UTC accettati. Per altre informazioni sui formati UTC accettati, vedere Formattazione dei valori DateTime. |
SignedIP (sip) |
facoltativo. Specifica un indirizzo IP o un intervallo di indirizzi IP da cui accettare le richieste. Quando si specifica un intervallo, tenere presente che l'intervallo è inclusivo. Sono supportati solo gli indirizzi IPv4. Ad esempio, sip=168.1.5.65 o sip=168.1.5.60-168.1.5.70 . |
SignedProtocol (spr) |
facoltativo. Specifica il protocollo consentito per una richiesta effettuata con la firma di accesso condiviso dell'account. I valori possibili sono solo HTTPS e HTTP (https,http ) o HTTPS (https ). Il valore predefinito è https,http .Si noti che HTTP only non è un valore consentito. |
SignedEncryptionScope (ses) |
facoltativo. Indica l'ambito di crittografia da usare per crittografare il contenuto della richiesta. Questo campo è supportato con la versione 2020-12-06 e successive. |
Signature (sig) |
Obbligatorio. La parte della firma dell'URI viene usata per autorizzare la richiesta effettuata con la firma di accesso condiviso. La stringa da firmare è una stringa univoca creata dai campi che devono essere verificati per autorizzare la richiesta. La firma è un codice HMAC (Hash-Based Message Authentication Code) calcolato sulla stringa da firmare e sulla chiave usando l'algoritmo SHA256 e quindi codificato usando la codifica Base64. |
Specificare il signedVersion
campo
Il signedVersion
campo (sv
) contiene la versione del servizio della firma di accesso condiviso. Questo valore specifica la versione dell'autorizzazione chiave condivisa usata da questa firma di accesso condiviso (nel signature
campo ). Il valore specifica anche la versione del servizio per le richieste effettuate con questa firma di accesso condiviso.
Per informazioni sulla versione usata quando si eseguono richieste tramite una firma di accesso condiviso, vedere Controllo delle versioni per i servizi di archiviazione di Azure.
Per informazioni su come questo parametro influisce sull'autorizzazione delle richieste effettuate con una firma di accesso condiviso, vedere Delegare l'accesso con una firma di accesso condiviso.
Nome del campo | Query parameter (Parametro di query) | Descrizione |
---|---|---|
signedVersion |
sv |
Obbligatorio. Supportato nella versione 2015-04-05 e successive. Versione del servizio di archiviazione da usare per autorizzare e gestire le richieste eseguite con questa firma di accesso condiviso. Per altre informazioni, vedere Controllo delle versioni per i servizi di archiviazione di Azure. |
Specificare un indirizzo IP o un intervallo IP
A partire dalla versione 2015-04-05, il campo facoltativo signedIp
(sip
) specifica un indirizzo IP pubblico o un intervallo di indirizzi IP pubblici da cui accettare le richieste. Se l'indirizzo IP da cui ha origine la richiesta non corrisponde all'indirizzo IP o all'intervallo di indirizzi specificato nel token di firma di accesso condiviso, la richiesta non è autorizzata. Sono supportati solo gli indirizzi IPv4.
Quando si specifica un intervallo di indirizzi IP, tenere presente che l'intervallo è inclusivoPer esempio, specificare sip=168.1.5.65
o sip=168.1.5.60-168.1.5.70
nella firma di accesso condiviso limita la richiesta a tali indirizzi IP.
Nella tabella seguente viene descritto se includere il signedIp
campo in un token di firma di accesso condiviso per uno scenario specificato, in base all'ambiente client e al percorso dell'account di archiviazione.
Ambiente client | Posizione dell'account di archiviazione | Recommendation |
---|---|---|
Client in esecuzione in Azure | Nella stessa area del client | Una firma di accesso condiviso fornita al client in questo scenario non deve includere un indirizzo IP in uscita per il signedIp campo. Le richieste effettuate dall'interno della stessa area che usano una firma di accesso condiviso con un indirizzo IP in uscita specificato avranno esito negativo.Usare invece una rete virtuale di Azure per gestire le restrizioni di sicurezza di rete. Le richieste ad Archiviazione di Azure dall'interno della stessa area avvengono sempre tramite un indirizzo IP privato. Per altre informazioni, vedere Configurare i firewall e le reti virtuali di Archiviazione di Azure. |
Client in esecuzione in Azure | In un'area diversa dal client | Una firma di accesso condiviso fornita al client in questo scenario può includere un indirizzo IP pubblico o un intervallo di indirizzi per il signedIp campo. Una richiesta effettuata con la firma di accesso condiviso deve provenire dall'indirizzo IP o dall'intervallo di indirizzi specificato. |
Client in esecuzione in locale o in un ambiente cloud diverso | In qualsiasi area di Azure | Una firma di accesso condiviso fornita al client in questo scenario può includere un indirizzo IP pubblico o un intervallo di indirizzi per il signedIp campo. Una richiesta effettuata con la firma di accesso condiviso deve provenire dall'indirizzo IP o dall'intervallo di indirizzi specificato.Se la richiesta passa attraverso un proxy o un gateway, specificare l'indirizzo IP in uscita pubblico del proxy o del gateway per il signedIp campo. |
Specificare il protocollo HTTP
A partire dalla versione 2015-04-05, il campo facoltativo signedProtocol
(spr
) specifica il protocollo consentito per una richiesta effettuata con la firma di accesso condiviso. I valori possibili sono solo HTTPS e HTTP (https,http
) o HTTPS (https
). Il valore predefinito è https,http
. Si noti che SOLO HTTP non è un valore consentito.
Specificare l'ambito di crittografia
Usando il campo nell'URI signedEncryptionScope
, è possibile specificare l'ambito di crittografia che l'applicazione client può usare. Applica la crittografia lato server con l'ambito di crittografia specificato quando si caricano BLOB (PUT) con il token di firma di accesso condiviso. Get e HEAD non saranno limitati e eseguiti come in precedenza.
La tabella seguente descrive come fare riferimento a un ambito di crittografia firmato nell'URI:
Nome del campo | Query parameter (Parametro di query) | Descrizione |
---|---|---|
signedEncryptionScope |
ses |
Facoltativa. Indica l'ambito di crittografia da usare per crittografare il contenuto della richiesta. |
Questo campo è supportato con la versione 2020-12-06 o successiva. Se si aggiunge prima ses
della versione supportata, il servizio restituisce il codice di risposta di errore 403 (Accesso negato).
Se si imposta l'ambito di crittografia predefinito per il contenitore o il file system, il ses
parametro di query rispetta i criteri di crittografia del contenitore. Se esiste una mancata corrispondenza tra il ses
parametro di query e x-ms-default-encryption-scope
l'intestazione e l'intestazione x-ms-deny-encryption-scope-override
è impostata su true
, il servizio restituisce il codice di risposta di errore 403 (Accesso negato).
Quando si specifica l'intestazione x-ms-encryption-scope
e il ses
parametro di query nella richiesta PUT, il servizio restituisce il codice di risposta di errore 400 (richiesta non valida) in caso di mancata corrispondenza.
Creare la stringa di firma
Per costruire la stringa di firma per una firma di accesso condiviso dell'account, creare innanzitutto la stringa da firmare dai campi che compongono la richiesta e quindi codificare la stringa come UTF-8 e calcolare la firma usando l'algoritmo HMAC-SHA256.
Nota
I campi inclusi nella stringa da firmare devono essere decodificati tramite URL.
Per costruire la stringa da firmare per una firma di accesso condiviso dell'account, usare il formato seguente:
StringToSign = accountname + "\n" +
signedpermissions + "\n" +
signedservice + "\n" +
signedresourcetype + "\n" +
signedstart + "\n" +
signedexpiry + "\n" +
signedIP + "\n" +
signedProtocol + "\n" +
signedversion + "\n"
La versione 2020-12-06 aggiunge il supporto per il campo ambito di crittografia firmato. Per costruire la stringa da firmare per una firma di accesso condiviso dell'account, usare il formato seguente:
StringToSign = accountname + "\n" +
signedpermissions + "\n" +
signedservice + "\n" +
signedresourcetype + "\n" +
signedstart + "\n" +
signedexpiry + "\n" +
signedIP + "\n" +
signedProtocol + "\n" +
signedversion + "\n" +
signedEncryptionScope + "\n"
Autorizzazioni di firma di accesso condiviso dell'account per operazione
Le tabelle nelle sezioni seguenti elencano varie API per ogni servizio e i tipi di risorse firmati e le autorizzazioni firmate supportate per ogni operazione.
Servizio BLOB
La tabella seguente elenca le operazioni del servizio BLOB e indica il tipo di risorsa firmato e le autorizzazioni firmate da specificare quando si delega l'accesso a tali operazioni.
Operazione | Servizio firmato | Tipo di risorsa firmato | Autorizzazione firmata |
---|---|---|---|
List Containers | BLOB (b) | Servizio (s) | Elenco (l) |
Get Blob Service Properties | BLOB (b) | Servizio (s) | Lettura (r) |
Set Blob Service Properties | BLOB (b) | Servizio (s) | Scrittura (w) |
Get Blob Service Stats | BLOB (b) | Servizio (s) | Lettura (r) |
Create Container | BLOB (b) | Contenitore (c) | Create(c) o Write (w) |
Get Container Properties | BLOB (b) | Contenitore (c) | Lettura (r) |
Get Container Metadata | BLOB (b) | Contenitore (c) | Lettura (r) |
Set Container Metadata | BLOB (b) | Contenitore (c) | Scrittura (w) |
Lease Container | BLOB (b) | Contenitore (c) | Scrittura (w) o Eliminazione (d)1 |
Delete Container | BLOB (b) | Contenitore (c) | Elimina (d)1 |
Trovare BLOB per tag nel contenitore | BLOB (b) | Contenitore (c) | Filtro (f) |
List Blobs | BLOB (b) | Contenitore (c) | Elenco (l) |
Put BLOB (create new block BLOB) | BLOB (b) | Oggetto (o) | Creare (c) o Write (w) |
Put BLOB (sovrascrivere IL BLOB di blocchi esistente) | BLOB (b) | Oggetto (o) | Scrittura (w) |
Put BLOB (create new page BLOB) | BLOB (b) | Oggetto (o) | Creare (c) o Write (w) |
Put BLOB (sovrascrivere IL BLOB di pagine esistente) | BLOB (b) | Oggetto (o) | Scrittura (w) |
Get Blob | BLOB (b) | Oggetto (o) | Lettura (r) |
Get Blob Properties | BLOB (b) | Oggetto (o) | Lettura (r) |
Set Blob Properties | BLOB (b) | Oggetto (o) | Scrittura (w) |
Get Blob Metadata | BLOB (b) | Oggetto (o) | Lettura (r) |
Set Blob Metadata | BLOB (b) | Oggetto (o) | Scrittura (w) |
Ottenere tag BLOB | BLOB (b) | Oggetto (o) | Tag (t) |
Impostare tag BLOB | BLOB (b) | Oggetto (o) | Tag (t) |
Trovare BLOB per tag | BLOB (b) | Oggetto (o) | Filtro (f) |
Delete Blob | BLOB (b) | Oggetto (o) | Elimina (d)1 |
Eliminare definitivamente snapshot/versione | BLOB (b) | Oggetto (o) | Eliminazione permanente (y) |
Lease Blob | BLOB (b) | Oggetto (o) | Scrittura (w) o Eliminazione (d)1 |
Snapshot Blob | BLOB (b) | Oggetto (o) | Creare (c) o Write (w) |
Copia BLOB (destinazione è nuovo BLOB) | BLOB (b) | Oggetto (o) | Creare (c) o Write (w) |
Copia BLOB (destinazione è un BLOB esistente) | BLOB (b) | Oggetto (o) | Scrittura (w) |
Copia incrementale | BLOB (b) | Oggetto (o) | Creare (c) o Write (w) |
Abort Copy Blob | BLOB (b) | Oggetto (o) | Scrittura (w) |
Put Block | BLOB (b) | Oggetto (o) | Scrittura (w) |
Inserisci elenco blocchi (crea nuovo BLOB) | BLOB (b) | Oggetto (o) | Scrittura (w) |
Put Block List (aggiornare il BLOB esistente) | BLOB (b) | Oggetto (o) | Scrittura (w) |
Get Block List | BLOB (b) | Oggetto (o) | Lettura (r) |
Put Page | BLOB (b) | Oggetto (o) | Scrittura (w) |
Get Page Ranges | BLOB (b) | Oggetto (o) | Lettura (r) |
Accodamento blocco | BLOB (b) | Oggetto (o) | Aggiungere (a) o Write (w) |
Pagina cancella | BLOB (b) | Oggetto (o) | Scrittura (w) |
1 L'autorizzazione Delete
consente di interrompere un lease in un BLOB o un contenitore con la versione 2017-07-29 e versioni successive.
Servizio di accodamento
Nella tabella seguente sono elencate le operazioni del servizio code e indica quale tipo di risorsa firmata e autorizzazioni firmate per specificare quando si delega l'accesso a tali operazioni.
Operazione | Servizio firmato | Tipo di risorsa firmato | Autorizzazione firmata |
---|---|---|---|
Get Queue Service Properties | Coda (q) | Servizio (s) | Lettura (r) |
Set Queue Service Properties | Coda (q) | Servizio (s) | Scrittura (w) |
Elenca code | Coda (q) | Servizio (s) | Elenco (l) |
Get Queue Service Stats | Coda (q) | Servizio (s) | Lettura (r) |
Creare una coda | Coda (q) | Contenitore (c) | Create(c) o Write (w) |
Eliminazione code | Coda (q) | Contenitore (c) | Eliminazione (d) |
Operazione Get Queue Metadata | Coda (q) | Contenitore (c) | Lettura (r) |
Operazione Set Queue Metadata | Coda (q) | Contenitore (c) | Scrittura (w) |
Put Message | Coda (q) | Oggetto (o) | Add (a) |
Get Messages | Coda (q) | Oggetto (o) | Processo (p) |
Peek Messages | Coda (q) | Oggetto (o) | Lettura (r) |
Eliminazione di messaggi | Coda (q) | Oggetto (o) | Processo (p) |
Clear Messages | Coda (q) | Oggetto (o) | Eliminazione (d) |
Aggiornamento del messaggio | Coda (q) | Oggetto (o) | Aggiornamento (u) |
Servizio tabelle
Nella tabella seguente sono elencate le operazioni del servizio tabelle e indica il tipo di risorsa firmato e le autorizzazioni firmate da specificare quando si delega l'accesso a tali operazioni.
Operazione | Servizio firmato | Tipo di risorsa firmato | Autorizzazione firmata |
---|---|---|---|
Get Table Service Properties | Tabella (t) | Servizio (s) | Lettura (r) |
Set Table Service Properties | Tabella (t) | Servizio (s) | Scrittura (w) |
Get Table Service Stats | Tabella (t) | Servizio (s) | Lettura (r) |
Query su tabelle | Tabella (t) | Contenitore (c) | Elenco (l) |
Create Table | Tabella (t) | Contenitore (c) | Creare (c) o Write (w) |
Elimina tabella | Tabella (t) | Contenitore (c) | Eliminazione (d) |
Query Entities | Tabella (t) | Oggetto (o) | Lettura (r) |
Insert Entity | Tabella (t) | Oggetto (o) | Add (a) |
Insert Or Merge Entity | Tabella (t) | Oggetto (o) | Aggiungere (a) e Aggiornare (u)1 |
Insert Or Replace Entity | Tabella (t) | Oggetto (o) | Aggiungere (a) e Aggiornare (u)1 |
Update Entity | Tabella (t) | Oggetto (o) | Aggiornamento (u) |
Merge Entity | Tabella (t) | Oggetto (o) | Aggiornamento (u) |
Delete Entity | Tabella (t) | Oggetto (o) | Eliminazione (d) |
1 Sono necessarie autorizzazioni di aggiunta e aggiornamento per le operazioni upsert nel servizio Tabelle.
Servizio file
Nella tabella seguente sono elencate le operazioni del servizio file e indica il tipo di risorsa firmato e le autorizzazioni firmate da specificare quando si delega l'accesso a tali operazioni.
Operazione | Servizio firmato | Tipo di risorsa firmato | Autorizzazione firmata |
---|---|---|---|
Elenco di condivisioni | File (f) | Servizio (s) | Elenco (l) |
Get File Service Properties | File (f) | Servizio (s) | Lettura (r) |
Set File Service Properties | File (f) | Servizio (s) | Scrittura (w) |
Get Share Stats | File (f) | Contenitore (c) | Lettura (r) |
Create Share | File (f) | Contenitore (c) | Creare (c) o Write (w) |
condivisione snapshot | File (f) | Contenitore (c) | Creare (c) o Write (w) |
Ottenere le proprietà di condivisione | File (f) | Contenitore (c) | Lettura (r) |
Set Share Properties | File (f) | Contenitore (c) | Scrittura (w) |
Get Share Metadata | File (f) | Contenitore (c) | Lettura (r) |
Set Share Metadata | File (f) | Contenitore (c) | Scrittura (w) |
Delete Share | File (f) | Contenitore (c) | Elimina (d) |
Elenco di directory e file | File (f) | Contenitore (c) | Elenco (l) |
Creazione di directory | File (f) | Oggetto (o) | Creare (c) o scrivere (w) |
Get Directory Properties | File (f) | Oggetto (o) | Lettura (r) |
Ottenere i metadati della directory | File (f) | Oggetto (o) | Lettura (r) |
Set Directory Metadata | File (f) | Oggetto (o) | Scrittura (w) |
Delete Directory | File (f) | Oggetto (o) | Elimina (d) |
Crea file (crea nuovo) | File (f) | Oggetto (o) | Creare (c) o scrivere (w) |
Crea file (sovrascrivi esistente) | File (f) | Oggetto (o) | Scrittura (w) |
Get File | File (f) | Oggetto (o) | Lettura (r) |
Get File Properties | File (f) | Oggetto (o) | Lettura (r) |
Recupera metadati di file | File (f) | Oggetto (o) | Lettura (r) |
Set File Metadata | File (f) | Oggetto (o) | Scrittura (w) |
Elimina file | File (f) | Oggetto (o) | Elimina (d) |
Rinomina file | File (f) | Oggetto (o) | Eliminare (d) o scrivere (w) |
Put Range | File (f) | Oggetto (o) | Scrittura (w) |
List Ranges | File (f) | Oggetto (o) | Lettura (r) |
Abort Copy File | File (f) | Oggetto (o) | Scrittura (w) |
Copia file | File (f) | Oggetto (o) | Scrittura (w) |
Cancella intervallo | File (f) | Oggetto (o) | Scrittura (w) |
Esempio di URI di firma di accesso condiviso dell'account
L'esempio seguente mostra un URI del servizio BLOB con un token di firma di accesso condiviso dell'account aggiunto. Il token di firma di accesso condiviso dell'account fornisce le autorizzazioni per il servizio, il contenitore e gli oggetti. La tabella suddivide ogni parte dell'URI:
https://blobsamples.blob.core.windows.net/?sv=2022-11-02&ss=b&srt=sco&sp=rwlc&se=2023-05-24T09:51:36Z&st=2023-05-24T01:51:36Z&spr=https&sig=<signature>
Nome | Parte firma di accesso condiviso | Descrizione |
---|---|---|
URI della risorsa | https://myaccount.blob.core.windows.net/?restype=service&comp=properties |
L'endpoint del servizio, con parametri per ottenere le proprietà del servizio (quando viene chiamato con GET) o l'impostazione delle proprietà del servizio (quando viene chiamato con SET). In base al valore del campo dei servizi firmati (ss ), questa firma di accesso condiviso può essere usata con l'archiviazione BLOB o File di Azure. |
Delimitatore | ? |
Delimitatore che precede la stringa di query. Il delimitatore non fa parte del token di firma di accesso condiviso. |
Versione dei servizi di archiviazione | sv=2022-11-02 |
Per i servizi di archiviazione di Azure versione 2012-02-12 e successive, questo parametro indica la versione da usare. |
Servizi | ss=b |
La firma di accesso condiviso si applica ai servizi BLOB. |
Tipi di risorsa | srt=sco |
La firma di accesso condiviso si applica alle operazioni a livello di servizio, a livello di contenitore e a livello di oggetto. |
Autorizzazioni | sp=rwlc |
Le autorizzazioni concedono l'accesso alle operazioni di lettura, scrittura, elenco e creazione. |
Ora di inizio | st=2019-08-01T22%3A18%3A26Z |
Specificata nell'ora UTC. Se si desidera che la firma di accesso condiviso sia immediatamente valida, omettere l'ora di inizio. |
Scadenza | se=2019-08-10T02%3A23%3A26Z |
Specificata nell'ora UTC. |
Protocollo | spr=https |
Sono consentite solo le richieste che usano HTTPS. |
Firma | sig=<signature> |
Usata per autorizzare l'accesso al BLOB. La firma è un HMAC calcolato su una stringa da firmare e una chiave usando l'algoritmo SHA256 e quindi codificato usando la codifica Base64. |
Poiché le autorizzazioni sono limitate al livello di servizio, le operazioni accessibili con questa firma di accesso condiviso sono Get Blob Service Properties (read) e Set BLOB Service Properties (write). Con un URI di risorsa diverso, lo stesso token di firma di accesso condiviso può tuttavia essere usato per delegare l'accesso all'operazione Get Blob Service Stats (lettura).