Partager via


Get Blob

L'opération Get Blob lit ou télécharge un objet blob à partir du système, y compris ses métadonnées et propriétés. Vous pouvez également appeler Get Blob pour lire un instantané.

Requête

Vous pouvez construire la Get Blob requête comme suit. Nous vous recommandons d’utiliser HTTPS. Remplacez moncompte par le nom de votre compte de stockage :

URI de demande de méthode GET Version 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 de service de stockage émulé

Lorsque vous effectuez une requête auprès du service de stockage émulé, spécifiez le nom d’hôte de l’émulateur et Stockage Blob Azure port comme 127.0.0.1:10000, suivi du nom du compte de stockage émulé :

URI de demande de méthode GET Version HTTP
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob HTTP/1.0

HTTP/1.1

Pour plus d’informations, consultez Utiliser l’émulateur de stockage Azure pour le développement et le test.

Paramètres URI

Les paramètres supplémentaires suivants peuvent être spécifiés sur l’URI de demande :

Paramètre Description
snapshot facultatif. Le paramètre instantané est une valeur opaque DateTime qui, lorsqu’elle est présente, spécifie le instantané d’objet blob à récupérer. Pour plus d’informations sur l’utilisation des instantanés d’objets blob, consultez Create un instantané d’un objet blob.
versionid Facultatif, version 2019-12-12 et ultérieures. Le versionid paramètre est une valeur opaque DateTime qui, lorsqu’elle est présente, spécifie la version de l’objet blob à récupérer.
timeout facultatif. Le paramètre timeout est exprimé en secondes. Pour plus d’informations, consultez Définir des délais d’expiration pour les opérations de stockage Blob.

En-têtes de requête

Le tableau suivant décrit les en-têtes de demande obligatoires ou facultatifs.

En-tête de requête Description
Authorization Obligatoire. Spécifie le schéma d’autorisation, le nom du compte et la signature. Pour plus d’informations, consultez Autoriser les requêtes auprès du Stockage Azure.
Date ou x-ms-date Obligatoire. Spécifie la date/heure en temps universel coordonné (UTC) pour la requête. Pour plus d’informations, consultez Autoriser les requêtes auprès du Stockage Azure.
x-ms-version Obligatoire pour toutes les demandes autorisées. Facultatif pour les demandes anonymes. Spécifie la version de l'opération à utiliser pour cette demande. Si cet en-tête est omis pour une requête anonyme, le service exécute la demande avec la version 2009-09-19. Pour plus d'informations, consultez la page Contrôle de version pour les services de Stockage Microsoft Azure.
Range facultatif. Retourne les octets de l’objet blob uniquement dans la plage spécifiée.
x-ms-range facultatif. Retourne les octets de l’objet blob uniquement dans la plage spécifiée. Si Range et x-ms-range sont spécifiés, le service utilise la valeur de x-ms-range. Si aucune plage n’est spécifiée, le contenu de l’objet blob entier est retourné. Pour plus d’informations, consultez Spécifier l’en-tête de plage pour les opérations stockage Blob.
x-ms-lease-id: <ID> facultatif. Si cet en-tête est spécifié, l’opération n’est effectuée que si les deux conditions suivantes sont remplies :

- Le bail de l’objet blob est actuellement actif.
- L’ID de bail spécifié dans la demande correspond à l’ID de bail de l’objet blob.

Si cet en-tête est spécifié mais que l’une de ces conditions n’est pas remplie, la demande échoue et l’opération Get Blob échoue avec status code 412 (Échec de la condition préalable).
x-ms-range-get-content-md5: true facultatif. Lorsque cet en-tête est défini true sur et spécifié avec l’en-tête Range , le service retourne le hachage MD5 pour la plage, tant que la plage est inférieure ou égale à 4 mebioctets (Mio) en taille.

Si l’en-tête est spécifié sans l’en-têteRange, le service retourne status code 400 (requête incorrecte).

Si l’en-tête est défini sur true lorsque la plage dépasse 4 Mio, le service retourne status code 400 (requête incorrecte).
x-ms-range-get-content-crc64: true facultatif. Lorsque cet en-tête est défini true sur et spécifié avec l’en-tête Range , le service retourne le hachage CRC64 pour la plage, tant que la plage est inférieure ou égale à 4 Mio.

