

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mengonfigurasi Kunci Bucket S3 pada tingkat objek
<a name="configuring-bucket-key-object"></a>

Saat Anda melakukan operasi PUT atau COPY menggunakan REST API, AWS SDK, atau AWS CLI, Anda dapat mengaktifkan atau menonaktifkan Kunci Bucket S3 di tingkat objek dengan menambahkan header `x-amz-server-side-encryption-bucket-key-enabled` permintaan dengan nilai `true` atau`false`. Kunci Bucket S3 mengurangi biaya enkripsi sisi server menggunakan AWS Key Management Service (AWS KMS) (SSE-KMS) dengan mengurangi lalu lintas permintaan dari Amazon S3 ke. AWS KMS Untuk informasi selengkapnya, lihat [Mengurangi biaya SSE-KMS dengan Amazon S3 Bucket Keys](bucket-key.md). 

Saat Anda mengonfigurasi Kunci Bucket S3 untuk suatu objek menggunakan operasi PUT atau COPY, Amazon S3 hanya memperbarui pengaturan untuk objek tersebut. Pengaturan Kunci Bucket S3 untuk bucket tujuan tidak berubah. Jika Anda mengirimkan permintaan PUT atau COPY untuk KMS-encrypted objek ke dalam bucket dengan S3 Bucket Keys diaktifkan, operasi level objek Anda akan secara otomatis menggunakan Kunci Bucket S3 kecuali Anda menonaktifkan kunci di header permintaan. Jika Anda tidak menentukan Kunci Bucket S3 untuk objek Anda, Amazon S3 menerapkan pengaturan Kunci Bucket S3 untuk bucket tujuan ke objek.

**Prasyarat:**  
Sebelum mengonfigurasi bucket untuk menggunakan Kunci Bucket S3, tinjau  [Perubahan yang perlu diperhatikan sebelum mengaktifkan Kunci Bucket S3](bucket-key.md#bucket-key-changes). 

**Topics**
+ [Operasi Batch Amazon S3](#bucket-key-object-bops)
+ [Penggunaan API REST](#bucket-key-object-rest)
+ [Menggunakan AWS SDK for Java PutObject ()](#bucket-key-object-sdk)
+ [Menggunakan AWS CLI (PutObject)](#bucket-key-object-cli)

## Operasi Batch Amazon S3
<a name="bucket-key-object-bops"></a>

Untuk mengenkripsi objek Amazon S3 yang tidak terenkripsi, Anda dapat menggunakan Operasi Batch Amazon S3. Anda harus menyediakan Operasi Batch S3 dengan daftar objek untuk dioperasikan, dan Operasi Batch akan memanggil masing-masing API untuk melakukan operasi tertentu. 

Anda juga dapat menggunakan [Operasi Salin Operasi Batch S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops-copy-object.html) untuk menyalin objek tidak terenkripsi yang ada, dan menuliskannya kembali ke bucket yang sama sebagai objek terenkripsi. Satu tugas Operasi Batch dapat melakukan operasi tertentu pada miliaran objek yang berisi data sebesar eksabita. Untuk informasi selengkapnya, lihat [Melakukan operasi objek secara massal dengan Operasi Batch](batch-ops.md) dan [Mengenkripsi objek dengan Operasi Batch Amazon S3](https://aws.amazon.com/blogs/storage/encrypting-objects-with-amazon-s3-batch-operations/).

## Penggunaan API REST
<a name="bucket-key-object-rest"></a>

Saat menggunakan SSE-KMS, Anda dapat mengaktifkan Kunci Bucket S3 untuk objek dengan menggunakan operasi API berikut: 
+ [PutObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)— Saat Anda mengunggah objek, Anda dapat menentukan header `x-amz-server-side-encryption-bucket-key-enabled` permintaan untuk mengaktifkan atau menonaktifkan Kunci Bucket S3 di tingkat objek. 
+ [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)— Saat Anda menyalin objek dan mengonfigurasi SSE-KMS, Anda dapat menentukan header `x-amz-server-side-encryption-bucket-key-enabled` permintaan untuk mengaktifkan atau menonaktifkan Kunci Bucket S3 untuk objek Anda. 
+ [POST Object](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPOST.html) - Saat Anda menggunakan `POST` operasi untuk mengunggah objek dan mengkonfigurasi SSE-KMS, Anda dapat menggunakan bidang `x-amz-server-side-encryption-bucket-key-enabled` formulir untuk mengaktifkan atau menonaktifkan Kunci Bucket S3 untuk objek Anda.
+ [CreateMultipartUpload](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)— Saat Anda mengunggah objek besar dengan menggunakan operasi `CreateMultipartUpload` API dan mengkonfigurasi SSE-KMS, Anda dapat menggunakan header `x-amz-server-side-encryption-bucket-key-enabled` permintaan untuk mengaktifkan atau menonaktifkan Kunci Bucket S3 untuk objek Anda.

Untuk mengaktifkan Kunci Bucket S3 pada tingkat objek, termasuk header permintaan `x-amz-server-side-encryption-bucket-key-enabled`. Untuk informasi selengkapnya tentang SSE-KMS dan REST API, lihat[Penggunaan API REST](specifying-kms-encryption.md#KMSUsingRESTAPI).

## Menggunakan AWS SDK for Java PutObject ()
<a name="bucket-key-object-sdk"></a>

Anda dapat menggunakan contoh berikut untuk mengonfigurasi Kunci Bucket S3 di tingkat objek menggunakan AWS SDK untuk Java.

------
#### [ Java ]

```
AmazonS3 s3client = AmazonS3ClientBuilder.standard()
    .withRegion(Regions.DEFAULT_REGION)
    .build();

String bucketName = "{{amzn-s3-demo-bucket1}}";
String keyName = "{{key name for object}}";
String contents = "{{file contents}}";

PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, keyName, contents)
    .withBucketKeyEnabled(true);
    
s3client.putObject(putObjectRequest);
```

------

## Menggunakan AWS CLI (PutObject)
<a name="bucket-key-object-cli"></a>

Anda dapat menggunakan AWS CLI contoh berikut untuk mengonfigurasi Kunci Bucket S3 di tingkat objek sebagai bagian dari `PutObject` permintaan.

```
aws s3api put-object --bucket {{amzn-s3-demo-bucket}} --key {{object key name}} --server-side-encryption aws:kms --bucket-key-enabled --body {{filepath}}
```