Configura um inventário para um bucket.
Notas de uso
Apenas o proprietário do bucket e usuários RAM que têm a permissão
oss:PutBucketInventorypodem configurar inventários para o bucket.Antes de configurar um inventário, verifique se existe uma função RAM autorizada a acessar todos os objetos do bucket para o qual deseja configurar o inventário e a gravar dados no bucket onde as listas de inventário serão armazenadas. Se for a primeira vez que usa o recurso de inventário de bucket, recomendamos que você configure um inventário no console do Object Storage Service (OSS). Após configurar o inventário, você pode obter a função RAM com as permissões necessárias para executar todas as operações nos recursos do OSS. Para mais informações sobre as permissões da função RAM exigidas para configurar inventários, consulte Bucket inventory.
É possível configurar até 1.000 inventários por bucket.
O bucket onde as listas de inventário serão armazenadas deve estar na mesma região do bucket para o qual o inventário está sendo configurado.
Sintaxe do comando
ossutil api put-bucket-inventory --bucket value --inventory-id value --inventory-configuration value [flags]
|
Parâmetro |
Tipo |
Descrição |
|
--bucket |
string |
O nome do bucket. |
|
--inventory-configuration |
string |
O contêiner que armazena as informações de configuração do inventário. |
|
--inventory-id |
string |
O ID do inventário. |
O comando put-bucket-inventory é equivalente à operação de API PutBucketInventory. Para mais informações sobre a operação de API, consulte PutBucketInventory.
--inventory-configuration
O parâmetro --inventory-configuration aceita os formatos XML e JSON. Se o valor do parâmetro começar com "file://", as configurações serão carregadas a partir do arquivo especificado.
-
Formato XML:
<InventoryConfiguration> <Id>string</Id> <IsEnabled>boolean</IsEnabled> <Destination> <OSSBucketDestination> <Bucket>string</Bucket> <Prefix>string</Prefix> <Encryption> <SSE-OSS> </SSE-OSS> <SSE-KMS> <KeyId>string</KeyId> </SSE-KMS> </Encryption> <Format>string</Format> <AccountId>string</AccountId> <RoleArn>string</RoleArn> </OSSBucketDestination> </Destination> <Schedule> <Frequency>string</Frequency> </Schedule> <Filter> <Prefix>string</Prefix> </Filter> <IncludedObjectVersions>string</IncludedObjectVersions> <OptionalFields> <Field>string</Field> ... </OptionalFields> </InventoryConfiguration> -
Formato JSON:
[ { "IsEnabled": boolean, "Destination": { "OSSBucketDestination": { "Format": "string", "AccountId": "string", "RoleArn": "string", "Bucket": "string", "Prefix": "string", "Encryption": { "SSE-OSS": { }, "SSE-KMS": { "KeyId": "string" } } } }, "Schedule": { "Frequency": "string" }, "Filter": { "Prefix": "string" }, "IncludedObjectVersions": "string", "OptionalFields": { "Field": [ "string", ... ] }, "Id": "string" }, ... ]
Para mais informações sobre as opções globais de linha de comando disponíveis, consulte Command-line options.
Exemplos
Configure um inventário chamado report1 para um bucket chamado examplebucket.
-
Usar um arquivo de configuração XML (inventory-configuration.xml neste exemplo)
<?xml version="1.0" encoding="UTF-8"?> <InventoryConfiguration> <Id>report1</Id> <IsEnabled>true</IsEnabled> <Filter> <Prefix>Pics/</Prefix> <LastModifyBeginTimeStamp>1637883649</LastModifyBeginTimeStamp> <LastModifyEndTimeStamp>1638347592</LastModifyEndTimeStamp> <LowerSizeBound>1024</LowerSizeBound> <UpperSizeBound>1048576</UpperSizeBound> <StorageClass>Standard,IA</StorageClass> </Filter> <Destination> <OSSBucketDestination> <Format>CSV</Format> <AccountId>100000000000000</AccountId> <RoleArn>acs:ram::100000000000000:role/AliyunOSSRole</RoleArn> <Bucket>acs:oss:::destbucket</Bucket> <Prefix>prefix1/</Prefix> <Encryption> <SSE-KMS> <KeyId>keyId</KeyId> </SSE-KMS> </Encryption> </OSSBucketDestination> </Destination> <Schedule> <Frequency>Daily</Frequency> </Schedule> <IncludedObjectVersions>All</IncludedObjectVersions> <OptionalFields> <Field>Size</Field> <Field>LastModifiedDate</Field> <Field>ETag</Field> <Field>StorageClass</Field> <Field>IsMultipartUploaded</Field> <Field>EncryptionStatus</Field> </OptionalFields> </InventoryConfiguration>
Exemplo de comando:
ossutil api put-bucket-inventory --bucket examplebucket --inventory-id report1 --inventory-configuration file://inventory-configuration.xml
-
Usar um arquivo de configuração JSON (inventory-configuration.json neste exemplo)
{ "Id": "report1", "IsEnabled": "true", "Filter": { "Prefix": "Pics/", "LastModifyBeginTimeStamp": "1637883649", "LastModifyEndTimeStamp": "1638347592", "LowerSizeBound": "1024", "UpperSizeBound": "1048576", "StorageClass": "Standard,IA" }, "Destination": { "OSSBucketDestination": { "Format": "CSV", "AccountId": "100000000000000", "RoleArn": "acs:ram::100000000000000:role/AliyunOSSRole", "Bucket": "acs:oss:::destbucket", "Prefix": "prefix1/", "Encryption": { "SSE-KMS": { "KeyId": "keyId" } } } }, "Schedule": { "Frequency": "Daily" }, "IncludedObjectVersions": "All", "OptionalFields": { "Field": [ "Size", "LastModifiedDate", "ETag", "StorageClass", "IsMultipartUploaded", "EncryptionStatus" ] } }Exemplo de comando:
ossutil api put-bucket-inventory --bucket examplebucket --inventory-id report1 --inventory-configuration file://inventory-configuration.json -
Usar parâmetros JSON diretamente na linha de comando
ossutil api put-bucket-inventory --bucket examplebucket --inventory-id report1 --inventory-configuration "{\"Id\":\"report1\",\"IsEnabled\":\"true\",\"Filter\":{\"Prefix\":\"Pics/\",\"LastModifyBeginTimeStamp\":\"1637883649\",\"LastModifyEndTimeStamp\":\"1638347592\",\"LowerSizeBound\":\"1024\",\"UpperSizeBound\":\"1048576\",\"StorageClass\":\"Standard,IA\"},\"Destination\":{\"OSSBucketDestination\":{\"Format\":\"CSV\",\"AccountId\":\"100000000000000\",\"RoleArn\":\"acs:ram::100000000000000:role/AliyunOSSRole\",\"Bucket\":\"acs:oss:::destbucket\",\"Prefix\":\"prefix1/\",\"Encryption\":{\"SSE-KMS\":{\"KeyId\":\"keyId\"}}}},\"Schedule\":{\"Frequency\":\"Daily\"},\"IncludedObjectVersions\":\"All\",\"OptionalFields\":{\"Field\":[\"Size\",\"LastModifiedDate\",\"ETag\",\"StorageClass\",\"IsMultipartUploaded\",\"EncryptionStatus\"]}}"