Si l’en-tête est spécifié sans l’en-têteRange, le service retourne status code 400 (requête incorrecte).

Si l’en-tête est défini sur true lorsque la plage dépasse 4 Mio, le service retourne status code 400 (requête incorrecte).

Si les x-ms-range-get-content-md5 en-têtes et x-ms-range-get-content-crc64 sont présents, la demande échoue avec un 400 (requête incorrecte).

Cet en-tête est pris en charge dans les versions 2019-02-02 et ultérieures.
Origin facultatif. Spécifie l'origine à partir de laquelle la demande est émise. La présence de cet en-tête entraîne des en-têtes de partage de ressources cross-origine (CORS) dans la réponse.
x-ms-upn facultatif. Version 2023-11-03 et ultérieures. Valide pour les comptes avec un espace de noms hiérarchique activé. Si la valeur est true, les valeurs d’identité de l’utilisateur retournées dans les x-ms-ownerx-ms-group en-têtes de réponse et x-ms-acl sont transformées de Microsoft Entra ID d’objet en noms d’utilisateur principal. Si la valeur est false, ils sont retournés en tant qu’ID d’objet Microsoft Entra. La valeur par défaut est false. Notez que les ID d’objet de groupe et d’application ne sont pas traduits, car ils n’ont pas de noms conviviaux uniques.
x-ms-client-request-id facultatif. Fournit une valeur opaque générée par le client avec une limite de caractères de 1 kibioctet (Kio), qui est enregistrée dans les journaux d’analyse lorsque la journalisation des analyses de stockage est activée. Nous vous recommandons vivement d’utiliser cet en-tête lorsque vous associez des activités côté client aux demandes reçues par le serveur. Pour plus d’informations, consultez À propos d’Azure Storage Analytics journalisation.

Cette opération prend également en charge l'utilisation d'en-têtes conditionnels pour lire l'objet blob uniquement si une condition donnée est remplie. Pour plus d’informations, consultez Spécifier des en-têtes conditionnels pour les opérations de stockage Blob.

En-têtes de requête (clés de chiffrement fournies par le client)

À partir de la version 2019-02-02, vous pouvez spécifier les en-têtes suivants sur la demande de lecture d’un objet blob chiffré avec une clé fournie par le client. Le chiffrement avec une clé fournie par le client (et l’ensemble d’en-têtes correspondant) est facultatif. Si un objet blob a déjà été chiffré avec une clé fournie par le client, vous devez inclure ces en-têtes dans la demande pour terminer l’opération de lecture.

En-tête de requête Description
x-ms-encryption-key Obligatoire. Clé de chiffrement AES-256 encodée en Base64.
x-ms-encryption-key-sha256 facultatif. Hachage SHA256 encodé en Base64 de la clé de chiffrement.
x-ms-encryption-algorithm: AES256 Obligatoire. Spécifie l’algorithme à utiliser pour le chiffrement. La valeur de cet en-tête doit être définie AES256.

Corps de la demande

Aucun.

response

La réponse comprend un code d'état HTTP, un ensemble d'en-têtes de réponse et le corps de réponse qui contient le contenu de l'objet blob.

Code d’état

Une opération ayant réussi pour lire l'objet blob complet retourne le code d'état 200 (OK).

Une opération ayant réussi pour lire une plage spécifiée retourne le code d'état 206 (Contenu partiel).

Pour plus d’informations sur les codes status, consultez Codes d’état et d’erreur.

En-têtes de réponse

La réponse de l'opération inclut les en-têtes suivants. La réponse peut aussi inclure des en-têtes HTTP standard supplémentaires. Tous les en-têtes standard sont conformes à la spécification du protocole HTTP/1.1.

Syntaxe Description
Last-Modified Date/heure de la dernière modification de l’objet blob. Le format de date est conforme à la RFC 1123.

