Récupérer les métadonnées d'un objet dans StorageGRID avec la requête S3 HeadObject
Vous pouvez utiliser la requête S3 HeadObject pour récupérer les métadonnées d'un objet sans renvoyer l'objet lui-même. Si l'objet est stocké dans un Cloud Storage Pool, vous pouvez utiliser HeadObject pour déterminer l'état de transition de l'objet.
HeadObject et objets multipart
Vous pouvez utiliser le `partNumber`paramètre de requête pour récupérer les métadonnées d'une partie spécifique d'un objet multipart ou segmenté. L' `x-amz-mp-parts-count`élément de réponse indique combien de parties l'objet possède.
Vous pouvez définir partNumber à 1 pour les objets segmentés/multipart et les objets non segmentés/non multipart ; cependant, l’élément de réponse x-amz-mp-parts-count n’est renvoyé que pour les objets segmentés ou multipart.
Caractères UTF-8 dans les métadonnées utilisateur
StorageGRID n'analyse ni n'interprète les caractères UTF-8 échappés dans les métadonnées définies par l'utilisateur. Les requêtes HEAD concernant un objet dont les métadonnées définies par l'utilisateur contiennent des caractères UTF-8 échappés ne renvoient pas l'en-tête x-amz-missing-meta si le nom ou la valeur de la clé inclut des caractères non imprimables.
En-tête de requête pris en charge
L'en-tête de requête suivant est pris en charge :
-
x-amz-checksum-modeLe
partNumber`paramètre et `Range`l'en-tête ne sont pas pris en charge avec `x-amz-checksum-modepour HeadObject. Lorsque vous les incluez dans la requête avecx-amz-checksum-modeactivé, StorageGRID ne renvoie pas de valeur de somme de contrôle dans la réponse.
En-tête de requête non pris en charge
L'en-tête de requête suivant n'est pas pris en charge et renvoie XNotImplemented :
-
x-amz-website-redirect-location
Versionnage
Si aucune versionId sous-ressource n'est spécifiée, l'opération récupère la version la plus récente de l'objet dans un compartiment versionné. Si la version actuelle de l'objet est un marqueur de suppression, un statut « Not Found » est renvoyé avec l' x-amz-delete-marker en-tête de réponse défini sur true.
En-têtes de requête pour le chiffrement côté serveur avec des clés de chiffrement fournies par le client (SSE-C)
Utilisez ces trois en-têtes si l'objet est chiffré avec une clé unique que vous avez fournie.
-
x-amz-server-side-encryption-customer-algorithm: PrécisezAES256. -
x-amz-server-side-encryption-customer-key: Spécifiez votre clé de chiffrement pour l'objet. -
x-amz-server-side-encryption-customer-key-MD5: Spécifiez le condensé MD5 de la clé de chiffrement de l'objet.
|
|
Les clés de chiffrement que vous fournissez ne sont jamais stockées. Si vous perdez une clé de chiffrement, vous perdez l'objet correspondant. Avant d'utiliser des clés fournies par le client pour sécuriser les données d'objet, examinez les considérations dans "Utilisez le chiffrement côté serveur". |
HeadObject réponses pour les objets Cloud Storage Pool
Si l'objet est stocké dans un "Pool de stockage cloud", les en-têtes de réponse suivants sont renvoyés :
-
x-amz-storage-class: GLACIER -
x-amz-restore
Les en-têtes de réponse fournissent des informations sur l'état d'un objet lorsqu'il est déplacé vers un Cloud Storage Pool, éventuellement transféré vers un état non récupérable, puis restauré.
| État de l'objet | Réponse à HeadObject |
|---|---|
Objet ingéré dans StorageGRID mais pas encore évalué par ILM, ou objet stocké dans un pool de stockage traditionnel ou utilisant le code d'effacement |
|
Objet présent dans le pool de stockage cloud mais n'ayant pas encore été transféré dans un état non récupérable |
Jusqu'à ce que l'objet soit passé à un état non récupérable, la valeur pour |
L'objet est passé à un état non récupérable, mais au moins une copie existe également sur la grille |
La valeur de Remarque : Si la copie sur la grille n’est pas disponible (par exemple, si un nœud de stockage est hors service), vous devez émettre une demande "RestoreObject" pour restaurer la copie à partir du Cloud Storage Pool avant de pouvoir récupérer l’objet. |
L'objet est passé à un état irrécupérable et aucune copie n'existe sur la grille |
|
Objet en cours de restauration à partir d'un état non récupérable |
|
Objet entièrement restauré dans le Cloud Storage Pool |
Le |
Objets multipartites ou segmentés dans le Cloud Storage Pool
Si vous avez importé un objet multipart ou si StorageGRID a divisé un objet volumineux en segments, StorageGRID détermine si l'objet est disponible dans le Cloud Storage Pool en échantillonnant un sous-ensemble des parties ou segments de l'objet. Dans certains cas, une requête HeadObject peut renvoyer x-amz-restore: ongoing-request="false" de façon incorrecte lorsque certaines parties de l'objet ont déjà été transférées dans un état non récupérable ou lorsque certaines parties de l'objet n'ont pas encore été restaurées.
HeadObject et réplication inter-grilles
Si vous utilisez "fédération de grid" et "réplication inter-grilles" est activé pour un compartiment, le client S3 peut vérifier l'état de réplication d'un objet en envoyant une requête HeadObject. La réponse inclut l'en-tête de réponse spécifique à StorageGRID x-ntap-sg-cgr-replication-status, qui aura l'une des valeurs suivantes :
| Grid | État de la réplication |
|---|---|
Source |
|
Destination |
REPLICA : L’objet a été répliqué à partir de la grille source. |
|
|
StorageGRID ne prend pas en charge l' `x-amz-replication-status`en-tête. |