Set Blob MetadataSet Blob Metadata

L'opération Set Blob Metadata définit les métadonnées définies par l'utilisateur pour l'objet blob spécifié sous la forme de paires nom-valeur.The Set Blob Metadata operation sets user-defined metadata for the specified blob as one or more name-value pairs.

RequêteRequest

La demande Set Blob Metadata peut être construite comme indiqué ci-dessous.The Set Blob Metadata request may be constructed as follows. HTTPS est recommandé.HTTPS is recommended. Remplacez moncompte par le nom de votre compte de stockage :Replace myaccount with the name of your storage account:

URI de demande de la méthode PUTPUT Method Request URI Version HTTPHTTP Version
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=metadata HTTP/1.1HTTP/1.1

URI du service de stockage émuléEmulated Storage Service URI

Lorsque vous élaborez une demande pour le service de stockage émulé, spécifiez le nom d'hôte de l'émulateur et le port de service BLOB sous la forme 127.0.0.1:10000, suivi du nom de compte de stockage émulé :When making a request against the emulated storage service, specify the emulator hostname and Blob service port as 127.0.0.1:10000, followed by the emulated storage account name:

URI de demande de la méthode PUTPUT Method Request URI Version HTTPHTTP Version
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob?comp=metadata HTTP/1.1HTTP/1.1

Pour plus d’informations, consultez utilisation de l’émulateur de stockage Azure pour le développement et le test.For more information, see Using the Azure Storage Emulator for Development and Testing.

Paramètres URIURI Parameters

Les paramètres supplémentaires suivants peuvent être spécifiés dans l'URI de la demande.The following additional parameters may be specified on the request URI.

ParamètreParameter DescriptionDescription
timeout facultatif.Optional. Le paramètre timeout est exprimé en secondes.The timeout parameter is expressed in seconds. Pour plus d’informations, consultez définition de délais d’attente pour les opérations de service BLOB.For more information, see Setting Timeouts for Blob Service Operations.

En-têtes de requêteRequest Headers

Le tableau suivant décrit les en-têtes de demande obligatoires ou facultatifs.The following table describes required and optional request headers.

En-tête de la demandeRequest Header DescriptionDescription
Authorization Obligatoire.Required. Spécifie le schéma d’autorisation, le nom de compte et la signature.Specifies the authorization scheme, account name, and signature. Pour plus d’informations, consultez autoriser les demandes dans le stockage Azure.For more information, see Authorize requests to Azure Storage.
Date ou x-ms-dateDate or x-ms-date Obligatoire.Required. Spécifie la date/heure en temps universel coordonné (UTC) pour la requête.Specifies the Coordinated Universal Time (UTC) for the request. Pour plus d’informations, consultez autoriser les demandes dans le stockage Azure.For more information, see Authorize requests to Azure Storage.
x-ms-version Obligatoire pour toutes les demandes autorisées.Required for all authorized requests. Spécifie la version de l'opération à utiliser pour cette demande.Specifies the version of the operation to use for this request. Pour plus d’informations, consultez contrôle de version pour les services de stockage Azure.For more information, see Versioning for the Azure Storage Services.
x-ms-meta-name:value facultatif.Optional. Définit une paire nom-valeur pour l'objet blob.Sets a name-value pair for the blob.

Chaque appel à cette opération remplace toutes les métadonnées existantes attachées à l'objet blob.Each call to this operation replaces all existing metadata attached to the blob. Pour supprimer toutes les métadonnées de l'objet blob, appelez cette opération sans en-tête de métadonnées.To remove all metadata from the blob, call this operation with no metadata headers.