Toute opération qui modifie l'objet blob, notamment une mise à jour des métadonnées ou des propriétés de l'objet blob, modifie l'heure de la dernière modification de l'objet blob.
x-ms-creation-time Version 2017-11-09 et ultérieures. Date/heure de création de l’objet blob. Le format de date est conforme à la RFC 1123.
x-ms-meta-name:value Ensemble de paires nom-valeur qui est associé à cet objet blob en tant que métadonnées définies par l’utilisateur.
x-ms-tag-count Version 2019-12-12 et ultérieures. Si l’objet blob a des balises, cet en-tête retourne le nombre de balises stockées sur l’objet blob. L’en-tête n’est pas retourné s’il n’y a pas de balises sur l’objet blob.
Content-Length Le nombre d'octets présents dans le corps de la réponse.
Content-Type Type de contenu spécifié pour l’objet blob. Le type de contenu par défaut est application/octet-stream.
Content-Range Indique la plage d’octets retournée dans le cas où le client a demandé un sous-ensemble de l’objet blob en définissant l’en-tête de requête Range .
ETag Contient une valeur que vous pouvez utiliser pour effectuer des opérations de manière conditionnelle. Pour plus d’informations, consultez Spécifier des en-têtes conditionnels pour les opérations de stockage Blob. Si la version de la demande est 2011-08-18 ou version ultérieure, la valeur ETag est placée entre guillemets.
Content-MD5 Si l'objet blob a un hachage MD5 et que cette opération Get Blob doit lire l'objet blob dans son entier, cet en-tête de réponse est retourné afin que le client puisse vérifier l'intégrité du contenu du message.

Dans les versions 2012-02-12 et ultérieures, définit la Put Blob valeur de hachage MD5 d’un objet blob de blocs, même lorsque la Put Blob requête n’inclut pas d’en-tête MD5.

Si la demande est de lire une plage spécifiée et que est x-ms-range-get-content-md5 défini sur true, la requête retourne un hachage MD5 pour la plage, tant que la taille de la plage est inférieure ou égale à 4 Mio.

Si aucun de ces ensembles de conditions n’est true, aucune valeur n’est retournée pour l’en-tête Content-MD5 .

Si x-ms-range-get-content-md5 est spécifié sans l'en-tête Range, le service retourne le code d'état 400 (Demande incorrecte).

Si x-ms-range-get-content-md5 est défini sur true lorsque la plage dépasse 4 Mio, le service retourne status code 400 (requête incorrecte).
x-ms-content-crc64 Si la demande est de lire une plage spécifiée et que est x-ms-range-get-content-crc64 défini sur true, la requête retourne un hachage CRC64 pour la plage, tant que la taille de la plage est inférieure ou égale à 4 Mio.

Si x-ms-range-get-content-crc64 est spécifié sans l'en-tête Range, le service retourne le code d'état 400 (Demande incorrecte).

Si x-ms-range-get-content-crc64 est défini sur true lorsque la plage dépasse 4 Mio, le service retourne status code 400 (requête incorrecte).
Content-Encoding Retourne la valeur qui a été spécifiée pour l’en-tête de Content-Encoding requête.
Content-Language Retourne la valeur qui a été spécifiée pour l’en-tête de Content-Language requête.
Cache-Control Retourné si l’en-tête a été spécifié précédemment pour l’objet blob.
Content-Disposition Retourné pour les demandes effectuées avec la version du 15/08/2013 ou les versions ultérieures. Cet en-tête retourne la valeur qui a été spécifiée pour l'en-tête x-ms-blob-content-disposition.

Le Content-Disposition champ d’en-tête de réponse transmet des informations supplémentaires sur la façon de traiter la charge utile de la réponse, et il peut être utilisé pour joindre des métadonnées supplémentaires. Par exemple, si l’en-tête est défini sur attachment, cela indique que l’agent utilisateur ne doit pas afficher la réponse. Au lieu de cela, il affiche une boîte de dialogue Enregistrer sous avec un nom de fichier autre que le nom d’objet blob spécifié.
x-ms-blob-sequence-number Le numéro de séquence actuel d'un objet blob de pages.

