All Products
Search
Document Center

Object Storage Service:PutObjectRetention

Last Updated:Apr 09, 2026

Mengatur kebijakan retensi objek, yang mencakup mode retensi dan tanggal retensi hingga (retain until date), untuk versi objek tertentu. Kebijakan retensi tingkat objek memiliki prioritas lebih tinggi daripada kebijakan retensi ObjectWorm default yang dikonfigurasi untuk bucket tersebut.

Catatan penggunaan

Penting

Fitur ini saat ini berada dalam pratinjau undangan. Untuk menggunakan fitur ini, hubungi technical support untuk mengajukan aktivasi. Fitur ini saat ini hanya didukung di wilayah China (Hangzhou), China (Chengdu), China (Shenzhen), China (Guangzhou), China (Qingdao), China (Beijing), China (Ulanqab), China (Heyuan), China (Hong Kong), Jerman (Frankfurt), Jepang (Tokyo), Korea Selatan (Seoul), Singapura, Malaysia (Kuala Lumpur), Indonesia (Jakarta), Filipina (Manila), Thailand (Bangkok), Arab Saudi (Riyadh), dan UEA (Dubai).

  • Sebelum memanggil operasi ini, Anda harus mengaktifkan kebijakan retensi tingkat objek (ObjectWorm) untuk bucket dengan memanggil operasi PutBucketObjectWormConfiguration.

  • Untuk memanggil operasi ini, Anda harus memiliki izin oss:PutObjectRetention.

  • Dalam mode compliance, nilai RetainUntilDate hanya dapat diperpanjang dan tidak dapat dipersingkat. Jika Anda menetapkan tanggal yang lebih awal dari tanggal retensi hingga saat ini, sistem akan mengembalikan error.

  • Kebijakan retensi tingkat objek yang ditetapkan oleh operasi ini menggantikan kebijakan ObjectWorm default bucket.

  • Anda tidak dapat menetapkan kebijakan retensi objek pada objek yang dapat ditambahkan (appendable object).

  • Nilai RetainUntilDate harus berada di masa depan.

Sintaksis permintaan

PUT /ObjectName?retention HTTP/1.1
Content-MD5: ContentMD5
Content-Length: ContentLength
Content-Type: application/xml
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue

Parameter permintaan

Parameter

Tipe

Wajib

Contoh

Deskripsi

retention

N/A

Ya

N/A

Menentukan bahwa operasi ini mengatur kebijakan retensi objek.

versionId

String

Tidak

CAEQNhiBgMDJgZCA0BYiIDc4MGZj****

ID versi objek. Jika Anda tidak menentukan parameter ini, operasi akan diterapkan pada versi terbaru objek.

Header permintaan

Header

Tipe

Wajib

Contoh

Deskripsi

Content-MD5

String

Ya

B2M2Y8AsgTpgAmY7PhC****

Hash MD5 dari badan permintaan. Header ini digunakan untuk verifikasi integritas data.

Elemen badan permintaan

Elemen

Tipe

Wajib

Contoh

Deskripsi

Retention

Kontainer

Ya

N/A

Kontainer untuk kebijakan retensi objek.

Induk: Tidak ada

Anak: Mode, RetainUntilDate

Mode

String

Ya

COMPLIANCE

Mode retensi objek. Nilai yang valid:

  • COMPLIANCE: Selama periode retensi, tidak ada pengguna, termasuk root user, yang dapat menghapus atau menimpa versi objek yang dilindungi. Periode retensi tidak dapat dipersingkat.

Induk: Retention

RetainUntilDate

String

Ya

2026-10-11T00:00:00.000Z

Tanggal retensi hingga objek. Nilainya berupa tanggal dalam format ISO 8601. Sebelum tanggal ini, versi objek tidak dapat dihapus atau ditimpa. Tanggal yang ditentukan harus berada di masa depan.

Dalam mode compliance, tanggal ini hanya dapat diperpanjang dan tidak dapat dipersingkat.

Induk: Retensi

Header respons

Header

Contoh

Deskripsi

x-oss-version-id

CAEQNhiBgMDJgZCA0BYiIDc4MGZj****

ID versi objek yang dikenai kebijakan retensi.

Contoh

Contoh 1: Menetapkan kebijakan retensi dalam mode compliance

  • Permintaan contoh

    PUT /exampleobject?retention&versionId=CAEQNhiBgMDJgZCA0BYiIDc4MGZj**** HTTP/1.1
    Date: Thu, 17 Mar 2026 11:18:32 GMT
    Content-MD5: B2M2Y8AsgTpgAmY7PhC****
    Content-Type: application/xml
    Content-Length: 162
    Host: examplebucket.oss-cn-hangzhou.aliyuncs.com
    Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20260317/cn-hangzhou/oss/aliyun_v4_request,Signature=****
    
    <Retention>
      <Mode>COMPLIANCE</Mode>
      <RetainUntilDate>2026-10-11T00:00:00.000Z</RetainUntilDate>
    </Retention>
  • Respons contoh

    HTTP/1.1 200 OK
    x-oss-request-id: 5374A2880232A65C2300****
    x-oss-version-id: CAEQNhiBgMDJgZCA0BYiIDc4MGZj****
    Date: Thu, 17 Mar 2026 11:18:32 GMT
    Content-Length: 0
    Server: AliyunOSS

Contoh 2: Memperpanjang tanggal retensi hingga

Contoh berikut memperpanjang tanggal retensi hingga objek menjadi 11 Maret 2027. Dalam mode compliance, tanggal retensi hingga hanya dapat diperpanjang dan tidak dapat dipersingkat.

  • Permintaan contoh

    PUT /exampleobject?retention&versionId=CAEQNhiBgMDJgZCA0BYiIDc4MGZj**** HTTP/1.1
    Date: Thu, 17 Mar 2026 11:18:32 GMT
    Content-MD5: D3N3Z9CtiVqhCnZ9RjE****
    Content-Type: application/xml
    Content-Length: 162
    Host: examplebucket.oss-cn-hangzhou.aliyuncs.com
    Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20260317/cn-hangzhou/oss/aliyun_v4_request,Signature=****
    
    <Retention>
      <Mode>COMPLIANCE</Mode>
      <RetainUntilDate>2027-03-11T00:00:00.000Z</RetainUntilDate>
    </Retention>
  • Respons contoh

    HTTP/1.1 200 OK
    x-oss-request-id: 6485B3990232A65C3400****
    x-oss-version-id: CAEQNhiBgMDJgZCA0BYiIDc4MGZj****
    Date: Thu, 17 Mar 2026 11:20:15 GMT
    Content-Length: 0
    Server: AliyunOSS

Kode error

Kode error

Kode status HTTP

Deskripsi

InvalidRequest

400

ObjectWorm tidak diaktifkan untuk bucket. Anda tidak dapat menetapkan kebijakan retensi objek.

AccessDenied

403

Anda tidak dapat mempersingkat tanggal retensi hingga dalam mode compliance.