全部产品
Search
文档中心

Object Storage Service:put-bucket-inventory

更新时间:Feb 08, 2026

Mengonfigurasi inventaris untuk sebuah bucket.

Catatan penggunaan

  • Hanya Pemilik bucket atau pengguna Resource Access Management (RAM) dengan izin oss:PutBucketInventory yang 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.

Catatan

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",
              ...
            ]
          }
         }
    ]
Catatan

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.xml
  • Gunakan 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.json
  • Gunakan 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