Cet en-tête n’est pas retourné pour les objets blob de blocs ou les objets blob d’ajout.
x-ms-blob-type: <BlockBlob | PageBlob | AppendBlob> Retourne le type de l'objet blob.
x-ms-copy-completion-time: <datetime> Version 2012-02-12 et versions ultérieures. Heure de conclusion de la dernière opération tentée Copy Blob où cet objet blob était l’objet blob de destination. Cette valeur peut spécifier l'heure d'une tentative de copie qui s'est terminée, qui a été annulée ou qui a échoué. Cet en-tête n’apparaît pas si une copie est en attente, si cet objet blob n’a jamais été la destination d’une Copy Blob opération, ou si cet objet blob a été modifié après une opération terminée Copy Blob qui a utilisé Set Blob Properties, Put Blobou Put Block List.
x-ms-copy-status-description: <error string> Version 2012-02-12 et versions ultérieures. N’apparaît que lorsque x-ms-copy-status est failed ou pending. Décrit la cause du dernier échec de l'opération de copie irrécupérable ou non. Cet en-tête n’apparaît pas si cet objet blob n’a jamais été la destination d’une Copy Blob opération, ou si cet objet blob a été modifié après une opération terminée Copy Blob qui a utilisé Set Blob Properties, Put Blobou Put Block List.
x-ms-copy-id: <id> Version 2012-02-12 et versions ultérieures. Identificateur de chaîne pour la dernière opération tentée Copy Blob où cet objet blob était l’objet blob de destination. Cet en-tête n’apparaît pas si cet objet blob n’a jamais été la destination d’une Copy Blob opération, ou si cet objet blob a été modifié après une opération terminée Copy Blob qui a utilisé Set Blob Properties, Put Blobou Put Block List.
x-ms-copy-progress: <bytes copied/bytes total> Version 2012-02-12 et versions ultérieures. Contient le nombre d’octets qui ont été copiés et le nombre total d’octets dans la source lors de la dernière tentative d’opération Copy Blob où cet objet blob était l’objet blob de destination. Il peut afficher entre 0 et Content-Length 0 octets copiés. Cet en-tête n’apparaît pas si cet objet blob n’a jamais été la destination d’une Copy Blob opération, ou si cet objet blob a été modifié après une opération terminée Copy Blob qui a utilisé Set Blob Properties, Put Blobou Put Block List.
x-ms-copy-source: url Version 2012-02-12 et versions ultérieures. URL d’une longueur maximale de 2 Kio qui spécifie l’objet blob ou le fichier source utilisé dans la dernière tentative d’opération Copy Blob où cet objet blob était l’objet blob de destination. Cet en-tête n’apparaît pas si cet objet blob n’a jamais été la destination d’une Copy Blob opération, ou si cet objet blob a été modifié après une opération terminée Copy Blob qui a utilisé Set Blob Properties, Put Blobou Put Block List.

L’URL retournée dans cet en-tête contient tous les paramètres de requête qui ont été utilisés dans l’opération de copie sur l’objet blob source, y compris le jeton de signature d’accès partagé (SAP) qui a été utilisé pour accéder à l’objet blob source.
x-ms-copy-status: <pending | success | aborted | failed> Version 2012-02-12 et versions ultérieures. État de l’opération de copie identifiée par x-ms-copy-id, avec les valeurs suivantes :

- success: Copie terminée avec succès.
- pending: la copie est en cours. Vérifiez x-ms-copy-status-description si les erreurs intermittentes et non irrécupérables ralentissent la progression de la copie, mais ne provoquent pas d’échec.
- aborted: la copie a été terminée par Abort Copy Blob.
- failed: Échec de la copie. Pour plus d’informations sur l’échec, consultez x-ms-copy-status-description.

