Set Blob Properties

L'opération Set Blob Properties définit les propriétés système de l'objet blob.

Requête

La demande Set Blob Properties peut être construite comme indiqué ci-dessous. Nous vous recommandons d’utiliser HTTPS. Remplacez moncompte par le nom de votre compte de stockage :

URI de requête de méthode PUT Version HTTP
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=properties HTTP/1.1

URI du service de stockage émulé

Lorsque vous effectuez une demande auprès du service de stockage émulé, spécifiez le nom d’hôte de l’émulateur et le port de stockage Blob en tant que 127.0.0.1:10000, suivis du nom du compte de stockage émulé :

URI de requête de méthode PUT Version HTTP
http://127.0.0.1:10000/ devstoreaccount1/mycontainer/myblob?comp=properties HTTP/1.1

Pour plus d’informations, consultez Utiliser l’émulateur Azurite à des fins de développement local pour Stockage Azure.

Paramètres URI

Vous pouvez spécifier les paramètres supplémentaires suivants dans l’URI de requête :

Paramètre Description
timeout facultatif. Le paramètre timeout est exprimé en secondes. Pour plus d’informations, consultez Définir des délais d’attente pour les opérations de stockage Blob.

En-têtes de requête (tous les types d’objets blob)

Le tableau suivant décrit les en-têtes de requête obligatoires et facultatifs pour tous les types d’objets blob.

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. Spécifie la version de l'opération à utiliser pour cette demande. Pour plus d'informations, consultez la page Contrôle de version pour les services de Stockage Microsoft Azure.
x-ms-blob-cache-control facultatif. Modifie la chaîne de contrôle du cache pour l'objet blob.

Si cette propriété n’est pas spécifiée dans la demande, la propriété est effacée pour l’objet blob. Les appels suivants à Obtenir les propriétés de l’objet blob ne retournent pas cette propriété, sauf si elle est explicitement définie sur l’objet blob à nouveau.
x-ms-blob-content-type facultatif. Définit le type de contenu de l'objet blob.

Si cette propriété n’est pas spécifiée dans la demande, la propriété est effacée pour l’objet blob. Les appels suivants à Obtenir les propriétés de l’objet blob ne retournent pas cette propriété, sauf si elle est explicitement définie sur l’objet blob à nouveau.
x-ms-blob-content-md5 facultatif. Définit le hachage MD5 de l'objet blob.

Si cette propriété n’est pas spécifiée dans la demande, la propriété est effacée pour l’objet blob. Les appels suivants à Obtenir les propriétés de l’objet blob ne retournent pas cette propriété, sauf si elle est explicitement définie sur l’objet blob à nouveau.
x-ms-blob-content-encoding facultatif. Définit l'encodage du contenu de l'objet blob.

Si cette propriété n’est pas spécifiée dans la demande, la propriété est effacée pour l’objet blob. Les appels suivants à Obtenir les propriétés de l’objet blob ne retournent pas cette propriété, sauf si elle est explicitement définie sur l’objet blob à nouveau.
x-ms-blob-content-language facultatif. Définit la langue du contenu de l'objet blob.

Si cette propriété n’est pas spécifiée dans la demande, la propriété est effacée pour l’objet blob. Les appels suivants à Obtenir les propriétés de l’objet blob ne retournent pas cette propriété, sauf si elle est explicitement définie sur l’objet blob à nouveau.
x-ms-lease-id:<ID> Obligatoire si l'objet blob a un bail actif. 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.
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) enregistrée dans les journaux lors de la configuration de la journalisation. Nous vous recommandons vivement d’utiliser cet en-tête pour mettre en corrélation les activités côté client avec les demandes que le serveur reçoit. Pour plus d’informations, consultez Surveiller Stockage Blob Azure.
x-ms-blob-content-disposition facultatif. Définit l'en-tête Content-Disposition de l'objet blob. Disponible pour la version 2013-08-15 et ultérieure.

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 elle est définie sur attachment, cela indique que l’agent utilisateur ne doit pas afficher la réponse, mais afficher à la place une boîte de dialogue Enregistrer sous avec un nom de fichier autre que le nom d’objet blob spécifié.

La réponse des opérations Get Blob et Get Blob Properties inclut l’en-tête content-disposition .
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 dans la réponse. Pour plus d’informations, consultez Prise en charge de CORS (partage de ressources inter-origines) pour les services de stockage Azure.

Cette opération prend uniquement en charge l'utilisation d'en-têtes conditionnels pour définir les propriétés de l'objet blob uniquement si une condition spécifique 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 (objets blob de pages uniquement)

Le tableau suivant décrit les en-têtes de requête qui s’appliquent uniquement aux opérations sur les objets blob de pages :

En-tête de requête Description
x-ms-blob-content-length: byte value facultatif. Redimensionne un objet blob de pages à la taille spécifiée. Si la valeur spécifiée est inférieure à la taille actuelle de l’objet blob, tous les objets blob de pages dont les valeurs sont supérieures à la valeur spécifiée sont effacés.

Cette propriété ne peut pas être utilisée pour modifier la taille d’un objet blob de blocs ou d’un objet blob d’ajout. La définition de cette propriété pour un objet blob de blocs ou un objet blob d’ajout renvoie status code 400 (requête incorrecte).
x-ms-sequence-number-action: {max, update, increment} Facultatif, mais requis si l'en-tête x-ms-blob-sequence-number est défini pour la demande. Cette propriété s'applique uniquement aux objets blob de pages.