Notez que depuis la version 2009-09-19, les noms de métadonnées doivent respecter les règles d’affectation de noms pour les identificateurs C#.Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules for C# identifiers.
x-ms-encryption-scope facultatif.Optional. Indique l’étendue de chiffrement à utiliser pour chiffrer le contenu de la demande.Indicates the encryption scope to use to encrypt the request contents. Cet en-tête est pris en charge dans les versions 2019-02-02 ou ultérieures.This header is supported in versions 2019-02-02 or later.
x-ms-lease-id:<ID> Obligatoire si l'objet blob a un bail actif.Required if the blob has an active lease. Pour effectuer cette opération sur un objet blob avec un bail actif, spécifiez l'ID de bail valide pour cet en-tête.To perform this operation on a blob with an active lease, specify the valid lease ID for this header.
x-ms-client-request-id facultatif.Optional. Fournit une valeur opaque générée par le client avec une limite de 1 Kio de caractères qui est enregistrée dans les journaux d’analyse lorsque la journalisation de l’analyse de stockage est activée.Provides a client-generated, opaque value with a 1 KiB character limit that is recorded in the analytics logs when storage analytics logging is enabled. L’utilisation de cet en-tête est fortement recommandée pour la mise en corrélation des activités côté client avec les requêtes reçues par le serveur.Using this header is highly recommended for correlating client-side activities with requests received by the server. Pour plus d’informations, consultez à propos de la journalisation des Storage Analytics et de la journalisation Azure : utilisation des journaux pour suivre les demandes de stockage.For more information, see About Storage Analytics Logging and Azure Logging: Using Logs to Track Storage Requests.

Cette opération prend également en charge l'utilisation d'en-têtes conditionnels pour définir les métadonnées de l'objet blob uniquement si une condition est remplie.This operation also supports the use of conditional headers to set blob metadata only if a specified condition is met. Pour plus d’informations, consultez Spécification des en-têtes conditionnels pour les opérations du service Blob.For more information, see Specifying Conditional Headers for Blob Service Operations.

En-têtes de demande (clés de chiffrement fournies par le client)Request Headers (Customer-provided encryption keys)

À partir de la version 2019-02-02, les en-têtes suivants peuvent être spécifiés sur la demande pour chiffrer un objet BLOB avec une clé fournie par le client.Beginning with version 2019-02-02, the following headers may be specified on the request to encrypt a blob with a customer-provided key. Le chiffrement avec une clé fournie par le client (et le jeu d’en-têtes correspondant) est facultatif.Encryption with a customer-provided key (and the corresponding set of headers) is optional. Si un objet BLOB a déjà été chiffré avec une clé fournie par le client, ces en-têtes doivent être inclus dans la demande pour que l’opération d’écriture soit effectuée avec succès.If a blob has previously been encrypted with a customer-provided key, then these headers must be included on the request to complete the write operation successfully.

En-tête de requêteRequest header DescriptionDescription
x-ms-encryption-key Obligatoire.Required. Clé de chiffrement AES-256 encodée en base64.The Base64-encoded AES-256 encryption key.
x-ms-encryption-key-sha256 Obligatoire.Required. Hachage SHA256 encodé en base64 de la clé de chiffrement.The Base64-encoded SHA256 hash of the encryption key.
x-ms-encryption-algorithm: AES256 Obligatoire.Required. Spécifie l’algorithme à utiliser pour le chiffrement.Specifies the algorithm to use for encryption. La valeur de cet en-tête doit être AES256 .The value of this header must be AES256.

Corps de la demandeRequest Body

Aucun.None.

responseResponse

La réponse inclut un code d'état HTTP et un ensemble d'en-têtes de réponse.The response includes an HTTP status code and a set of response headers.

Code d’étatStatus Code

Une opération réussie envoie le code d'état 200 (OK).A successful operation returns status code 200 (OK).

Pour plus d’informations sur les codes d’État, consultez codes d’État et d’erreur.For information about status codes, see Status and Error Codes.

En-têtes de réponseResponse Headers

La réponse de l'opération inclut les en-têtes suivants.The response for this operation includes the following headers. La réponse peut aussi inclure des en-têtes HTTP standard supplémentaires.The response may also include additional standard HTTP headers. Tous les en-têtes standard sont conformes à la spécification du protocole HTTP/1.1.All standard headers conform to the HTTP/1.1 protocol specification.

En-tête de réponseResponse header DescriptionDescription
ETag L'ETag contient une valeur que vous pouvez utiliser pour exécuter des opérations conditionnellement.The ETag contains a value that you can use to perform operations conditionally. Pour plus d’informations, consultez spécification d’en-têtes conditionnels pour les opérations de service BLOB .See Specifying Conditional Headers for Blob Service Operations for more information. Si la version de la demande est 18/08/2011 ou plus récente, la valeur de l'ETag sera entre guillemets.If the request version is 2011-08-18 or newer, the ETag value will be in quotes.
Last-Modified Date et heure de la dernière modification apportée à l'objet blob.The date/time that the blob was last modified. Le format de date est conforme à la RFC 1123.The date format follows RFC 1123. Pour plus d’informations, consultez représentation des valeurs de date et d’heure dans les en-têtes.For more information, see Representation of Date-Time Values in Headers.