Cet en-tête n’apparaît pas si cet objet blob n’a jamais été la destination d’une Copy Blob opération, ou si cet objet blob a été modifié après une opération terminée Copy Blob qui a utilisé Set Blob Properties, Put Blobou Put Block List.
x-ms-lease-duration: <infinite | fixed> Version 2012-02-12 et versions ultérieures. Quand un objet blob est loué, spécifie si le bail est d'une durée illimitée ou fixe.
x-ms-lease-state: <available | leased | expired | breaking | broken> Version 2012-02-12 et versions ultérieures. État de bail de l’objet blob.
x-ms-lease-status:<locked | unlocked> L'état de bail actuel de l'objet blob.
x-ms-request-id Identifie de manière unique la demande qui a été effectuée et peut être utilisée pour résoudre la demande. Pour plus d’informations, consultez Résoudre les problèmes liés aux opérations d’API.
x-ms-version Indique la version de Stockage Blob qui a été utilisée pour exécuter la demande. Inclus pour les demandes effectuées à l’aide de la version 2009-09-19 et ultérieures.

Cet en-tête est également retourné pour les requêtes anonymes sans version spécifiée si le conteneur a été marqué pour un accès public à l’aide de la version 2009-09-19 du Stockage Blob.
Accept-Ranges: bytes Indique que le service prend en charge les demandes pour le contenu partiel d'objets blob. Inclus pour les demandes effectuées à l’aide de la version 2011-08-18 et ultérieures, et pour le service de stockage local dans le SDK version 1.6 et ultérieure.
Date Valeur de date/heure UTC générée par le service, qui indique l’heure à laquelle la réponse a été lancée.
Access-Control-Allow-Origin Retourné si la demande inclut un en-tête Origin et le partage de ressources cross-origine (CORS) est activé avec une règle de correspondance. Cet en-tête retourne la valeur de l'en-tête de demande d'origine en cas de correspondance.
Access-Control-Expose-Headers Retourné si la demande inclut un en-tête Origin et le partage de ressources cross-origine (CORS) est activé avec une règle de correspondance. Retourne la liste des en-têtes de réponse qui doivent être exposés au client ou à l'émetteur de la demande.
Vary Retourné avec la valeur de l'en-tête Origin lorsque des règles CORS sont spécifiées. Pour plus d’informations, consultez Prise en charge de CORS pour les services de stockage Azure .
Access-Control-Allow-Credentials Retourné si la requête inclut un Origin en-tête et que CORS est activé avec une règle de correspondance qui n’autorise pas toutes les origines. Cet en-tête est défini sur true.
x-ms-blob-committed-block-count Nombre de blocs validés présents dans l’objet blob. Cet en-tête est retourné uniquement pour les objets blob d’ajout.
x-ms-server-encrypted: true/false Version 2015-12-11 et ultérieures. La valeur de cet en-tête est définie sur true si les données d’objet blob et les métadonnées d’application sont entièrement chiffrées à l’aide de l’algorithme spécifié. Sinon, la valeur est définie sur false (lorsque l’objet blob n’est pas chiffré ou si seules certaines parties des métadonnées de l’objet blob ou de l’application sont chiffrées).
x-ms-encryption-key-sha256 Version 2019-02-02 et ultérieures. Cet en-tête est retourné si l’objet blob est chiffré avec une clé fournie par le client.
x-ms-encryption-context Version 2021-08-06 et ultérieures. Si la valeur de la propriété de contexte de chiffrement est définie, elle retourne la valeur définie. Valide uniquement lorsque l’espace de noms hiérarchique est activé pour le compte.
x-ms-encryption-scope Version 2019-02-02 et ultérieures. Cet en-tête est retourné si l’objet blob est chiffré avec une étendue de chiffrement.
x-ms-blob-content-md5 Version 2016-05-31 et ultérieures. Si l’objet blob a un hachage MD5 et si la demande contient un en-tête de plage (Range ou x-ms-range), cet en-tête de réponse est retourné avec la valeur de la valeur MD5 de l’objet blob entier. Cette valeur peut être égale ou non à la valeur retournée dans l’en-tête Content-MD5, cette dernière étant calculée à partir de la plage demandée.
x-ms-client-request-id Peut être utilisé pour résoudre les demandes et les réponses correspondantes. La valeur de cet en-tête est égale à la valeur de l’en-tête x-ms-client-request-id s’il est présent dans la requête et que la valeur ne contient pas plus de 1 024 caractères ASCII visibles. Si l’en-tête x-ms-client-request-id n’est pas présent dans la demande, cet en-tête n’est pas présent dans la réponse.
x-ms-last-access-time Version 2020-02-10 et ultérieures. Indique la dernière fois où les données de l’objet blob ont été consultées en fonction de la stratégie de suivi du dernier temps d’accès du compte de stockage. L’en-tête n’est pas retourné si le compte de stockage n’a pas de stratégie de suivi de l’heure de dernier accès ou si la stratégie est désactivée. Pour plus d’informations sur la définition de la stratégie de suivi du dernier temps d’accès du compte de stockage, consultez API du service Blob.
x-ms-blob-sealed Version 2019-12-12 et ultérieures. Retourné uniquement pour les objets blob d’ajout. Si l’objet blob d’ajout a été scellé, la valeur est true. Pour plus d’informations, consultez Ajouter un sceau d’objet blob.
x-ms-immutability-policy-until-date Version 2020-06-12 et ultérieures. Spécifie la rétention jusqu’à la date définie sur l’objet blob. Il s’agit de la date jusqu’à laquelle l’objet blob peut être protégé contre la modification ou la suppression. Retourné uniquement si une stratégie d’immuabilité est définie sur l’objet blob. La valeur de cet en-tête est au format RFC1123.
x-ms-immutability-policy-mode: unlocked/locked Version 2020-06-12 et ultérieures. Retourné si une stratégie d’immuabilité est définie sur l’objet blob. Les valeurs sont unlocked et locked. unlocked indique que l’utilisateur peut modifier la stratégie en augmentant ou en diminuant la rétention jusqu’à la date. locked indique que ces actions sont interdites.
x-ms-legal-hold: true/false Version 2020-06-12 et ultérieures. Cet en-tête n’est pas retourné s’il n’existe aucune conservation légale sur l’objet blob. La valeur de cet en-tête est définie sur true si l’objet blob contient une conservation légale et si sa valeur est true. Sinon, la valeur est définie false sur si l’objet blob contient une conservation légale et si sa valeur est false.
x-ms-owner Version 2020-06-12 et ultérieure, uniquement pour les comptes avec l’espace de noms hiérarchique activé. Retourne le propriétaire-utilisateur du fichier ou du répertoire.
x-ms-group Version 2020-06-12 et ultérieure, uniquement pour les comptes avec l’espace de noms hiérarchique activé. Retourne le groupe propriétaire du fichier ou du répertoire.
x-ms-permissions Version 2020-06-12 et ultérieure, uniquement pour les comptes avec l’espace de noms hiérarchique activé. Retourne le jeu d’autorisations pour l’utilisateur, le groupe et d’autres sur le fichier ou le répertoire. Chaque autorisation individuelle est au [r,w,x,-]{3} format.
x-ms-acl Version 2023-11-03 et ultérieures. Uniquement pour les comptes avec un espace de noms hiérarchique activé. Retourne la liste combinée de l’accès et de la liste de contrôle d’accès par défaut qui sont définies pour l’utilisateur, le groupe et autres sur le fichier ou le répertoire. Chaque entrée de contrôle d’accès (ACE) se compose d’une étendue, d’un type, d’un identificateur d’utilisateur ou de groupe et d’autorisations au format [scope]:[type]:[id]:[permissions]. L’étendue default indique que l’ACE appartient à la liste de contrôle d’accès par défaut pour un répertoire ; sinon, l’étendue est implicite et l’ACE appartient à l’ACL d’accès. Chaque autorisation individuelle est au [r,w,x,-]{3} format.
x-ms-resource-type Version 2020-10-02 et ultérieure, uniquement pour les comptes avec l’espace de noms hiérarchique activé. Retourne le type de ressource pour le chemin d’accès, qui peut être ou filedirectory.