Cette propriété indique comment le service doit modifier le numéro séquentiel de l'objet blob. Indiquez l'une des options suivantes pour cette propriété :

- max: définit le numéro de séquence comme étant le plus élevé de la valeur incluse dans la requête et de la valeur actuellement stockée pour l’objet blob.
- update: définit le numéro de séquence sur la valeur incluse dans la demande.
- increment: incrémente la valeur du numéro de séquence de 1. Si vous spécifiez cette option, n’incluez pas .x-ms-blob-sequence-number header Cela renvoie status code 400 (requête incorrecte).
x-ms-blob-sequence-number: <num> Facultatif, mais requis si la propriété x-ms-sequence-number-action est définie à max ou à update. Cette propriété s'applique uniquement aux objets blob de pages.

La propriété définit le numéro de séquence de l’objet blob. Le numéro de séquence est une propriété contrôlée par l'utilisateur que vous pouvez utiliser pour suivre les demandes et gérer les problèmes d'accès concurrentiel. Pour plus d’informations, consultez l’opération Put Page .

Utilisez cette propriété avec x-ms-sequence-number-action pour mettre à jour le numéro de séquence de l’objet blob vers la valeur spécifiée ou la valeur la plus élevée des valeurs spécifiées avec la requête ou actuellement stockées avec l’objet blob. Cet en-tête ne doit pas être spécifié si x-ms-sequence-number-action a la valeur increment, auquel cas le service incrémente automatiquement le numéro de séquence d’un.

Pour définir le numéro de séquence à une valeur de votre choix, cette propriété doit être spécifiée dans la demande avec x-ms-sequence-number-action.

Corps de la demande

Aucun.

response

La réponse inclut un code d'état HTTP et un ensemble d'en-têtes de réponse.

Code d’état

Une opération réussie envoie le code d'état 200 (OK).

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
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.
Last-Modified Date et heure de la dernière modification apportée à l'objet blob. Le format de date est conforme à la RFC 1123. Pour plus d’informations, consultez Représenter des valeurs de date/heure dans les en-têtes.

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.
x-ms-blob-sequence-number Si l'objet blob est un objet blob de pages, le numéro de séquence actuel de l'objet blob est retourné avec cet en-tête.
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. Cet en-tête est retourné pour les demandes effectuées sur la version 2009-09-19 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. S’il existe une correspondance, cet en-tête retourne la valeur de l’en-tête de demande d’origine.
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.
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. L’en-tête est défini sur true.
x-ms-client-request-id Peut être utilisé pour résoudre les problèmes liés aux demandes et aux 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, il ne sera pas présent dans la réponse.

Response body

Aucun.

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 Set Blob Properties comme décrit ci-dessous.

Le 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 ou un principal de service Microsoft Entra appelle l’opérationSet Blob Properties, ainsi que le rôle RBAC intégré Azure 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 accéder aux données blob.

Remarques

La sémantique de mise à jour des propriétés d'un objet blob est la suivante :

  • Le numéro de séquence d'un objet blob de pages est mis à jour uniquement si la demande remplit l'une des conditions suivantes :

    • La requête définit la x-ms-sequence-number-action valeur max ou update, et spécifie une valeur pour l’en-tête x-ms-blob-sequence-number .

    • La requête définit sur x-ms-sequence-number-actionincrement, ce qui indique que le service doit incrémenter le numéro de séquence d’un.

  • La taille d'un objet blob de pages est modifiée uniquement si la demande spécifie une valeur pour l'en-tête x-ms-content-length.

  • Pour modifier la taille d’un objet blob de pages dans un compte de stockage Premium, la nouvelle taille ne doit pas dépasser la longueur de contenu autorisée par le niveau existant. Appelez Définir le niveau de l’objet blob avant de redimensionner l’objet blob. Pour obtenir la liste des niveaux et la longueur du contenu autorisé, consultez Stockage Premium hautes performances et disques managés pour les machines virtuelles.

  • Si une requête définit uniquement x-ms-blob-sequence-number ou x-ms-content-length, aucune des autres propriétés de l’objet blob n’est modifiée.

  • Si une ou plusieurs des propriétés suivantes sont définies dans la requête, toutes les propriétés sont définies ensemble. Si aucune valeur n’est fournie pour une propriété quand au moins l’une d’entre elles est définie, cette propriété est effacée pour l’objet blob.

    • x-ms-blob-cache-control
    • x-ms-blob-content-type
    • x-ms-blob-content-md5
    • x-ms-blob-content-encoding
    • x-ms-blob-content-language
    • x-ms-blob-content-disposition

Notes

Pour une signature d’accès partagé (SAP), vous pouvez remplacer certaines propriétés stockées pour l’objet blob en spécifiant des paramètres de requête dans le cadre de la signature d’accès partagé. Ces propriétés incluent cache-control, content-type, content-encoding, content-language et content-disposition. Pour plus d’informations, consultez Créer une SAP de service.

Facturation

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

Opération Type de compte de stockage Catégorie de facturation
Set Blob Properties Objet blob de blocs Premium
Usage général v2 Standard
Autres opérations
Set Blob Properties Usage général v1 standard Opérations d’écriture

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

Voir aussi