L'opération GetBucketInventory interroge la configuration d'inventaire spécifiée pour un compartiment.
Notes d'utilisation
Par défaut, un compte Alibaba Cloud est autorisé à consulter la configuration d'inventaire spécifiée d'un compartiment. Pour appeler cette opération en tant qu'utilisateur RAM (Resource Access Management) ou via le service STS (Security Token Service), vous devez disposer de l'autorisation oss:GetBucketInventory.
Syntaxe de la requête
GET /?inventory&inventoryId=inventoryId HTTP/1.1
Paramètres de la requête
| Paramètre | Type | Obligatoire | Description |
inventoryId |
string | Oui | ID de la règle d'inventaire à interroger. |
Éléments de la réponse
Le tableau suivant décrit les éléments renvoyés dans la réponse. Certains éléments s'appliquent uniquement à des configurations d'inventaire spécifiques. Par exemple, DayOfMonth s'applique uniquement lorsque Frequency est défini sur Monthly, et AutoDelete s'applique uniquement lorsque Frequency est défini sur Once. Les éléments spécifiques aux inventaires incrémentiels sont décrits dans la sous-section suivante.
| Élément | Type | Description |
Id |
string | Nom spécifié par l'utilisateur pour l'inventaire. Le nom doit être unique au sein du compartiment. |
IsEnabled |
boolean | Indique si l'inventaire est activé. Valeurs possibles : true et false. Si la valeur est true, la fonctionnalité d'inventaire prend effet. Si la valeur est false, aucun inventaire n'est généré. |
Filter |
container | Préfixe utilisé pour filtrer l'inventaire. Si un préfixe est spécifié, l'inventaire inclut uniquement les objets dont les noms correspondent au préfixe. |
Prefix |
string | Préfixe correspondant de la règle de filtrage. Nœud parent : Filter |
Destination |
container | Informations relatives à l'emplacement de stockage des résultats de l'inventaire. |
OSSBucketDestination |
container | Informations relatives au compartiment où sont stockés les résultats de l'inventaire exportés. Nœud parent : Destination |
Format |
string | Format du fichier d'inventaire exporté. Valeurs possibles : CSV et Parquet. Le format Parquet est actuellement pris en charge uniquement dans la région Royaume-Uni (Londres). Nœud parent : OSSBucketDestination |
AccountId |
string | ID du compte accordé par le propriétaire du compartiment. Nœud parent : OSSBucketDestination |
RoleArn |
string | Nom du rôle accordé par le propriétaire du compartiment pour les autorisations d'opération. Format : acs:ram::uid:role/rolename Nœud parent : OSSBucketDestination |
Bucket |
string | Compartiment dans lequel le fichier d'inventaire exporté est stocké. Nœud parent : OSSBucketDestination |
Prefix |
string | Préfixe du chemin de stockage du fichier d'inventaire. Nœud parent : OSSBucketDestination |
Encryption |
container | Méthode de chiffrement du fichier d'inventaire. Valeurs possibles : SSE-OSS et SSE-KMS. Si le fichier d'inventaire n'est pas chiffré, cet élément est vide. Nœud parent : OSSBucketDestination |
SSE-OSS |
container | Conteneur pour la méthode de chiffrement SSE-OSS. Nœud parent : Encryption |
SSE-KMS |
container | Conteneur pour la clé utilisée dans la méthode de chiffrement SSE-KMS. Nœud parent : Encryption |
KeyId |
string | ID de la clé KMS. Nœud parent : SSE-KMS |
Schedule |
container | Conteneur pour les informations de planification de l'exportation de l'inventaire. |
Frequency |
string | Planification de l'exportation du fichier d'inventaire. Valeurs possibles : Daily, Weekly, Monthly et Once. Nœud parent : Schedule |
DayOfMonth |
positive integer | Jour du mois auquel l'inventaire est exporté. Cet élément s'applique uniquement lorsque Frequency est défini sur Monthly. Valeurs possibles : 1 à 31. Nœud parent : Schedule |
AutoDelete |
boolean | Indique si la configuration d'inventaire est automatiquement supprimée après l'exécution unique de l'inventaire. Cet élément est présent uniquement lorsque Frequency est défini sur Once. Valeurs possibles : true et false. Nœud parent : Schedule |
IncludedObjectVersions |
string | Indique s'il faut inclure les informations de version des objets dans l'inventaire. Valeurs possibles : All et Current. Si la valeur est All, les informations de version de toutes les versions de l'objet sont exportées. Si la valeur est Current, les informations de version de la version actuelle de l'objet sont exportées. |
OptionalFields |
container | Éléments de configuration à inclure dans les résultats de l'inventaire. |
Field |
string | Éléments de configuration inclus dans les résultats de l'inventaire. Éléments de configuration facultatifs : Size, LastModifiedDate, TransitionTime, ETag, StorageClass, IsMultipartUploaded, EncryptionStatus, ObjectAcl, TaggingCount, ObjectType et Crc64. Nœud parent : OptionalFields |
Éléments d'inventaire incrémentiel
Le tableau suivant décrit les éléments spécifiques aux inventaires incrémentiels.
| Élément | Type | Description |
IncrementalInventory |
container | Informations de configuration de l'inventaire incrémentiel. |
IsEnabled |
boolean | Indique s'il faut activer l'inventaire incrémentiel. Valeurs possibles : true (activé) et false (désactivé). Lorsque la valeur est true, la fonctionnalité d'inventaire incrémentiel est activée et n'est pas affectée par la définition de l'élément parent sur false. Nœud parent : IncrementalInventory |
Schedule |
container | Planification de l'exportation de l'inventaire incrémentiel. Nœud parent : IncrementalInventory |
Frequency |
positive integer | Fréquence d'exportation de l'inventaire incrémentiel, en secondes. Le système utilise actuellement une période fixe de 600 secondes. Au cours de chaque période, le système crée automatiquement un préfixe de répertoire et génère le fichier manifeste correspondant ainsi que plusieurs fichiers CSV produits durant cette période. La personnalisation des paramètres de fréquence n'est pas prise en charge. Nœud parent : Schedule |
OptionalFields |
container | Éléments de configuration à inclure dans l'inventaire incrémentiel. Nœud parent : IncrementalInventory |
Field |
string | Éléments de configuration inclus dans l'inventaire incrémentiel. Nœud parent : OptionalFields |
Champs d'enregistrement de l'inventaire incrémentiel
Les champs suivants décrivent les enregistrements présents dans un fichier d'inventaire incrémentiel :
SequenceNumber: numéro de série de l'enregistrement. LeSequenceNumberde chaque enregistrement est unique. Les enregistrements d'un même objet dans un même compartiment peuvent être triés parSequenceNumber; les enregistrements triés suivent généralement l'ordre chronologique.-
RecordType: type d'événement. Valeurs possibles :CREATE: toutes les opérations de téléchargement effectuées sous le préfixe sélectionné, telles quePut,Post,Append,MultipartUploadetCopy.UPDATE_METADATA: toutes les mises à jour de métadonnées sous le préfixe sélectionné.DELETE: toutes les opérations de suppression d'objets sous le préfixe sélectionné, telles queDeleteObjectetDeleteMultipleObjects, la génération d'un marqueur de suppression après l'activation du versioning et la suppression basée sur le cycle de vie. Les suppressions incluent la création d'un marqueur de suppression et la suppression définitive. Pour une suppression définitive, l'enregistrement ne conserve que les champs principauxBucket,Key,SequenceNumber,RecordType,RecordTimestampetVersionId; toutes les autres colonnes sont nulles.
RecordTimestamp: horodatage de l'enregistrement, exprimé en temps universel coordonné (UTC) et précis à la milliseconde près. Exemple :2024-08-25 18:08:01.024.Requester: ID Alibaba Cloud ou ID principal du demandeur.RequestId: identifiant unique de la requête.SourceIp: adresse IP source du demandeur.Key: nom encodé en URL de l'objet dans le compartiment.-
VersionId: ID de version de l'objet. Ce champ apparaît uniquement lorsque la règle d'inventaire configurée exporte toutes les versions.Si le versioning n'est pas activé sur le compartiment pour lequel la règle d'inventaire est configurée, ce champ est vide.
Si le versioning est activé sur le compartiment pour lequel la règle d'inventaire est configurée, ce champ affiche le
VersionIdde l'objet.
-
IsDeleteMarker: indique si la version de l'objet est un marqueur de suppression. Ce champ apparaît uniquement lorsque la règle d'inventaire configurée exporte toutes les versions.Si le versioning n'est pas activé sur le compartiment pour lequel la règle d'inventaire est configurée, ce champ prend par défaut la valeur
false.Si le versioning est activé sur le compartiment pour lequel la règle d'inventaire est configurée, ce champ prend la valeur
truelorsque l'objet est un marqueur de suppression, etfalselorsque l'objet n'est pas un marqueur de suppression.
Size: taille de l'objet.StorageClass: classe de stockage de l'objet.LastModifiedDate: date de dernière modification de l'objet.-
ETag: ETag de l'objet. Un ETag est créé lors de la génération de l'objet et identifie son contenu.Pour un objet créé à l'aide de l'opération PutObject, l'ETag correspond au hachage MD5 de son contenu.
Pour un objet créé à l'aide d'autres méthodes, l'ETag est une valeur unique générée selon certaines règles de calcul et ne correspond pas au hachage MD5 de son contenu.
IsMultipartUploaded: indique si l'objet a été téléchargé via un téléchargement multipartie.ObjectType: type de l'objet.ObjectAcl: liste de contrôle d'accès de l'objet.Crc64: valeur CRC-64 de l'objet.EncryptionStatus: indique si l'objet est chiffré.
Exemples
Exemple de requête
GET /?inventory&inventoryId=report1 HTTP/1.1
Exemple de réponse
HTTP/1.1 200 OK
x-oss-request-id: 56594298207FB304438516F9
Date: Mon, 31 Oct 2016 12:00:00 GMT
Server: AliyunOSS
Content-Length: length
<?xml version="1.0" encoding="UTF-8"?>
<InventoryConfiguration>
<Id>report1</Id>
<IsEnabled>true</IsEnabled>
<Destination>
<OSSBucketDestination>
<Format>CSV</Format>
<AccountId>1000000000000000</AccountId>
<RoleArn>acs:ram::1000000000000000:role/AliyunOSSRole</RoleArn>
<Bucket>acs:oss:::bucket_0001</Bucket>
<Prefix>prefix1</Prefix>
<Encryption>
<SSE-OSS/>
</Encryption>
</OSSBucketDestination>
</Destination>
<Schedule>
<Frequency>Daily</Frequency>
</Schedule>
<Filter>
<Prefix>myprefix/</Prefix>
</Filter>
<IncludedObjectVersions>All</IncludedObjectVersions>
<OptionalFields>
<Field>Size</Field>
<Field>LastModifiedDate</Field>
<Field>ETag</Field>
<Field>StorageClass</Field>
<Field>IsMultipartUploaded</Field>
<Field>EncryptionStatus</Field>
</OptionalFields>
</InventoryConfiguration>
SDK
Les SDK suivants prennent en charge cette opération :
CLI ossutil
Pour la commande ossutil correspondant à l'opération GetBucketInventory, consultez get-bucket-inventory.