Response body

Le corps de la réponse contient le contenu de l'objet blob.

Exemple de réponse

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>  
  

Autorisation

Une autorisation est requise lors de l’appel d’une opération d’accès aux données dans Stockage Azure. Vous pouvez autoriser l’opération Get Blob comme décrit ci-dessous.

Important

Microsoft recommande d’utiliser Microsoft Entra ID avec des identités managées pour autoriser les demandes à Stockage Azure. Microsoft Entra ID offre une sécurité et une facilité d’utilisation supérieures par rapport à l’autorisation de clé partagée.

Stockage Azure prend en charge l’utilisation de Microsoft Entra ID pour autoriser les demandes de données blob. Avec Microsoft Entra ID, vous pouvez utiliser le contrôle d’accès en fonction du rôle Azure (Azure RBAC) pour accorder des autorisations à un principal de sécurité. Le principal de sécurité peut être un utilisateur, un groupe, un principal de service d’application ou une identité managée Azure. Le principal de sécurité est authentifié par Microsoft Entra ID pour retourner un jeton OAuth 2.0. Le jeton peut ensuite être utilisé pour autoriser une requête auprès du service BLOB.

Pour en savoir plus sur l’autorisation à l’aide de Microsoft Entra ID, consultez Autoriser l’accès aux objets blob à l’aide de Microsoft Entra ID.