Toute opération d'écriture dans l'objet blob (notamment les mises à jour des métadonnées ou des propriétés de l'objet blob), modifie la heure de la dernière modification de l'objet blob.Any write operation on the blob (including updates on the blob's metadata or properties) changes the last modified time of the blob.
x-ms-request-id Cet en-tête identifie de façon unique la demande qui a été effectuée et peut être utilisé pour résoudre les problèmes de la demande.This header uniquely identifies the request that was made and can be used for troubleshooting the request. Pour plus d’informations, consultez Troubleshooting API Operations.For more information, see Troubleshooting API Operations.
x-ms-version Indique la version du service BLOB utilisée pour exécuter la demande.Indicates the version of the Blob service used to execute the request. Cet en-tête est renvoyé pour les demandes effectuées avec la version du 19/09/2009 et ultérieure.This header is returned for requests made against version 2009-09-19 and above.
Date Une valeur de date/heure UTC générée par le service qui indique le moment auquel la réponse a été initiée.A UTC date/time value generated by the service that indicates the time at which the response was initiated.
x-ms-request-server-encrypted: true/false Version 2015-12-11 ou ultérieure.Version 2015-12-11 or newer. La valeur de cet en-tête est définie sur true si le contenu de la demande est correctement chiffré à l’aide de l’algorithme spécifié et dans le false cas contraire.The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise.
x-ms-encryption-key-sha256 Version 2019-02-02 ou ultérieure.Version 2019-02-02 or newer. Cet en-tête est retourné si la demande utilise une clé fournie par le client pour le chiffrement, afin que le client puisse s’assurer que le contenu de la demande est correctement chiffré à l’aide de la clé fournie.This header is returned if the request used a customer-provided key for encryption, so the client can ensure the contents of the request are successfully encrypted using the provided key.
x-ms-encryption-scope Version 2019-02-02 ou ultérieure.Version 2019-02-02 or newer. Cet en-tête est retourné si la demande a utilisé une étendue de chiffrement, afin que le client puisse s’assurer que le contenu de la demande est correctement chiffré à l’aide de l’étendue de chiffrement.This header is returned if the request used an encryption scope, so the client can ensure the contents of the request are successfully encrypted using the encryption scope.
x-ms-client-request-id Cet en-tête peut être utilisé pour dépanner les demandes et les réponses correspondantes.This header can be used to troubleshoot requests and corresponding responses. La valeur de cet en-tête est égale à la valeur de l' x-ms-client-request-id en-tête si elle est présente dans la demande et que la valeur est supérieure à 1024 caractères ASCII visibles.The value of this header is equal to the value of the x-ms-client-request-id header if it is present in the request and the value is at most 1024 visible ASCII characters. Si l' x-ms-client-request-id en-tête n’est pas présent dans la demande, cet en-tête ne sera pas présent dans la réponse.If the x-ms-client-request-id header is not present in the request, this header will not be present in the response.

Corps de la réponseResponse Body

Aucun.None.

AutorisationAuthorization

Cette opération peut être appelée par le propriétaire du compte ou par toute personne avec une signature d'accès partagé qui dispose des autorisations pour écrire dans cet objet blob ou son conteneur.This operation can be called by the account owner and by anyone with a Shared Access Signature that has permission to write to this blob or its container.

RemarquesRemarks

Si l'objet blob a un bail actif, le client doit spécifier un ID de bail valide dans la demande afin d'écrire les métadonnées dans l'objet blob.If the blob has an active lease, the client must specify a valid lease ID on the request in order to write metadata to the blob. Si le client ne spécifie pas un ID de bail ou spécifie un ID de bail incorrect, le service BLOB retourne le code d'état 412 (Échec de la précondition).If the client does not specify a lease ID, or specifies an invalid lease ID, the Blob service returns status code 412 (Precondition Failed). Si le client spécifie un ID de bail, mais que l'objet blob n'a pas de bail actif, le service BLOB retourne également le code d'état 412 (Échec de la précondition).If the client specifies a lease ID but the blob does not have an active lease, the Blob service also returns status code 412 (Precondition Failed).

Voir aussiSee Also

Autoriser les demandes au stockage Azure Authorize requests to Azure Storage
Codes d’État et d’erreur Status and Error Codes
Codes d’erreur du service BLOBBlob Service Error Codes