全部产品
Search
文档中心

Object Storage Service:put-bucket-inventory

更新时间:Jul 02, 2025

Mengonfigurasi daftar untuk sebuah bucket.

Catatan penggunaan

  • Hanya pemilik bucket dan pengguna RAM dengan izin oss:PutBucketInventory yang dapat mengonfigurasi daftar untuk bucket tersebut.

  • Sebelum mengonfigurasi daftar, pastikan Anda memiliki Peran RAM yang berwenang untuk mengakses semua objek di bucket yang ingin dikonfigurasi dan menulis data ke bucket tempat Anda ingin menyimpan daftar inventaris. Jika menggunakan fitur daftar bucket untuk pertama kalinya, disarankan untuk mengonfigurasinya melalui konsol Object Storage Service (OSS). Setelah konfigurasi, Anda akan mendapatkan Peran RAM dengan izin untuk melakukan semua operasi pada sumber daya OSS. Untuk informasi lebih lanjut tentang izin Peran RAM yang diperlukan, lihat Daftar Bucket.

  • Anda dapat mengonfigurasi hingga 1.000 daftar untuk sebuah bucket.

  • Bucket tempat Anda ingin menyimpan daftar inventaris harus berada di wilayah yang sama dengan bucket yang ingin dikonfigurasi.

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

Kontainer yang menyimpan informasi konfigurasi daftar.

--inventory-id

string

ID daftar.

Catatan

Perintah put-bucket-inventory setara dengan perintah PutBucketInventory. Untuk informasi lebih lanjut tentang operasi API, lihat PutBucketInventory.

--inventory-configuration

Parameter --inventory-configuration mendukung format XML dan JSON. Jika nilai parameter dimulai 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>
    </InventoryConfiguration>
  • Format 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"
      },
      ...
    ]
Catatan

Untuk informasi lebih lanjut tentang opsi baris perintah global yang didukung, lihat Opsi Baris Perintah.

Contoh

Konfigurasikan daftar bernama report1 untuk bucket bernama examplebucket.

  • Gunakan file konfigurasi XML (inventory-configuration.xml dalam 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 dalam 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 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\"]}}"