Autorisations

Vous trouverez ci-dessous l’action RBAC nécessaire pour qu’un utilisateur, un groupe, une identité managée ou un principal de service Microsoft Entra appelle l’opérationGet Blob, ainsi que le rôle RBAC Azure intégré le moins privilégié qui inclut cette action :

Pour en savoir plus sur l’attribution de rôles à l’aide d’Azure RBAC, consultez Attribuer un rôle Azure pour l’accès aux données d’objets blob.

Remarques

Pour un objet blob de pages, une opération Get Blob sur une plage de pages qui n'a pas encore de contenu ou qui a été vidée, retourne des zéros pour ces octets.

Si vous appelez Get Blob sur un objet blob de pages sans plage spécifiée, le service retourne la plage de pages jusqu’à la valeur spécifiée pour l’en-tête x-ms-blob-content-length . Pour toutes les pages qui manquent de contenu, le service retourne des zéros pour ces octets.

Pour un objet blob d’ajout, l’opération Get Blob retourne l’en-tête x-ms-blob-committed-block-count . Cet en-tête indique le nombre de blocs validés dans l’objet blob. L’en-tête x-ms-blob-committed-block-count n’est pas retourné pour les objets blob de blocs ou les objets blob de pages.

Une Get Blob opération est autorisée à deux minutes par Mio. Si l’opération prend plus de deux minutes par Mio en moyenne, l’opération expire.

L'en-tête x-ms-version est requis pour récupérer un objet blob qui appartient à un conteneur privé. Si l’objet blob appartient à un conteneur qui est disponible pour un accès public complet ou partiel, n’importe quel client peut le lire sans spécifier de version ; la version du service n’est pas requise pour récupérer un objet blob qui appartient à un conteneur public. Pour plus d'informations, consultez la page Limiter l'accès aux conteneurs et aux objets blob.

Une Get Blob opération sur un objet blob de blocs archivé échoue.

Opérations de copie

Pour déterminer si une Copy Blob opération a été effectuée, case activée d’abord pour vérifier que la x-ms-copy-id valeur d’en-tête de l’objet blob de destination correspond à l’ID de copie fourni par l’appel d’origine à Copy Blob. Une correspondance garantit qu’une autre application n’a pas abandonné la copie et n’a pas démarré une nouvelle Copy Blob opération. Ensuite, case activée pour l’en-têtex-ms-copy-status: success. Toutefois, n’oubliez pas que toutes les opérations d’écriture sur un objet blob, à l’exception Leasedes opérations , Put Pageet Put Block suppriment toutes les x-ms-copy-* propriétés de l’objet blob. Ces propriétés ne sont pas non plus copiées par Copy Blob les opérations qui utilisent des versions de Stockage Blob antérieures à 2012-02-12.

Avertissement

L’URL retournée dans l’en-tête contient tous les x-ms-copy-source paramètres de requête qui ont été utilisés dans l’opération de copie sur l’objet blob source. Si vous utilisez un jeton SAP pour accéder à l’objet blob source, ce jeton SAP apparaît dans l’en-tête x-ms-copy-source quand Get Blob est appelé sur l’objet blob de destination.

Lorsque x-ms-copy-status: failed s'affiche dans la réponse, x-ms-copy-status-description contient plus d'informations sur l'échec Copy Blob.

