Get Blob
Tramite l'operazione Get Blob
viene letto o scaricato un Blob dal sistema, inclusi le proprietà e i metadati relativi. È anche possibile chiamare Get Blob
per leggere uno snapshot.
Richiesta
È possibile costruire la Get Blob
richiesta come indicato di seguito. È consigliabile usare HTTPS. Sostituire myaccount con il nome dell'account di archiviazione:
URI della richiesta del metodo GET | Versione HTTP |
---|---|
https://myaccount.blob.core.windows.net/mycontainer/myblob https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=<DateTime> https://myaccount.blob.core.windows.net/mycontainer/myblob?versionid=<DateTime> |
HTTP/1.0 HTTP/1.1 |
URI del servizio di archiviazione emulato
Quando si effettua una richiesta al servizio di archiviazione emulato, specificare il nome host dell'emulatore e Archiviazione BLOB di Azure porta come 127.0.0.1:10000
, seguito dal nome dell'account di archiviazione emulato:
URI della richiesta del metodo GET | Versione HTTP |
---|---|
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob |
HTTP/1.0 HTTP/1.1 |
Per altre informazioni, vedere Usare l'emulatore di archiviazione di Azure per sviluppo e test.
Parametri URI
È possibile specificare i parametri aggiuntivi seguenti nell'URI della richiesta:
Parametro | Descrizione |
---|---|
snapshot |
Facoltativa. Il parametro snapshot è un valore opaco DateTime che, quando è presente, specifica lo snapshot del BLOB da recuperare. Per altre informazioni sull'uso degli snapshot BLOB, vedere Create uno snapshot di un BLOB. |
versionid |
Facoltativa, versione 2019-12-12 e successive. Il versionid parametro è un valore opaco DateTime che, quando presente, specifica la versione del BLOB da recuperare. |
timeout |
facoltativo. Il parametro timeout viene espresso in secondi. Per altre informazioni, vedere Impostare i timeout per le operazioni di archiviazione BLOB. |
Intestazioni della richiesta
Nella seguente tabella vengono descritte le intestazioni di richiesta obbligatorie e facoltative.
Intestazione della richiesta | Descrizione |
---|---|
Authorization |
Obbligatorio. Specifica lo schema di autorizzazione, il nome dell'account e la firma. Per altre informazioni, vedere Autorizzare le richieste ad Archiviazione di Azure. |
Date o x-ms-date |
Obbligatorio. Specifica la data per la richiesta nel fuso orario UTC (Coordinated Universal Time). Per altre informazioni, vedere Autorizzare le richieste ad Archiviazione di Azure. |
x-ms-version |
Obbligatorio per tutte le richieste autorizzate. Facoltativo per le richieste anonime. Specifica la versione dell'operazione da usare per questa richiesta. Se questa intestazione viene omessa per una richiesta anonima, il servizio esegue la richiesta con la versione 2009-09-19. Per altre informazioni, vedere Controllo delle versioni per i servizi di archiviazione di Azure. |
Range |
facoltativo. Restituisce i byte del BLOB solo nell'intervallo specificato. |
x-ms-range |
facoltativo. Restituisce i byte del BLOB solo nell'intervallo specificato. Se Range e x-ms-range sono entrambi specificati, il servizio usa il valore di x-ms-range . Se non viene specificato alcun intervallo, viene restituito l'intero contenuto del BLOB. Per altre informazioni, vedere Specificare l'intestazione dell'intervallo per le operazioni di archiviazione BLOB. |
x-ms-lease-id: <ID> |
facoltativo. Se questa intestazione viene specificata, l'operazione viene eseguita solo se vengono soddisfatte entrambe le condizioni seguenti: - Il lease del BLOB è attualmente attivo. - L'ID lease specificato nella richiesta corrisponde all'ID lease del BLOB. Se questa intestazione viene specificata ma una di queste condizioni non viene soddisfatta, la richiesta ha esito negativo e l'operazione Get Blob ha esito negativo con codice di stato 412 (precondizione non riuscita). |
x-ms-range-get-content-md5: true |
facoltativo. Quando questa intestazione è impostata su true e specificata insieme all'intestazione Range , il servizio restituisce l'hash MD5 per l'intervallo, purché l'intervallo sia minore o uguale a 4 mebibyte (MiB) di dimensioni.Se l'intestazione viene specificata senza l'intestazione Range , il servizio restituisce il codice di stato 400 (richiesta non valida).Se l'intestazione è impostata su true quando l'intervallo supera 4 MiB, il servizio restituisce il codice di stato 400 (richiesta non valida). |
x-ms-range-get-content-crc64: true |
facoltativo. Quando questa intestazione è impostata su true e specificata insieme all'intestazione Range , il servizio restituisce l'hash CRC64 per l'intervallo, purché l'intervallo sia minore o uguale a 4 MiB di dimensioni.Se l'intestazione viene specificata senza l'intestazione Range , il servizio restituisce il codice di stato 400 (richiesta non valida).Se l'intestazione è impostata su true quando l'intervallo supera 4 MiB, il servizio restituisce il codice di stato 400 (richiesta non valida).Se sono presenti entrambe le x-ms-range-get-content-md5 intestazioni e x-ms-range-get-content-crc64 , la richiesta ha esito negativo con una richiesta 400 (richiesta non valida).Questa intestazione è supportata nelle versioni 2019-02-02 e successive. |
Origin |
facoltativo. Specifica l'origine da cui proviene la richiesta. La presenza di questa intestazione determina la presenza di intestazioni di condivisione delle risorse multiorigine (CORS) nella risposta. |
x-ms-upn |
facoltativo. Versione 2023-11-03 e successive. Valido per gli account con spazio dei nomi gerarchico abilitato. Se true, i valori identity utente restituiti nelle x-ms-owner x-ms-group intestazioni di risposta e x-ms-acl verranno trasformati dagli ID oggetto Microsoft Entra ai nomi delle entità utente. Se il valore è false, vengono restituiti come ID oggetto Microsoft Entra. Il valore predefinito è false. Si noti che gli ID gruppo e oggetto applicazione non vengono convertiti, perché non hanno nomi descrittivi univoci. |
x-ms-client-request-id |
facoltativo. Fornisce un valore opaco generato dal client con un limite di caratteri di 1 kibibyte (KiB), registrato nei log di analisi quando è abilitata la registrazione dell'analisi dell'archiviazione. È consigliabile usare questa intestazione quando si correlano le attività lato client con le richieste ricevute dal server. Per altre informazioni, vedere Informazioni sulla registrazione Analisi archiviazione di Azure. |
Questa operazione supporta inoltre l'utilizzo delle intestazioni condizionali per leggere il Blob solo se viene soddisfatta una determinata condizione. Per altre informazioni, vedere Specificare intestazioni condizionali per le operazioni di archiviazione BLOB.
Intestazioni di richiesta (chiavi di crittografia fornite dal cliente)
A partire dalla versione 2019-02-02, è possibile specificare le intestazioni seguenti nella richiesta per leggere un BLOB crittografato con una chiave fornita dal cliente. La crittografia con una chiave fornita dal cliente (e il set corrispondente di intestazioni) è facoltativa. Se un BLOB è stato crittografato in precedenza con una chiave fornita dal cliente, è necessario includere queste intestazioni nella richiesta per completare correttamente l'operazione di lettura.
Intestazione della richiesta | Descrizione |
---|---|
x-ms-encryption-key |
Obbligatorio. Chiave di crittografia AES-256 con codifica Base64. |
x-ms-encryption-key-sha256 |
facoltativo. Hash SHA256 con codifica Base64 della chiave di crittografia. |
x-ms-encryption-algorithm: AES256 |
Obbligatorio. Specifica l'algoritmo da utilizzare per la crittografia. Il valore di questa intestazione deve essere AES256 . |
Testo della richiesta
Nessuno.
Risposta
Nella risposta sono inclusi un codice di stato HTTP, un set di intestazioni della risposta e il corpo della risposta, che contiene il contenuto del Blob.
Codice stato
Un'operazione di lettura dell'intero BLOB completata correttamente restituisce il codice di stato 200 (OK).
Un'operazione di lettura di un intervallo specificato completata correttamente restituisce il codice di stato 206 (contenuto parziale).
Per altre informazioni sui codici di stato, vedere Codici di stato e di errore.
Intestazioni di risposta
Nella risposta per questa operazione sono incluse le intestazioni riportate di seguito; inoltre, possono essere incluse intestazioni HTTP standard aggiuntive. Tutte le intestazioni standard sono conformi alla specifica del protocollo HTTP/1.1.
Sintassi | Descrizione |
---|---|
Last-Modified |
Data/ora dell'ultima modifica del BLOB. Il formato data è conforme a RFC 1123. Le operazioni che comportano la modifica del Blob, incluso un aggiornamento dei metadati o delle proprietà del Blob, comportano la modifica dell'ora dell'ultima modifica del Blob. |
x-ms-creation-time |
Versione 2017-11-09 e successive. Data/ora di creazione del BLOB. Il formato data è conforme a RFC 1123. |
x-ms-meta-name:value |
Set di coppie nome-valore associate a questo BLOB come metadati definiti dall'utente. |
x-ms-tag-count |
Versione 2019-12-12 e successive. Se il BLOB contiene tag, questa intestazione restituisce il numero di tag archiviati nel BLOB. L'intestazione non viene restituita se non sono presenti tag nel BLOB. |
Content-Length |
Numero di byte presenti nel corpo della risposta. |
Content-Type |
Tipo di contenuto specificato per il BLOB. Il tipo di contenuto predefinito è application/octet-stream . |
Content-Range |
Indica l'intervallo di byte restituito nel caso in cui il client abbia richiesto un subset del BLOB impostando l'intestazione della Range richiesta. |
ETag |
Contiene un valore che è possibile usare per eseguire operazioni in modo condizionale. Per altre informazioni, vedere Specificare intestazioni condizionali per le operazioni di archiviazione BLOB. Se la versione della richiesta è 2011-08-18 o successiva, il valore ETag viene racchiuso tra virgolette. |
Content-MD5 |
Se il Blob presenta un hash MD5 e questa operazione Get Blob consente di leggere l'intero Blob, l'intestazione della risposta viene restituita in modo che il client possa controllare l'integrità del contenuto del messaggio.Nella versione 2012-02-12 e successive imposta Put Blob il valore hash MD5 di un BLOB in blocchi anche quando la Put Blob richiesta non include un'intestazione MD5.Se la richiesta deve leggere un intervallo specificato e l'oggetto x-ms-range-get-content-md5 è impostato su true , la richiesta restituisce un hash MD5 per l'intervallo, purché la dimensione dell'intervallo sia minore o uguale a 4 MiB.Se nessuno di questi set di condizioni è true , non viene restituito alcun valore per l'intestazione Content-MD5 .Se x-ms-range-get-content-md5 viene specificato senza l'intestazione Range , il servizio restituisce il codice di stato 400 (Richiesta non valida).Se x-ms-range-get-content-md5 è impostato su true quando l'intervallo supera 4 MiB, il servizio restituisce il codice di stato 400 (richiesta non valida). |
x-ms-content-crc64 |
Se la richiesta deve leggere un intervallo specificato e l'oggetto x-ms-range-get-content-crc64 è impostato su true , la richiesta restituisce un hash CRC64 per l'intervallo, purché la dimensione dell'intervallo sia minore o uguale a 4 MiB. Se x-ms-range-get-content-crc64 viene specificato senza l'intestazione Range , il servizio restituisce il codice di stato 400 (Richiesta non valida).Se x-ms-range-get-content-crc64 è impostato su true quando l'intervallo supera 4 MiB, il servizio restituisce il codice di stato 400 (richiesta non valida). |
Content-Encoding |
Restituisce il valore specificato per l'intestazione della Content-Encoding richiesta. |
Content-Language |
Restituisce il valore specificato per l'intestazione della Content-Language richiesta. |
Cache-Control |
Restituito se l'intestazione è stata specificata in precedenza per il BLOB. |
Content-Disposition |
Restituita per le richieste effettuate nella versione 2013-08-15 e successive. Questa intestazione restituisce il valore che era stato specificato per l'intestazione x-ms-blob-content-disposition .Il Content-Disposition campo dell'intestazione della risposta fornisce informazioni aggiuntive su come elaborare il payload della risposta e può essere usato per allegare metadati aggiuntivi. Ad esempio, se l'intestazione è impostata su attachment , indica che l'agente utente non deve visualizzare la risposta. Viene invece visualizzata una finestra di dialogo Salva con nome di file diverso dal nome del BLOB specificato. |
x-ms-blob-sequence-number |
Numero di sequenza corrente per un Blob di pagine. Questa intestazione non viene restituita per i BLOB in blocchi o i BLOB di accodamento. |
x-ms-blob-type: <BlockBlob | PageBlob | AppendBlob> |
Restituisce il tipo di Blob. |
x-ms-copy-completion-time: <datetime> |
Versione 2012-02-12 e successive. Ora di conclusione dell'ultima operazione tentata Copy Blob in cui questo BLOB era il BLOB di destinazione. Questo valore può specificare l'ora di un tentativo di copia completato, interrotto o non riuscito. Questa intestazione non viene visualizzata se una copia è in sospeso, se questo BLOB non è mai stato la destinazione in un'operazione Copy Blob o se questo BLOB è stato modificato dopo un'operazione completata Copy Blob che ha usato Set Blob Properties , Put Blob o Put Block List . |
x-ms-copy-status-description: <error string> |
Versione 2012-02-12 e successive. Viene visualizzato solo quando x-ms-copy-status è failed o pending . Descrive la causa dell'ultimo errore di copia irreversibile o non. Questa intestazione non viene visualizzata se questo BLOB non è mai stata la destinazione in un'operazione Copy Blob o se questo BLOB è stato modificato dopo un'operazione completata Copy Blob che ha usato Set Blob Properties , Put Blob o Put Block List . |
x-ms-copy-id: <id> |
Versione 2012-02-12 e successive. Identificatore di stringa per l'ultima operazione tentata Copy Blob in cui questo BLOB era il BLOB di destinazione. Questa intestazione non viene visualizzata se questo BLOB non è mai stata la destinazione in un'operazione Copy Blob o se questo BLOB è stato modificato dopo un'operazione completata Copy Blob che ha usato Set Blob Properties , Put Blob o Put Block List . |
x-ms-copy-progress: <bytes copied/bytes total> |
Versione 2012-02-12 e successive. Contiene il numero di byte copiati e i byte totali nell'origine nell'ultima operazione tentata Copy Blob in cui questo BLOB era il BLOB di destinazione. Può essere visualizzato da 0 a Content-Length byte copiati. Questa intestazione non viene visualizzata se questo BLOB non è mai stata la destinazione in un'operazione Copy Blob o se questo BLOB è stato modificato dopo un'operazione completata Copy Blob che ha usato Set Blob Properties , Put Blob o Put Block List . |
x-ms-copy-source: url |
Versione 2012-02-12 e successive. URL di lunghezza massima di 2 KiB che specifica il BLOB di origine o il file usato nell'ultima operazione tentata Copy Blob in cui questo BLOB era il BLOB di destinazione. Questa intestazione non viene visualizzata se questo BLOB non è mai stata la destinazione in un'operazione Copy Blob o se questo BLOB è stato modificato dopo un'operazione completata Copy Blob che ha usato Set Blob Properties , Put Blob o Put Block List . L'URL restituito in questa intestazione contiene tutti i parametri di richiesta usati nell'operazione di copia nel BLOB di origine, incluso il token di firma di accesso condiviso usato per accedere al BLOB di origine. |
x-ms-copy-status: <pending | success | aborted | failed> |
Versione 2012-02-12 e successive. Stato dell'operazione di copia identificato da x-ms-copy-id, con i valori seguenti: - success : copia completata.- pending : la copia è in corso. Controllare x-ms-copy-status-description se gli errori intermittenti e non irreversibili rallentano lo stato di avanzamento della copia, ma non causano errori.- aborted : la copia è stata terminata da Abort Copy Blob .- failed : copia non riuscita. Per informazioni dettagliate sull'errore, vedere x-ms-copy-status-description.Questa intestazione non viene visualizzata se questo BLOB non è mai stata la destinazione in un'operazione Copy Blob o se questo BLOB è stato modificato dopo un'operazione completata Copy Blob che ha usato Set Blob Properties , Put Blob o Put Block List . |
x-ms-lease-duration: <infinite | fixed> |
Versione 2012-02-12 e successive. Quando un lease è associato a un Blob, specifica se il lease è di durata infinita o fissa. |
x-ms-lease-state: <available | leased | expired | breaking | broken> |
Versione 2012-02-12 e successive. Stato del lease del BLOB. |
x-ms-lease-status:<locked | unlocked> |
Stato del lease corrente del Blob. |
x-ms-request-id |
Identifica in modo univoco la richiesta effettuata e può essere usata per risolvere i problemi della richiesta. Per altre informazioni, vedere Risolvere i problemi relativi alle operazioni api. |
x-ms-version |
Indica la versione di Archiviazione BLOB usata per eseguire la richiesta. Incluso per le richieste effettuate con la versione 2009-09-19 e successive. Questa intestazione viene restituita anche per le richieste anonime senza una versione specificata se il contenitore è stato contrassegnato per l'accesso pubblico tramite l'archiviazione BLOB versione 2009-09-19. |
Accept-Ranges: bytes |
Indica che il servizio supporta le richieste di contenuto parziale del Blob. Incluso per le richieste effettuate con la versione 2011-08-18 e successive e per il servizio di archiviazione locale in SDK versione 1.6 e successive. |
Date |
Valore di data/ora UTC generato dal servizio, che indica l'ora di avvio della risposta. |
Access-Control-Allow-Origin |
Restituito se la richiesta include un'intestazione Origin e la condivisione CORS è abilitata con una regola di corrispondenza. Questa intestazione restituisce il valore dell'intestazione della richiesta di origine nel caso di una corrispondenza. |
Access-Control-Expose-Headers |
Restituito se la richiesta include un'intestazione Origin e la condivisione CORS è abilitata con una regola di corrispondenza. Restituisce l'elenco delle intestazioni di risposta che devono essere esposte al client o all'emittente della richiesta. |
Vary |
Restituito con il valore dell'intestazione Origin quando sono specificate le regole CORS. Per informazioni dettagliate, vedere Supporto di CORS per i servizi di archiviazione di Azure . |
Access-Control-Allow-Credentials |
Restituito se la richiesta include un'intestazione Origin e CORS è abilitato con una regola corrispondente che non consente tutte le origini. Questa intestazione verrà impostata su true . |
x-ms-blob-committed-block-count |
Numero di blocchi di commit presenti nel BLOB. Questa intestazione viene restituita solo per i BLOB di accodamento. |
x-ms-server-encrypted: true/false |
Versione 2015-12-11 e versioni successive. Il valore di questa intestazione è impostato su true se i dati blob e i metadati dell'applicazione vengono completamente crittografati usando l'algoritmo specificato. In caso contrario, il valore è impostato su false (quando il BLOB non è crittografato o se vengono crittografate solo parti del BLOB o dei metadati dell'applicazione). |
x-ms-encryption-key-sha256 |
Versione 2019-02-02 e successiva. Questa intestazione viene restituita se il BLOB viene crittografato con una chiave fornita dal cliente. |
x-ms-encryption-context |
Versione 2021-08-06 e versioni successive. Se il valore della proprietà del contesto di crittografia è impostato, restituirà il valore impostato. Valido solo quando lo spazio dei nomi gerarchico è abilitato per l'account. |
x-ms-encryption-scope |
Versione 2019-02-02 e successiva. Questa intestazione viene restituita se il BLOB viene crittografato con un ambito di crittografia. |
x-ms-blob-content-md5 |
Versione 2016-05-31 e successiva. Se il BLOB ha un hash MD5 e se la richiesta contiene un'intestazione di intervallo (Intervallo o intervallo x-ms-), questa intestazione di risposta viene restituita con il valore del valore MD5 dell'intero BLOB. Questo valore potrebbe o non essere uguale al valore restituito nell'intestazione Content-MD5, con quest'ultimo calcolato dall'intervallo richiesto. |
x-ms-client-request-id |
Può essere usato per risolvere le richieste e le risposte corrispondenti. Il valore di questa intestazione è uguale al valore dell'intestazione x-ms-client-request-id se presente nella richiesta e il valore non contiene più di 1.024 caratteri ASCII visibili. Se l'intestazione non è presente nella richiesta, questa x-ms-client-request-id intestazione non è presente nella risposta. |
x-ms-last-access-time |
Versione 2020-02-10 e versioni successive. Indica l'ultima volta che i dati del BLOB sono stati accessibili in base ai criteri di rilevamento dell'ultimo accesso dell'account di archiviazione. L'intestazione non viene restituita se l'account di archiviazione non dispone di criteri di rilevamento dell'ora di accesso dell'ultima volta o se il criterio è disabilitato. Per informazioni sull'impostazione dei criteri di rilevamento dell'ultimo accesso dell'account di archiviazione, vedere API del servizio BLOB. |
x-ms-blob-sealed |
Versione 2019-12-12 e successiva. Restituito solo per i BLOB di accodamento. Se il BLOB di accodamento è stato bloccato, il valore sarà true . Per altre informazioni, vedere Append BLOB Seal |
x-ms-immutability-policy-until-date |
Versione 2020-06-12 e versioni successive. Specifica la conservazione fino alla data impostata nel BLOB. Questa è la data fino alla quale il BLOB può essere protetto da essere modificato o eliminato. Restituito solo se un criterio di non modificabilità è impostato nel BLOB. Il valore di questa intestazione è in formato RFC1123. |
x-ms-immutability-policy-mode: unlocked/locked |
Versione 2020-06-12 e versioni successive. Restituito se un criterio di non modificabilità è impostato nel BLOB. I valori sono unlocked e locked .
unlocked indica che l'utente può modificare il criterio aumentando o riducendo la conservazione fino alla data.
locked indica che queste azioni sono vietate. |
x-ms-legal-hold: true/false |
Versione 2020-06-12 e versioni successive. Questa intestazione non viene restituita se non è presente alcun blocco legale nel BLOB. Il valore di questa intestazione è impostato su true se il BLOB contiene un blocco legale e il relativo valore è true . In caso contrario, il valore è impostato su false se il BLOB contiene un blocco legale e il relativo valore è false . |
x-ms-owner |
Versione 2020-06-12 e versioni successive, solo per gli account con spazio dei nomi gerarchico abilitato. Restituisce l'utente proprietario del file o della directory. |
x-ms-group |
Versione 2020-06-12 e versioni successive, solo per gli account con spazio dei nomi gerarchico abilitato. Restituisce il gruppo proprietario del file o della directory. |
x-ms-permissions |
Versione 2020-06-12 e versioni successive, solo per gli account con spazio dei nomi gerarchico abilitato. Restituisce le autorizzazioni impostate per utente, gruppo e altro nel file o nella directory. Ogni singola autorizzazione è in [r,w,x,-]{3} formato. |
x-ms-acl |
Versione 2023-11-03 e versioni successive. Solo per gli account con spazio dei nomi gerarchico abilitato. Restituisce l'elenco combinato di accesso e di controllo di accesso predefinito impostato per utenti, gruppi e altro nel file o nella directory. Ogni voce di controllo di accesso (ACE) è costituita da un ambito, un tipo, un identificatore di utente o gruppo e le autorizzazioni nel formato [scope]:[type]:[id]:[permissions] . L'ambito default indica che l'ace appartiene all'ACL predefinito per una directory. In caso contrario, l'ambito è implicito e l'ACE appartiene all'ACL di accesso. Ogni singola autorizzazione è in [r,w,x,-]{3} formato. |
x-ms-resource-type |
Versione 2020-10-02 e versioni successive, solo per gli account con spazio dei nomi gerarchico abilitato. Restituisce il tipo di risorsa per il percorso, che può essere file o directory . |
Corpo della risposta
Il corpo della risposta contiene il contenuto del Blob.
Risposta di esempio
Status Response:
HTTP/1.1 200 OK
Response Headers:
x-ms-blob-type: BlockBlob
x-ms-lease-status: unlocked
x-ms-lease-state: available
x-ms-meta-m1: v1
x-ms-meta-m2: v2
Content-Length: 11
Content-Type: text/plain; charset=UTF-8
Date: <date>
ETag: "0x8CB171DBEAD6A6B"
Vary: Origin
Last-Modified: <date>
x-ms-version: 2015-02-21
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
x-ms-copy-id: 36650d67-05c9-4a24-9a7d-a2213e53caf6
x-ms-copy-source: <url>
x-ms-copy-status: success
x-ms-copy-progress: 11/11
x-ms-copy-completion-time: <date>
Autorizzazione
L'autorizzazione è necessaria quando si chiama qualsiasi operazione di accesso ai dati in Archiviazione di Azure. È possibile autorizzare l'operazione Get Blob
come descritto di seguito.
Importante
Microsoft consiglia di usare Microsoft Entra ID con identità gestite per autorizzare le richieste ad Archiviazione di Azure. Microsoft Entra ID offre una maggiore sicurezza e facilità d'uso rispetto all'autorizzazione di chiave condivisa.
Archiviazione di Azure supporta l'uso di Microsoft Entra ID per autorizzare le richieste ai dati BLOB. Con Microsoft Entra ID è possibile usare il controllo degli accessi in base al ruolo di Azure per concedere le autorizzazioni a un'entità di sicurezza. L'entità di sicurezza può essere un utente, un gruppo, un'entità servizio applicazione o un'identità gestita di Azure. L'entità di sicurezza viene autenticata da Microsoft Entra ID per restituire un token OAuth 2.0. Il token può quindi essere usato per autorizzare una richiesta relativa al servizio BLOB.
Per altre informazioni sull'autorizzazione usando Microsoft Entra ID, vedere Autorizzare l'accesso ai BLOB usando Microsoft Entra ID.
Autorizzazioni
Di seguito è riportata l'azione RBAC necessaria per un utente Microsoft Entra, un gruppo, un gruppo, un'identità gestita o un'entità servizio per chiamare l'operazione Get Blob
e il ruolo di controllo degli accessi in base al ruolo predefinito di Azure con privilegi minimi che include questa azione:
- Azione controllo degli accessi in base al ruolo di Azure:Microsoft.Storage/storageAccounts/BLOBServices/containers/BLOBs/read
- Ruolo predefinito con privilegi minimi:Lettore dati BLOB di archiviazione
Per altre informazioni sull'assegnazione dei ruoli tramite controllo degli accessi in base al ruolo di Azure, vedere Assegnare un ruolo di Azure per l'accesso ai dati BLOB.
Commenti
Per un Blob di pagine, un'operazione Get Blob
eseguita su un intervallo di pagine che non contengono ancora contenuto o che sono state cancellate restituisce zero per questi byte.
Se si chiama Get Blob
in un BLOB di pagine senza intervallo specificato, il servizio restituisce l'intervallo di pagine fino al valore specificato per l'intestazione x-ms-blob-content-length
. Per tutte le pagine che non contengono contenuto, il servizio restituisce zeri per tali byte.
Per un BLOB di accodamento, l'operazione Get Blob
restituisce l'intestazione x-ms-blob-committed-block-count
. Questa intestazione indica il numero di blocchi di cui è stato eseguito il commit nel BLOB. L'intestazione x-ms-blob-committed-block-count
non viene restituita per i BLOB in blocchi o i BLOB di pagine.
Il completamento di un'operazione Get Blob
è di due minuti per miB. Se l'operazione richiede più di due minuti per MiB in media, l'operazione si verifica il timeout.
L'intestazione x-ms-version
è necessaria per recuperare un Blob che appartiene a un contenitore privato. Se il BLOB appartiene a un contenitore disponibile per l'accesso pubblico completo o parziale, qualsiasi client può leggerlo senza specificare una versione; La versione del servizio non è necessaria per il recupero di un BLOB appartenente a un contenitore pubblico. Per altre informazioni, vedere Limitare l'accesso a contenitori e Blob.
Un'operazione Get Blob
su un BLOB in blocchi archiviato avrà esito negativo.
Operazioni di copia
Per determinare se un'operazione Copy Blob
è stata completata, verificare prima di tutto che il x-ms-copy-id
valore di intestazione del BLOB di destinazione corrisponda all'ID di copia fornito dalla chiamata originale a Copy Blob
. Una corrispondenza garantisce che un'altra applicazione non interrompa la copia e avvii una nuova Copy Blob
operazione. Selezionare quindi l'intestazione x-ms-copy-status: success
. Tenere tuttavia presente che tutte le operazioni di scrittura in un BLOB ad eccezione Lease
di , Put Page
e Put Block
le operazioni rimuovono tutte le x-ms-copy-*
proprietà dal BLOB. Queste proprietà non vengono copiate anche dalle Copy Blob
operazioni che usano versioni di Archiviazione BLOB precedenti alla versione 2012-02-12.
Avviso
L'URL restituito nell'intestazione x-ms-copy-source
contiene tutti i parametri di richiesta usati nell'operazione di copia nel BLOB di origine. Se si usa un token di firma di accesso condiviso per accedere al BLOB di origine, tale token di firma di accesso condiviso verrà visualizzato nell'intestazione x-ms-copy-source
quando Get Blob
viene chiamato nel BLOB di destinazione.
Quando x-ms-copy-status: failed
compare nella risposta, x-ms-copy-status-description
contiene informazioni aggiuntive sull'errore di Copy Blob
.
I tre campi di ogni x-ms-copy-status-description
valore sono descritti nella tabella seguente:
Componente | Descrizione |
---|---|
Codice di stato HTTP | Intero a 3 cifre standard che specifica l'errore. |
Codice di errore | Parola chiave che descrive l'errore, fornito da Azure nell'elemento <ErrorCode> . Se non viene visualizzato alcun <elemento ErrorCode> , viene usata una parola chiave contenente testo di errore standard associato al codice di stato HTTP a 3 cifre nella specifica HTTP. Vedere Codici di errore comuni dell'API REST. |
Informazioni | Descrizione dettagliata dell'errore, racchiusa tra virgolette. |
I x-ms-copy-status
valori e x-ms-copy-status-description
degli scenari di errore comuni sono descritti nella tabella seguente:
Importante
Le descrizioni degli errori in questa tabella possono cambiare senza preavviso, anche senza alcuna modifica della versione, in modo che non corrispondano esattamente al testo.
Scenario | valore di x-ms-copy-status | valore di x-ms-copy-status-description |
---|---|---|
Operazione di copia completata correttamente. | esito positivo | empty |
Operazione di copia interrotta dall'utente prima che venga completata. | aborted | empty |
Si è verificato un errore durante la lettura dal Blob di origine durante un'operazione di copia, ma verrà effettuato un altro tentativo. | in sospeso | 502 Gateway non valido "Errore non irreversibile durante la lettura dell'origine. Verrà effettuato un altro tentativo. Ora di errore: <tempo>" |
Si è verificato un errore durante la scrittura nel Blob di destinazione di un'operazione di copia, ma verrà effettuato un altro tentativo. | in sospeso | 500 InternalServerError "Errore non irreversibile. Verrà effettuato un altro tentativo. Ora di errore: <tempo>" |
Si è verificato un errore irreversibile durante la lettura dal Blob di origine di un'operazione di copia. | non riuscita | 404 ResourceNotFound "Copia non riuscita durante la lettura dell'origine". Nota: Quando il servizio segnala questo errore sottostante, restituisce ResourceNotFound nell'elemento ErrorCode . Se nella risposta non è presente alcun ErrorCode elemento, viene visualizzata una rappresentazione di stringa standard dello stato HTTP, ad esempio NotFound , . |
Il periodo di timeout che limita tutte le operazioni di copia è trascorso. (Il periodo di timeout è attualmente 2 settimane.) | non riuscita | 500 OperationCancelled "La copia ha superato il tempo massimo consentito". |
L'operazione di copia non è riuscita troppo spesso durante la lettura dall'origine e non ha soddisfatto un rapporto minimo tra tentativi riusciti. Questo timeout impedisce la ripetizione di un'origine molto scarsa in due settimane prima dell'esito negativo. | non riuscita | 500 OperationCancelled "Copia non riuscita durante la lettura dell'origine". |
x-ms-last-access-time
tiene traccia dell'ora in cui è stato eseguito l'accesso ai dati del BLOB in base ai criteri di rilevamento dell'ora dell'ultimo accesso dell'account di archiviazione. L'accesso ai metadati di un BLOB non modifica l'ora dell'ultimo accesso.
Fatturazione
Le richieste di determinazione dei prezzi possono provenire dai client che usano le API di archiviazione BLOB, direttamente tramite l'API REST di Archiviazione BLOB o da una libreria client di Archiviazione di Azure. Queste richieste accumulano addebiti per transazione. Il tipo di transazione influisce sul modo in cui viene addebitato l'account. Ad esempio, le transazioni di lettura si accumulano in una categoria di fatturazione diversa rispetto alle transazioni di scrittura. La tabella seguente illustra la categoria di fatturazione per Get Blob
le richieste in base al tipo di account di archiviazione:
Operazione | Tipo di account di archiviazione | Categoria di fatturazione |
---|---|---|
Get Blob | BLOB in blocchi Premium Utilizzo generico v2 Standard Standard per utilizzo generico v1 |
Operazioni di lettura |
Per informazioni sui prezzi per la categoria di fatturazione specificata, vedere prezzi Archiviazione BLOB di Azure.
Vedi anche
Autorizzare le richieste ad Archiviazione di Azure
Stato e codici errore
Codici di errore dell'archiviazione BLOB
Impostare i timeout per le operazioni di archiviazione BLOB