Operasi ini digunakan untuk mengonfigurasi aturan enkripsi pada sebuah bucket.
Catatan
Izin oss:PutBucketEncryption diperlukan untuk mengonfigurasi aturan enkripsi bucket. Untuk informasi lebih lanjut, lihat Lampirkan kebijakan kustom ke Pengguna RAM.
Hanya pemilik bucket atau Pengguna RAM yang berwenang yang dapat mengonfigurasi aturan enkripsi bucket. Jika tidak, OSS akan mengembalikan kesalahan 403. Untuk detail tentang enkripsi bucket, lihat Enkripsi sisi server.
Struktur permintaan
PUT /? encryption HTTP/1.1
Date: GMT Date
Content-Length: ContentLength
Content-Type: application/xml
Host: BucketName.oss.aliyuncs.com
Authorization: SignatureValue
<? xml version="1.0" encoding="UTF-8"? >
<ServerSideEncryptionRule>
<ApplyServerSideEncryptionByDefault>
<SSEAlgorithm>AES256</SSEAlgorithm>
<KMSMasterKeyID></KMSMasterKeyID>
</ApplyServerSideEncryptionByDefault>
</ServerSideEncryptionRule>Elemen permintaan
Elemen | Tipe | Diperlukan | Contoh | Deskripsi |
ServerSideEncryptionRule | Kontainer | Ya | Tidak tersedia | Kontainer yang menyimpan aturan enkripsi sisi server. Node anak: ApplyServerSideEncryptionByDefault |
ApplyServerSideEncryptionByDefault | Kontainer | Ya | Tidak tersedia | Kontainer yang menyimpan metode enkripsi sisi server default. Node anak: SSEAlgorithm dan KMSMasterKeyID |
SSEAlgorithm | String | Ya | AES256 | Metode enkripsi sisi server default. Nilai valid: KMS, AES256. Catatan Jika Anda menggunakan OSS pada CloudBox, hanya AES-256 yang didukung. Anda akan dikenakan biaya untuk memanggil operasi API saat menggunakan CMK untuk mengenkripsi atau mendekripsi data. Untuk informasi lebih lanjut tentang biaya, lihat Harga KMS. Dalam replikasi lintas wilayah, jika metode enkripsi sisi server default dikonfigurasikan untuk bucket tujuan dan ReplicaCMKID dikonfigurasikan dalam aturan replikasi:
Untuk informasi lebih lanjut, lihat Gunakan replikasi lintas wilayah dengan enkripsi sisi server. |
KMSDataEncryption | String | Tidak | SM4 | Algoritma yang digunakan untuk mengenkripsi objek. Jika elemen ini tidak ditentukan, objek dienkripsi menggunakan AES256. Elemen ini hanya valid ketika nilai SSEAlgorithm diatur ke KMS. Nilai valid: SM4. Jika Anda menggunakan OSS pada CloudBox, parameter ini tidak didukung. |
KMSMasterKeyID | String | Tidak | 9468da86-3509-4f8d-a61e-6eab1eac**** | ID CMK yang harus ditentukan ketika SSEAlgorithm diatur ke KMS dan CMK tertentu digunakan untuk enkripsi. Dalam kasus lain, elemen ini harus diatur ke null. Jika Anda menggunakan OSS pada CloudBox, parameter ini tidak didukung. |
Untuk informasi lebih lanjut tentang header permintaan umum lainnya dalam permintaan PutBucketEncryption, seperti Host dan Date, lihat Header Permintaan Umum.
Header tanggapan
Semua header dalam tanggapan terhadap permintaan DescribeRegions adalah header tanggapan umum. Untuk informasi lebih lanjut, lihat Header Tanggapan Umum.
Contoh
Contoh Permintaan
Atur metode enkripsi ke SSE-KMS
Contoh permintaan berikut mengonfigurasi metode enkripsi bucket bernama oss-example ke SSE-KMS:
PUT /? encryption HTTP/1.1 Date: Thu, 17 Apr 2025 11:09:13 GMT Content-Length: ContentLength Content-Type: application/xml Host: oss-example.oss-cn-hangzhou.aliyuncs.com Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,AdditionalHeaders=content-length,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e <? xml version="1.0" encoding="UTF-8"? > <ServerSideEncryptionRule> <ApplyServerSideEncryptionByDefault> <SSEAlgorithm>KMS</SSEAlgorithm> <KMSMasterKeyID>9468da86-3509-4f8d-a61e-6eab1eac****</KMSMasterKeyID> </ApplyServerSideEncryptionByDefault> </ServerSideEncryptionRule>
Contoh Tanggapan
HTTP/1.1 200 OK x-oss-request-id: 5C1B138A109F4E405B2D**** Date: Thur, 5 Nov 2020 11:09:13 GMT
SDK OSS
Anda dapat menggunakan SDK OSS untuk bahasa pemrograman berikut guna memanggil operasi PutBucketEncryption:
ossutil
Untuk informasi tentang perintah ossutil yang sesuai dengan operasi PutBucketEncryption, lihat put-bucket-encryption.
Kode kesalahan
Kode kesalahan | Status HTTP | Deskripsi |
InvalidEncryptionAlgorithmError | 400 | Kesalahan dikembalikan karena nilai SSEAlgorithm bukan KMS atau AES256. Pesan kesalahan berikut dikembalikan: |
InvalidArgument | 400 | Kesalahan dikembalikan karena nilai SSEAlgorithm adalah AES256 tetapi KMSMasterKeyID ditentukan. Pesan kesalahan berikut dikembalikan: |