Définir l’expiration de l’objet blob

L’opération Set Blob Expiry définit une date d’expiration sur un objet blob existant. Cette opération est autorisée uniquement sur les comptes hiérarchiques avec espace de noms. S’applique au service 2020-02-10 et versions ultérieures.

Requête

La demande Set Blob Expiry 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=expiry 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=expiry 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

Les en-têtes de requête obligatoires et facultatifs sont décrits dans le tableau suivant :

En-tête de requête Description
Authorization Obligatoire. Spécifie le schéma d'authentification, le nom du compte et la signature. Pour plus d’informations, consultez Authentification pour les services de 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 Authentification pour les services de stockage Azure.
x-ms-version Obligatoire pour toutes les demandes authentifié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-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-expiry-option Obligatoire. Pour spécifier l’option de date d’expiration de la demande, consultez ExpiryOption.
x-ms-expiry-time facultatif. Heure à laquelle le fichier est défini pour expirer. Le format de la date d’expiration varie en fonction de x-ms-expiry-option. Pour plus d’informations, consultez ExpiryOption.
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.

ExpiryOption

Vous pouvez envoyer les valeurs suivantes en tant qu’en-tête x-ms-expiry-option . Cet en-tête ne respecte pas la casse.

Option d’expiration Description
RelativeToCreation Définit la date d’expiration par rapport à l’heure de création du fichier. x-ms-expiry-time doit être spécifié comme le nombre de millisecondes à écouler à partir du moment de la création.
RelativeToNow Définit la date d’expiration par rapport à l’heure actuelle. x-ms-expiry-time doit être spécifié comme le nombre de millisecondes à écouler à partir de l’heure actuelle.
Absolute x-ms-expiry-time doit être spécifié comme heure absolue, au format RFC 1123.
NeverExpire Définit le fichier pour qu’il n’expire jamais ou supprime la date d’expiration actuelle. x-ms-expiry-time ne doit pas être spécifié.

Corps de la demande

Le corps de la demande est vide.

Exemple de requête

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=expiry HTTP/1.1  
  
Request Headers:  
x-ms-version: 2020-02-10  
x-ms-date: Sun, 25 Sep 2020 14:37:35 GMT
x-ms-expiry-option: RelativeTonow
x-ms-expiry-time: 30000  
Authorization: SharedKey myaccount:J4ma1VuFnlJ7yfk/Gu1GxzbfdJloYmBPWlfhZ/xn7GI=    

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.

En-tête de réponse Description
ETag Contient une valeur qui représente la version du fichier. La valeur est placée entre guillemets.
Last-Modified Retourne la date et l’heure de la dernière modification du répertoire. 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. N'importe quelle opération qui modifie le répertoire ou ses propriétés entraîne la mise à jour de l'heure de la dernière modification. Les opérations sur les fichiers n’affectent pas l’heure de la dernière modification du répertoire.
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.
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.

Exemple de réponse

Response Status:  
HTTP/1.1 200 OK  
  
Response Headers:  
Date: Sun, 25 Sep 2011 23:47:09 GMT  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  

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 Expiry 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 Expiry, 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

La sémantique permettant de définir une date d’expiration sur un objet blob est la suivante :

  • Set Expiry ne peut être défini que sur un fichier et non sur un répertoire.
  • Set Expiry avec un expiryTime dans le passé n’est pas autorisé.
  • ExpiryTimene peut pas être spécifié avec la expiryOption valeur .Never

Notes

Un fichier expiré ne peut pas être restauré à l’aide de la fonctionnalité de suppression réversible d’objet blob. Même si vous avez activé la suppression réversible pour le compte, un fichier expiré ne devient pas un objet blob supprimé de manière réversible à l’expiration. Seuls les fichiers supprimés peuvent devenir des fichiers supprimés de manière réversible.

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 Set Blob Expiry les demandes en fonction du type de compte de stockage :

Opération Type de compte de stockage Catégorie de facturation
Définir l’expiration des objets blob Objet blob de blocs Premium
Usage général v2 Standard
Autres opérations
Définir l’expiration des objets blob 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 Stockage Blob Azure Tarification.

Voir aussi