Les trois champs de chaque x-ms-copy-status-description valeur sont décrits dans le tableau suivant :

Composant Description
Code d’état HTTP Entier standard à 3 chiffres qui spécifie l’échec.
Code d'erreur Une mot clé qui décrit l’erreur, qui est fournie par Azure dans l’élément <ErrorCode>. Si aucun élément ErrorCode> n’apparaît<, un mot clé qui contient le texte d’erreur standard associé au code d’status HTTP à 3 chiffres dans la spécification HTTP est utilisé. Consultez Codes d’erreur d’API REST courants.
Information Description détaillée de l’échec, placée entre guillemets.

Les x-ms-copy-status valeurs et x-ms-copy-status-description des scénarios d’échec courants sont décrites dans le tableau suivant :

Important

Les descriptions d’erreur dans ce tableau peuvent changer sans avertissement, même sans changement de version, de sorte qu’elles peuvent ne pas correspondre exactement à votre texte.

Scénario Valeur x-ms-copy-status Valeur x-ms-copy-status-description
L'opération de copie s'est terminée avec succès. success empty
Opération de copie abandonnée par l'utilisateur avant qu'elle se soit terminée. aborted empty
Une défaillance s'est produite lors de la lecture de l'objet blob source pendant une opération de copie, mais l'opération sera réessayée. en attente 502 BadGateway « Erreur autorisant une nouvelle tentative lors de la lecture de la source. Nouvelle tentative. Heure de l’échec : <heure> »
Une défaillance s'est produite lors de la lecture de l'objet blob de destination d'une opération de copie, mais l'opération sera réessayée. en attente 500 InternalServerError « Erreur autorisant une nouvelle tentative. Nouvelle tentative. Heure de l’échec : <heure> »
Une défaillance irrécupérable s'est produite lors de la lecture de l'objet blob source d'une opération de copie. échec 404 ResourceNotFound « échec de la copie lors de la lecture de la source. »

Note: Lorsque le service signale cette erreur sous-jacente, elle retourne ResourceNotFound dans l’élément ErrorCode . Si aucun élément n’est ErrorCode apparu dans la réponse, une représentation de chaîne standard du status HTTP, telle que NotFound, s’affiche.
Le délai d'expiration limitant toutes les opérations de copie s'est écoulé. (Actuellement le délai d'expiration est de 2 semaines.) échec 500 OperationCancelled « La copie a dépassé le temps maximal alloué. »
L’opération de copie a échoué trop souvent lors de la lecture à partir de la source et n’a pas satisfait à un ratio minimal de tentatives/réussites. (Ce délai d’attente empêche la nouvelle tentative d’une source très médiocre pendant deux semaines avant l’échec). échec 500 OperationCancelled « La copie a échoué lors de la lecture de la source. »

x-ms-last-access-time effectue le suivi de l’heure d’accès aux données de l’objet blob en fonction de la stratégie de suivi du dernier temps d’accès du compte de stockage. L’accès aux métadonnées d’un objet blob ne modifie pas son heure de dernier accès.

Facturation

Les demandes de tarification peuvent provenir de clients qui utilisent des API Stockage Blob, soit directement via l’API REST Stockage Blob, soit à partir d’une bibliothèque cliente stockage Azure. Ces demandes cumulent des frais par transaction. Le type de transaction affecte la façon dont le compte est facturé. Par exemple, les transactions de lecture sont comptabilisées dans une catégorie de facturation différente de celle des transactions en écriture. Le tableau suivant montre la catégorie de facturation pour Get Blob les demandes en fonction du type de compte de stockage :

Opération Type de compte de stockage Catégorie de facturation
Get Blob Objet blob de blocs Premium
Usage général v2 Standard
Usage général v1 standard
Lire les opérations

Pour en savoir plus sur la tarification de la catégorie de facturation spécifiée, consultez Stockage Blob Azure Tarification.

Voir aussi

Autoriser les demandes à Stockage Azure
Codes d’état et d’erreur
Codes d’erreur Stockage Blob
Définir des délais d’expiration pour les opérations de stockage Blob