Mengonfigurasi inventaris untuk sebuah bucket.
Catatan penggunaan
Hanya Pemilik bucket atau pengguna Resource Access Management (RAM) dengan izin
oss:PutBucketInventoryyang dapat mengonfigurasi aturan inventaris.Sebelum mengonfigurasi inventaris, pastikan Anda memiliki RAM role yang diizinkan untuk mengakses semua objek dalam bucket tempat Anda ingin mengonfigurasi inventaris dan menulis data ke bucket tempat Anda ingin menyimpan daftar inventaris. Jika Anda menggunakan fitur bucket inventory untuk pertama kalinya, kami menyarankan agar Anda mengonfigurasi inventaris melalui Konsol Object Storage Service (OSS). Setelah inventaris dikonfigurasi, Anda dapat memperoleh RAM role yang memiliki izin untuk melakukan semua operasi pada resource OSS. Untuk informasi selengkapnya tentang izin RAM role yang diperlukan untuk mengonfigurasi inventaris, lihat Bucket inventory.
Anda dapat mengonfigurasi hingga 1.000 aturan inventaris untuk satu bucket.
Bucket tempat Anda ingin menyimpan daftar inventaris harus berada di wilayah yang sama dengan bucket tempat Anda ingin mengonfigurasi inventaris.
Untuk menggunakan fitur incremental inventory, hubungi Technical Support untuk meminta akses. Fitur ini saat ini hanya tersedia di wilayah Meksiko.
Sintaks perintah
ossutil api put-bucket-inventory --bucket value --inventory-id value --inventory-configuration value [flags]Parameter | Tipe | Deskripsi |
--bucket | string | Nama bucket. |
--inventory-configuration | string | Informasi konfigurasi untuk daftar periksa penyimpanan. |
--inventory-id | string | ID dari Tugas daftar periksa. |
Perintah put-bucket-inventory setara dengan operasi API PutBucketInventory. Untuk informasi selengkapnya, lihat PutBucketInventory.
--inventory-configuration
Parameter --inventory-configuration mendukung format XML dan JSON. Jika nilai parameter diawali dengan "file://", konfigurasi akan dimuat dari file yang ditentukan.
Format 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> <IncrementalInventory> <IsEnabled>boolean</IsEnabled> <Schedule> <Frequency>integer</Frequency> </Schedule> <OptionalFields> <Field>string</Field> ... </OptionalFields> </IncrementalInventory> </InventoryConfiguration>Format JSON:
[ { "Id": "string", "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", ... ] }, "IncrementalInventory": { "IsEnabled": "boolean", "Schedule": { "Frequency": "integer" }, "OptionalFields": { "Field": [ "string", ... ] } } ]
Untuk informasi selengkapnya tentang opsi baris perintah global yang didukung, lihat Command-line options.
Contoh
Mengonfigurasi aturan inventaris
Contoh berikut menunjukkan cara mengonfigurasi aturan inventaris bernama report1 untuk bucket bernama examplebucket.
Gunakan file konfigurasi XML (inventory-configuration.xml pada contoh ini)
<?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>Contoh perintah:
ossutil api put-bucket-inventory --bucket examplebucket --inventory-id report1 --inventory-configuration file://inventory-configuration.xmlGunakan file konfigurasi JSON (inventory-configuration.json pada contoh ini)
{ "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" ] } }Contoh perintah:
ossutil api put-bucket-inventory --bucket examplebucket --inventory-id report1 --inventory-configuration file://inventory-configuration.jsonGunakan parameter JSON langsung di baris perintah
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\"]}}"
Mengonfigurasi aturan inventaris inkremental
Contoh berikut menunjukkan cara mengonfigurasi aturan inventaris bernama report1 untuk bucket examplebucket.
Gunakan file konfigurasi XML. Kode berikut menunjukkan isi inventory-configuration.xml:
<?xml version="1.0" encoding="UTF-8"?> <InventoryConfiguration> <Id>Report-1</Id> <IsEnabled>true</IsEnabled> <Filter> <Prefix>test</Prefix> </Filter> <Destination> <OSSBucketDestination> <Format>CSV</Format> <AccountId>12xxxxxx29</AccountId> <RoleArn>acs:ram::12xxxxxx29:role/bucket-inventory-role</RoleArn> <Bucket>acs:oss:::test-inc-bi-bj</Bucket> <Prefix>Report-1</Prefix> </OSSBucketDestination> </Destination> <Schedule> <Frequency>Weekly</Frequency> </Schedule> <IncludedObjectVersions>All</IncludedObjectVersions> <OptionalFields> <Field>Size</Field> <Field>LastModifiedDate</Field> <Field>ETag</Field> <Field>StorageClass</Field> </OptionalFields> <IncrementalInventory> <IsEnabled>true</IsEnabled> <Schedule> <Frequency>600</Frequency> </Schedule> <OptionalFields> <Field>SequenceNumber</Field> <Field>RecordType</Field> <Field>RecordTimestamp</Field> <Field>Requester</Field> <Field>RequestId</Field> <Field>SourceIp</Field> <Field>Size</Field> <Field>StorageClass</Field> <Field>LastModifiedDate</Field> <Field>ETag</Field> <Field>IsMultipartUploaded</Field> <Field>ObjectType</Field> <Field>ObjectAcl</Field> <Field>Crc64</Field> <Field>EncryptionStatus</Field> </OptionalFields> </IncrementalInventory> </InventoryConfiguration>Contoh perintah:
ossutil api put-bucket-inventory --bucket examplebucket --inventory-id report1 --inventory-configuration file://inventory-configuration.xml