Creare una firma di accesso condiviso dell'account
Importante
Per una sicurezza ottimale, Microsoft consiglia di usare l'ID Entra di Microsoft con identità gestite per autorizzare le richieste nei dati blob, code e tabelle, quando possibile. L'autorizzazione con l'ID e le identità gestite di Microsoft Entra offre sicurezza e facilità di utilizzo superiori rispetto all'autorizzazione con chiave condivisa. Per altre informazioni, vedere Autorizzare con Microsoft Entra ID. Per altre informazioni sulle identità gestite, vedere Informazioni sulle identità gestite per le risorse di Azure.
Per le risorse ospitate all'esterno di Azure, ad esempio le applicazioni locali, è possibile usare le identità gestite tramite Azure Arc. Ad esempio, le app in esecuzione nei server abilitati per Azure Arc possono usare le identità gestite per connettersi ai servizi di Azure. Per altre informazioni, vedere Eseguire l'autenticazione con le risorse di Azure con i server abilitati per Azure Arc.
Per gli scenari in cui vengono usate le firme di accesso condiviso, Microsoft consiglia di usare una firma di accesso condiviso di delega utente. Una firma di accesso condiviso della delega utente è protetta con le credenziali di Microsoft Entra anziché la chiave dell'account. Per informazioni sulle firme di accesso condiviso, vedere Creare una firma di accesso condiviso di delega utente.
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 operazioni di
Get/Set Service Properties
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.
Cautela
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 imprevisti. 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 su 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 avere la chiave dell'account.
Per usare le credenziali di Microsoft Entra per proteggere una firma di accesso condiviso per un contenitore o un BLOB, creare una firma di accesso condiviso di 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 della 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 SAS | Descrizione |
---|---|
api-version |
Opzionale. 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 questa 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 includono: - BLOB ( b )- Coda ( q )- Tabella ( t )- File ( f )È possibile combinare i valori per fornire l'accesso a più servizi. Ad esempio, ss=bf specifica l'accesso agli endpoint di Archiviazione BLOB e File di Azure. |
SignedResourceTypes (srt) |
Obbligatorio. Specifica i tipi di risorse 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.- Elimina versione ( x ): valido solo per il tipo di risorsa Object del BLOB.- 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.- Creare ( c ): valido per i tipi di risorse contenitore e i tipi di risorsa Oggetto seguenti: BLOB e file. Gli utenti possono creare nuove risorse, ma potrebbero non sovrascrivere le risorse esistenti.- Update ( 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 Oggetto seguente: messaggi della coda.- Tag ( t ): valido solo per il tipo di risorsa Oggetto seguente: BLOB. Consente operazioni di tag BLOB.- Filtro ( f ): valido solo per il tipo di risorsa Oggetto 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) |
Opzionale. 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 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) |
Opzionale. 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=198.51.100.0 o sip=198.51.100.10-198.51.100.20 . |
SignedProtocol (spr) |
Opzionale. Specifica il protocollo consentito per una richiesta effettuata con la firma di accesso condiviso dell'account. I valori possibili sono sia HTTPS che HTTP (https,http ) o solo HTTPS (https ). Il valore predefinito è https,http .Si noti che SOLO HTTP non è un valore consentito. |
SignedEncryptionScope (ses) |
Opzionale. 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 chiave usando l'algoritmo SHA256 e quindi codificato usando la codifica Base64. |
Specificare il campo signedVersion
Il campo signedVersion
(sv
) contiene la versione del servizio della firma di accesso condiviso. Questo valore specifica la versione dell'autorizzazione della chiave condivisa usata da questa firma di accesso condiviso (nel campo signature
). 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 campo | 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 è inclusivo. Ad esempio, specificando sip=198.51.100.0
o sip=198.51.100.10-198.51.100.20
nella firma di accesso condiviso, la richiesta viene limitato a tali indirizzi IP.
La tabella seguente descrive se includere il campo signedIp
in un token di firma di accesso condiviso per uno scenario specificato, in base all'ambiente client e alla posizione dell'account di archiviazione.
Ambiente client | Posizione dell'account di archiviazione | Raccomandazione |
---|---|---|
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 campo signedIp . 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 su un indirizzo IP privato. Per altre informazioni, vedere Configurare firewall e 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 campo signedIp . 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 campo signedIp . 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 pubblico in uscita di tale proxy o gateway per il campo signedIp . |
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 sia HTTPS che HTTP (https,http
) o solo HTTPS (https
). Il valore predefinito è https,http
. Si noti che SOLO HTTP non è un valore consentito.
Specificare l'ambito di crittografia
Usando il campo signedEncryptionScope
nell'URI, è 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 campo | Parametro di query | Descrizione |
---|---|---|
signedEncryptionScope |
ses |
Opzionale. 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 il ses
prima 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 parametro di query ses
rispetta i criteri di crittografia del contenitore. Se si verifica una mancata corrispondenza tra il parametro di query ses
e l'intestazione x-ms-default-encryption-scope
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 parametro di query ses
nella richiesta PUT, il servizio restituisce il codice di risposta di errore 400 (richiesta non valida) in caso di mancata corrispondenza.
Costruire la stringa di firma
Per costruire la stringa di firma per una firma di accesso condiviso dell'account, creare prima 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 |
---|---|---|---|
Elencare i contenitori | BLOB (b) | Servizio (s) | Elenco (l) |
Ottenere le proprietà del servizio BLOB | BLOB (b) | Servizio (s) | Lettura (r) |
Impostare le proprietà del servizio BLOB | BLOB (b) | Servizio (s) | Scrittura (w) |
Ottenere le statistiche del servizio BLOB | BLOB (b) | Servizio (s) | Lettura (r) |
Creare un contenitore | BLOB (b) | Contenitore (c) | Create(c) o Write (w) |
Ottenere le proprietà del contenitore | BLOB (b) | Contenitore (c) | Lettura (r) |
Ottenere i metadati del contenitore | BLOB (b) | Contenitore (c) | Lettura (r) |
Impostare i metadati del contenitore | BLOB (b) | Contenitore (c) | Scrittura (w) |
Contenitore lease | BLOB (b) | Contenitore (c) | Scrivere (w) o eliminare (d)1 |
Eliminare un contenitore | BLOB (b) | Contenitore (c) | Eliminare (d)1 |
Trovare BLOB per tag nel contenitore | BLOB (b) | Contenitore (c) | Filtro (f) |
Elencare i BLOB | BLOB (b) | Contenitore (c) | Elenco (l) |
Put Blob (creare un nuovo BLOB in blocchi) | BLOB (b) | Oggetto (o) | Creare (c) o Scrivere (w) |
Put Blob (sovrascrivere un BLOB in blocchi esistente) | BLOB (b) | Oggetto (o) | Scrittura (w) |
Put Blob (creare un nuovo BLOB di pagine) | BLOB (b) | Oggetto (o) | Creare (c) o Scrivere (w) |
Put Blob (sovrascrivere un BLOB di pagine esistente) | BLOB (b) | Oggetto (o) | Scrittura (w) |
Recupera BLOB | BLOB (b) | Oggetto (o) | Lettura (r) |
Ottenere le proprietà del BLOB | BLOB (b) | Oggetto (o) | Lettura (r) |
Impostare le proprietà del BLOB | BLOB (b) | Oggetto (o) | Scrittura (w) |
Ottenere i metadati del BLOB | BLOB (b) | Oggetto (o) | Lettura (r) |
Impostare i metadati del BLOB | 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) |
Elimina BLOB | BLOB (b) | Oggetto (o) | Eliminare (d)1 |
Eliminare la versione del BLOB | BLOB (b) | Oggetto (o) | Elimina versione (x)2 |
Eliminare definitivamente snapshot/versione | BLOB (b) | Oggetto (o) | Eliminazione permanente (y)3 |
Lease Blob | BLOB (b) | Oggetto (o) | Scrivere (w) o eliminare (d)1 |
Snapshot Blob | BLOB (b) | Oggetto (o) | Creare (c) o Scrivere (w) |
Copia BLOB (destinazione è nuovo BLOB) | BLOB (b) | Oggetto (o) | Creare (c) o Scrivere (w) |
Copia BLOB (destinazione è un BLOB esistente) | BLOB (b) | Oggetto (o) | Scrittura (w) |
Copia incrementale | BLOB (b) | Oggetto (o) | Creare (c) o Scrivere (w) |
Interrompere il BLOB di copia | BLOB (b) | Oggetto (o) | Scrittura (w) |
Inserisci blocco | BLOB (b) | Oggetto (o) | Scrittura (w) |
Put Block List (crea nuovo BLOB) | BLOB (b) | Oggetto (o) | Scrittura (w) |
Put Block List (aggiornare un 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) |
Ottenere intervalli di pagine | BLOB (b) | Oggetto (o) | Lettura (r) |
Blocco di accodamento | BLOB (b) | Oggetto (o) | Aggiungere (a) o scrivere (w) |
Cancella pagina | 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 successive.
2 L'autorizzazione Delete Version
consente l'eliminazione di versioni BLOB con la versione 2019-12-12 e successive.
3 L'autorizzazione Permanent Delete
consente l'eliminazione permanente di uno snapshot o di una versione del BLOB con la versione 2020-02-10 e successive.
Servizio di accodamento
Nella tabella seguente sono elencate le operazioni del servizio di accodamento 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 |
---|---|---|---|
Ottenere le proprietà del servizio di accodamento | Coda (q) | Servizio (s) | Lettura (r) |
Impostare le proprietà del servizio di accodamento | Coda (q) | Servizio (s) | Scrittura (w) |
List Queues | Coda (q) | Servizio (s) | Elenco (l) |
Ottenere le statistiche del servizio di accodamento | Coda (q) | Servizio (s) | Lettura (r) |
Crea coda | Coda (q) | Contenitore (c) | Create(c) o Write (w) |
Elimina coda | Coda (q) | Contenitore (c) | Elimina (d) |
Ottenere i metadati della coda | Coda (q) | Contenitore (c) | Lettura (r) |
Impostare i metadati della coda | Coda (q) | Contenitore (c) | Scrittura (w) |
Inserisci messaggio | Coda (q) | Oggetto (o) | Aggiungi (a) |
Ottenere messaggi | Coda (q) | Oggetto (o) | Processo (p) |
Visualizza messaggi | Coda (q) | Oggetto (o) | Lettura (r) |
Elimina messaggio | Coda (q) | Oggetto (o) | Processo (p) |
Cancella messaggi | Coda (q) | Oggetto (o) | Elimina (d) |
Aggiorna 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 |
---|---|---|---|
Ottenere le proprietà del servizio tabelle | Tabella (t) | Servizio (s) | Lettura (r) |
Impostare le proprietà del servizio tabelle | Tabella (t) | Servizio (s) | Scrittura (w) |
Ottenere le statistiche del servizio tabelle | Tabella (t) | Servizio (s) | Lettura (r) |
Tabelle di query | Tabella (t) | Contenitore (c) | Elenco (l) |
Crea tabella | Tabella (t) | Contenitore (c) | Creare (c) o Scrivere (w) |
Elimina tabella | Tabella (t) | Contenitore (c) | Elimina (d) |
Entità di query | Tabella (t) | Oggetto (o) | Lettura (r) |
Inserisci entità | Tabella (t) | Oggetto (o) | Aggiungi (a) |
Inserisci o unisci entità | Tabella (t) | Oggetto (o) | Aggiungere (a) e aggiornare (u)1 |
Inserisci o sostituisci entità | Tabella (t) | Oggetto (o) | Aggiungere (a) e aggiornare (u)1 |
Aggiornare l'entità | Tabella (t) | Oggetto (o) | Aggiornamento (u) |
Unisci entità | Tabella (t) | Oggetto (o) | Aggiornamento (u) |
Elimina entità | Tabella (t) | Oggetto (o) | Elimina (d) |
1 sono necessarie autorizzazioni di aggiunta e aggiornamento per le operazioni di 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 |
---|---|---|---|
Elencare le condivisioni | File (f) | Servizio (s) | Elenco (l) |
Ottenere le proprietà del servizio file | File (f) | Servizio (s) | Lettura (r) |
Impostare le proprietà del servizio file | File (f) | Servizio (s) | Scrittura (w) |
Ottenere statistiche di condivisione | File (f) | Contenitore (c) | Lettura (r) |
Crea condivisione | File (f) | Contenitore (c) | Creare (c) o Scrivere (w) |
Condivisione snapshot | File (f) | Contenitore (c) | Creare (c) o Scrivere (w) |
Ottenere le proprietà di condivisione | File (f) | Contenitore (c) | Lettura (r) |
Impostare le proprietà di condivisione | File (f) | Contenitore (c) | Scrittura (w) |
Ottenere i metadati di condivisione | File (f) | Contenitore (c) | Lettura (r) |
Impostare i metadati di condivisione | File (f) | Contenitore (c) | Scrittura (w) |
Elimina condivisione | File (f) | Contenitore (c) | Elimina (d) |
Elencare directory e file | File (f) | Contenitore (c) | Elenco (l) |
Crea directory | File (f) | Oggetto (o) | Creare (c) o Scrivere (w) |
Ottenere le proprietà della directory | File (f) | Oggetto (o) | Lettura (r) |
Ottenere i metadati della directory | File (f) | Oggetto (o) | Lettura (r) |
Impostare i metadati della directory | File (f) | Oggetto (o) | Scrittura (w) |
Elimina 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) |
Recupera file | File (f) | Oggetto (o) | Lettura (r) |
Ottenere le proprietà dei file | File (f) | Oggetto (o) | Lettura (r) |
Ottenere i metadati dei file | File (f) | Oggetto (o) | Lettura (r) |
Impostare i metadati dei file | 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) |
Elencare gli intervalli | File (f) | Oggetto (o) | Lettura (r) |
Interrompi copia 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 della firma di accesso condiviso | Descrizione |
---|---|---|
URI 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 impostando le proprietà del servizio (quando viene chiamato con SET). In base al valore del campo servizi firmati (ss ), questa firma di accesso condiviso può essere usata con 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 quale versione usare. |
Servizi | ss=b |
La firma di accesso condiviso si applica ai servizi BLOB. |
Tipi di risorse | 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 |
Specificato nell'ora UTC. Se si vuole che la firma di accesso condiviso sia valida immediatamente, omettere l'ora di inizio. |
Ora di scadenza | se=2019-08-10T02%3A23%3A26Z |
Specificato nell'ora UTC. |
Protocollo | spr=https |
Sono consentite solo le richieste che usano HTTPS. |
Firma | sig=<signature> |
Usato per autorizzare l'accesso al BLOB. La firma è un HMAC calcolato su una stringa per 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 Ottenere le proprietà del servizio BLOB (lettura) e Impostare le proprietà del servizio BLOB (scrittura). Tuttavia, con un URI di risorsa diverso, lo stesso token di firma di accesso condiviso può essere usato anche per delegare l'accesso a Get Blob Service Stats (lettura).