

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

# Menggunakan enkripsi sisi server dengan AWS KMS kunci (SSE-KMS)
<a name="UsingKMSEncryption"></a>

**penting**  
Amazon S3 sekarang menerapkan enkripsi sisi server dengan kunci terkelola Amazon S3 (SSE-S3) sebagai tingkat dasar enkripsi untuk setiap bucket di Amazon S3. Mulai 5 Januari 2023, semua unggahan objek baru ke Amazon S3 secara otomatis akan dienkripsi tanpa biaya tambahan dan tidak akan berdampak pada kinerja. Status enkripsi otomatis untuk konfigurasi enkripsi default bucket S3 dan untuk unggahan objek baru tersedia di CloudTrail log, S3 Inventory, S3 Storage Lens, konsol Amazon S3, dan sebagai header respons API Amazon S3 tambahan di dan SDK. AWS CLI AWS Untuk informasi selengkapnya, lihat [FAQ enkripsi default](https://docs.aws.amazon.com/AmazonS3/latest/userguide/default-encryption-faq.html).

Server-side enkripsi adalah enkripsi data di tujuannya oleh aplikasi atau layanan yang menerimanya.

Amazon S3 secara otomatis mengaktifkan enkripsi sisi server dengan kunci terkelola Amazon S3 () untuk unggahan objek baru. SSE-S3

Kecuali Anda menentukan sebaliknya, bucket digunakan secara SSE-S3 default untuk mengenkripsi objek. Namun, Anda dapat memilih untuk mengonfigurasi bucket untuk menggunakan enkripsi sisi server dengan AWS Key Management Service (AWS KMS) keys () sebagai gantinya. SSE-KMS Untuk informasi selengkapnya, lihat [Menentukan enkripsi sisi server dengan AWS KMS (SSE-KMS)](specifying-kms-encryption.md).

AWS KMS adalah layanan yang menggabungkan perangkat keras dan perangkat lunak yang aman dan sangat tersedia untuk menyediakan sistem manajemen kunci yang diskalakan untuk cloud. Amazon S3 menggunakan enkripsi sisi server dengan AWS KMS (SSE-KMS) untuk mengenkripsi data objek S3 Anda. Juga, ketika SSE-KMS diminta untuk objek, checksum S3 (sebagai bagian dari metadata objek) disimpan dalam bentuk terenkripsi. Untuk informasi selengkapnya tentang checksum, silakan lihat [Memeriksa integritas objek di Amazon S3](checking-object-integrity.md).

Jika Anda menggunakan kunci KMS, Anda dapat menggunakan AWS KMS melalui [Konsol Manajemen AWS](https://console.aws.amazon.com/kms)atau [AWS KMS API](https://docs.aws.amazon.com/kms/latest/APIReference/) untuk melakukan hal berikut: 
+ Membuat, melihat, mengedit, memantau, mengaktifkan atau menonaktifkan, memutar, dan menjadwalkan penghapusan kunci KMS secara terpusat.
+ Menentukan kebijakan yang mengendalikan bagaimana dan oleh siapa kunci KMS digunakan.
+ Audit penggunaan kunci KMS untuk penggunaan yang benar. Audit didukung oleh [AWS KMS API](https://docs.aws.amazon.com/kms/latest/APIReference/) tetapi tidak oleh [AWS KMS Konsol;](https://console.aws.amazon.com/kms).



Kontrol keamanan AWS KMS dapat membantu Anda memenuhi persyaratan kepatuhan terkait enkripsi. Anda dapat menggunakan kunci KMS ini untuk melindungi data Anda di bucket Amazon S3. Saat Anda menggunakan SSE-KMS enkripsi dengan bucket S3, AWS KMS keys harus berada di Region yang sama dengan bucket.

Ada biaya tambahan untuk penggunaan AWS KMS keys. Untuk informasi lebih umum, lihat konsep [AWS KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys) dalam *AWS Key Management Service Panduan Pengguna* dan [AWS KMS harga](https://aws.amazon.com/kms/pricing).

Untuk petunjuk tentang mengizinkan pengguna IAM mengakses bucket, lihat KMS-encrypted Bucket [Amazon S3 saya memiliki enkripsi default menggunakan kunci khusus. AWS KMS Bagaimana cara mengizinkan pengguna mengunduh dan mengunggah ke bucket?](https://repost.aws/knowledge-center/s3-bucket-access-default-encryption) di pusat AWS re:Post pengetahuan.

**Izin**  
Agar berhasil membuat `PutObject` permintaan untuk mengenkripsi objek dengan AWS KMS kunci ke Amazon S3, Anda `kms:GenerateDataKey` memerlukan izin pada kunci tersebut. Untuk mengunduh objek yang dienkripsi dengan AWS KMS key, Anda memerlukan `kms:Decrypt` izin untuk kunci tersebut. Untuk [melakukan unggahan multibagian](https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions) untuk mengenkripsi objek dengan AWS KMS key, Anda harus memiliki `kms:GenerateDataKey` dan `kms:Decrypt` izin untuk kunci tersebut.

**penting**  
Tinjau dengan cermat izin yang diberikan dalam kebijakan kunci KMS Anda. Selalu batasi izin kebijakan kunci KMS yang dikelola pelanggan hanya untuk kepala sekolah dan AWS layanan IAM yang harus mengakses tindakan kunci yang relevan. AWS KMS Untuk informasi selengkapnya, lihat [Kebijakan utama di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html).
Jika bucket digunakan sebagai tujuan pencatatan akses server Amazon S3, bucket tujuan harus menggunakan kunci terkelola Amazon S3 (). SSE-S3 Jika bucket tujuan menggunakan enkripsi SSE-KMS default, Amazon S3 mungkin mengirimkan objek log yang dienkripsi dengan kunci yang tidak dapat Anda akses. Untuk mengatasinya, ubah enkripsi default bucket tujuan menjadi SSE-S3. Untuk informasi selengkapnya, lihat [Mengaktifkan pencatatan akses server Amazon S3](enable-server-access-logging.md).

**Topics**
+ [AWS KMS keys](#aws-managed-customer-managed-keys)
+ [Kunci Bucket Amazon S3](#sse-kms-bucket-keys)
+ [Membutuhkan enkripsi di sisi server](#require-sse-kms)
+ [Konteks enkripsi](#encryption-context)
+ [Mengirim permintaan untuk AWS KMS objek terenkripsi](#aws-signature-version-4-sse-kms)
+ [Menentukan enkripsi sisi server dengan AWS KMS (SSE-KMS)](specifying-kms-encryption.md)
+ [Mengurangi biaya SSE-KMS dengan Amazon S3 Bucket Keys](bucket-key.md)

## AWS KMS keys
<a name="aws-managed-customer-managed-keys"></a>

Bila Anda menggunakan enkripsi sisi server dengan AWS KMS (SSE-KMS), Anda dapat menggunakan [kunci AWS terkelola default, atau Anda dapat menentukan kunci](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) [terkelola pelanggan](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) yang telah Anda buat. AWS KMS mendukung *enkripsi amplop*. S3 menggunakan AWS KMS fitur untuk *enkripsi amplop* untuk lebih melindungi data Anda. Enkripsi amplop adalah praktik mengenkripsi data teks biasa Anda dengan kunci data, dan kemudian mengenkripsi kunci data itu dengan kunci KMS. Untuk informasi selengkapnya tentang enkripsi amplop, lihat [ Enkripsi amplop](https://docs.aws.amazon.com//kms/latest/developerguide/concepts.html#enveloping) di *Panduan Developer AWS Key Management Service *.

Jika Anda tidak menentukan kunci terkelola pelanggan, Amazon S3 secara otomatis membuat Kunci yang dikelola AWS saat pertama kali Anda menambahkan objek yang dienkripsi ke bucket. Akun AWS SSE-KMS Secara default, Amazon S3 menggunakan kunci KMS ini untuk. SSE-KMS 

**catatan**  
Objek yang dienkripsi menggunakan SSE-KMS dengan tidak [Kunci yang dikelola AWS](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk)dapat dibagikan lintas akun. Jika Anda perlu berbagi SSE-KMS data lintas akun, Anda harus menggunakan [kunci yang dikelola pelanggan](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) dari AWS KMS. 

Jika Anda ingin menggunakan kunci terkelola pelanggan SSE-KMS, buat kunci terkelola pelanggan enkripsi simetris sebelum Anda mengonfigurasi SSE-KMS. Kemudian, saat Anda mengonfigurasi SSE-KMS bucket, tentukan kunci terkelola pelanggan yang ada. Untuk informasi selengkapnya tentang kunci enkripsi simetris, lihat [Kunci KMS enkripsi simetris](https://docs.aws.amazon.com//kms/latest/developerguide/concepts.html#symmetric-cmks) dalam *Panduan Pengembang AWS Key Management Service *.

Membuat CMK memberikan Anda lebih banyak fleksibilitas dan kendali atas pelanggan. Misalnya, Anda dapat membuat, memutar, dan menonaktifkan CMK. Anda juga dapat menentukan kontrol akses dan mengaudit CMK yang Anda gunakan untuk melindungi data Anda. Untuk informasi selengkapnya tentang kunci yang AWS dikelola dan dikelola [pelanggan, lihat Kunci dan AWS kunci](https://docs.aws.amazon.com//kms/latest/developerguide/concepts.html#key-mgmt) pelanggan di *Panduan AWS Key Management Service Pengembang*.

**catatan**  
Saat Anda menggunakan enkripsi di sisi server dengan CMK yang disimpan di penyimpanan kunci eksternal, tidak seperti kunci KMS standar, Anda bertanggung jawab untuk memastikan ketersediaan dan ketahanan material kunci Anda. Untuk informasi selengkapnya tentang penyimpanan kunci eksternal dan cara mereka mengubah model tanggung jawab bersama, lihat [Penyimpanan kunci eksternal](https://docs.aws.amazon.com//kms/latest/developerguide/keystore-external.html) di *Panduan AWS Key Management Service Pengembang*.

### Menggunakan SSE-KMS enkripsi untuk operasi lintas akun
<a name="sse-kms-cross-account-operations"></a>

Saat menggunakan enkripsi untuk operasi lintas akun, perhatikan hal berikut:
+ Jika Nama Sumber Daya AWS KMS key Amazon (ARN) atau alias tidak disediakan pada waktu permintaan atau melalui konfigurasi enkripsi default bucket, Kunci yang dikelola AWS (`aws/s3`) dari akun pengunggahan digunakan untuk enkripsi dan diperlukan untuk dekripsi.
+ Kunci yang dikelola AWS (`aws/s3`) dapat digunakan sebagai kunci KMS Anda untuk operasi lintas akun saat prinsip pengunggahan dan akses AWS Identity and Access Management (IAM) berasal dari yang sama. Akun AWS
+ Jika Anda ingin memberikan akses lintas akun ke objek S3 Anda, gunakan CMK. Anda dapat mengonfigurasi kebijakan CMK untuk mengizinkan akses dari akun lain.
+ Jika Anda menentukan kunci KMS yang dikelola pelanggan, kami sarankan untuk menggunakan ARN kunci KMS yang memenuhi syarat sepenuhnya. Jika Anda menggunakan alias kunci KMS sebagai gantinya, AWS KMS selesaikan kunci dalam akun pemohon. Perilaku ini dapat menghasilkan data yang dienkripsi dengan kunci KMS milik pemohon, dan bukan pemilik bucket.
+ Anda harus menentukan kunci yang kepada Anda (pemohon) telah diberikan izin `Encrypt`. Untuk informasi selengkapnya, lihat [Mengizinkan pengguna di akun lain untuk menggunakan kunci KMS untuk operasi kriptografi](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-users-crypto) di *Panduan Pengembang AWS Key Management Service *.

Untuk informasi selengkapnya tentang kapan menggunakan kunci terkelola pelanggan dan kunci KMS AWS terkelola, lihat [Haruskah saya menggunakan Kunci yang dikelola AWS atau kunci yang dikelola pelanggan untuk mengenkripsi objek saya di Amazon S3?](https://aws.amazon.com/premiumsupport/knowledge-center/s3-object-encryption-keys/)

### SSE-KMS alur kerja enkripsi
<a name="sse-kms-encryption-workflow"></a>

Jika Anda memilih untuk mengenkripsi data menggunakan Kunci yang dikelola AWS atau kunci yang dikelola pelanggan, AWS KMS dan Amazon S3 melakukan tindakan enkripsi amplop berikut:

1. Amazon S3 meminta [ kunci data](https://docs.aws.amazon.com//kms/latest/developerguide/concepts.html#data-keys) plaintext dan salinan kunci yang dienkripsi di bawah kunci KMS yang ditentukan.

1. AWS KMS menghasilkan kunci data, mengenkripsinya di bawah kunci KMS, dan mengirimkan kunci data teks biasa dan kunci data terenkripsi ke Amazon S3.

1. Amazon S3 mengenkripsi data menggunkaan kunci data dan menghapus kunci plaintext dari memori sesegera mungkin setelah digunakan.

1. Amazon S3 menyimpan kunci data terenkripsi sebagai metadata dengan data terenkripsi.

Saat Anda meminta agar data Anda didekripsi, Amazon S3 AWS KMS dan lakukan tindakan berikut:

1. Amazon S3 mengirimkan kunci data terenkripsi ke AWS KMS dalam permintaan. `Decrypt`

1. AWS KMS mendekripsi kunci data terenkripsi dengan menggunakan kunci KMS yang sama dan mengembalikan kunci data teks biasa ke Amazon S3.

1. Amazon S3 mendekripsi data terenkripsi, menggunakan kunci data teks biasa, dan menghapus kunci data teks biasa dari memori sesegera mungkin.

**penting**  
Saat Anda menggunakan enkripsi sisi server AWS KMS key untuk Amazon S3, Anda harus memilih kunci KMS enkripsi simetris. Amazon S3 hanya mendukung kunci KMS enkripsi simetris. Untuk informasi selengkapnya terkait kunci ini, lihat [Membuat kunci enkripsi simetris KMS](https://docs.aws.amazon.com//kms/latest/developerguide/concepts.html#symmetric-cmks) dalam *Panduan Pengembang AWS Key Management Service *.

### Enkripsi audit SSE-KMS
<a name="sse-kms-encryption-audit"></a>

Untuk mengidentifikasi permintaan yang ditentukan SSE-KMS, Anda dapat menggunakan metrik **Semua SSE-KMS permintaan** dan**% semua SSE-KMS permintaan** di metrik Lensa Penyimpanan Amazon S3. Lensa Penyimpanan S3 adalah fitur analisis penyimpanan cloud yang dapat Anda gunakan untuk mendapatkan visibilitas seluruh organisasi ke dalam penggunaan dan aktivitas penyimpanan objek. Anda juga dapat menggunakan jumlah bucket yang SSE-KMS diaktifkan dan bucket yang SSE-KMS diaktifkan% untuk memahami jumlah bucket yang (SSE-KMS) untuk enkripsi [bucket default](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-encryption.html). Untuk informasi selengkapnya, lihat [ Menilai aktivitas penyimpanan dan penggunaan Anda dengan Lensa Penyimpanan S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens.html?icmpid=docs_s3_user_guide_UsingKMSEncryption.html). Untuk daftar lengkap metrik, lihat [ Glosarium metrik Lensa Penyimpanan S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_metrics_glossary.html?icmpid=docs_s3_user_guide_UsingKMSEncryption.html).

Untuk mengaudit penggunaan AWS KMS kunci Anda untuk data SSE-KMS terenkripsi Anda, Anda dapat menggunakan AWS CloudTrail log. Anda bisa mendapatkan wawasan tentang [operasi kriptografi](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations) Anda, seperti [https://docs.aws.amazon.com/kms/latest/developerguide/ct-generatedatakey.html](https://docs.aws.amazon.com/kms/latest/developerguide/ct-generatedatakey.html)dan [https://docs.aws.amazon.com/kms/latest/developerguide/ct-decrypt.html](https://docs.aws.amazon.com/kms/latest/developerguide/ct-decrypt.html). CloudTrail mendukung banyak [nilai atribut](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_LookupEvents.html) untuk memfilter pencarian Anda, termasuk nama acara, nama pengguna, dan sumber acara. 

## Kunci Bucket Amazon S3
<a name="sse-kms-bucket-keys"></a>

Saat mengonfigurasi enkripsi sisi server menggunakan AWS KMS (SSE-KMS), Anda dapat mengonfigurasi bucket untuk menggunakan Kunci Bucket S3. SSE-KMS Menggunakan kunci tingkat ember untuk SSE-KMS dapat mengurangi biaya AWS KMS permintaan Anda hingga 99 persen dengan mengurangi lalu lintas permintaan dari Amazon S3 ke. AWS KMS

Saat Anda mengonfigurasi bucket untuk menggunakan Kunci Bucket S3 untuk SSE-KMS objek baru, AWS KMS buat kunci tingkat ember yang digunakan untuk membuat [kunci data](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys) unik untuk objek di bucket. Kunci Bucket S3 ini digunakan untuk jangka waktu terbatas dalam Amazon S3, semakin mengurangi kebutuhan Amazon S3 untuk membuat permintaan AWS KMS untuk menyelesaikan operasi enkripsi. Untuk informasi lebih lanjut tentang menggunakan Kunci Bucket S3, lihat [Mengurangi biaya SSE-KMS dengan Amazon S3 Bucket Keys](bucket-key.md).

## Membutuhkan enkripsi di sisi server
<a name="require-sse-kms"></a>

Untuk mewajibkan enkripsi di sisi server terhadap semua objek dalam bucket Amazon S3 tertentu, Anda dapat menggunakan kebijakan bucket. Misalnya, kebijakan bucket berikut menolak izin upload object (`s3:PutObject`) untuk semua orang jika permintaan tidak menyertakan `x-amz-server-side-encryption-aws-kms-key-id` header yang meminta enkripsi sisi server. SSE-KMS

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Id":"PutObjectPolicy",
   "Statement":[{
         "Sid":"DenyObjectsThatAreNotSSEKMS",
         "Effect":"Deny",
         "Principal":"*",
         "Action":"s3:PutObject",
         "Resource":"arn:aws:s3:::amzn-s3-demo-bucket1/*",
         "Condition":{
            "Null":{
               "s3:x-amz-server-side-encryption-aws-kms-key-id":"true"
            }
         }
      }
   ]
}
```

------

Untuk mengharuskan seseorang AWS KMS key digunakan untuk mengenkripsi objek dalam ember, Anda dapat menggunakan kunci `s3:x-amz-server-side-encryption-aws-kms-key-id` kondisi. Untuk menentukan kunci KMS, Anda harus menggunakan kunci Amazon Resource Name (ARN) yang ada dalam `arn:aws:kms:{{region}}:{{acct-id}}:key/{{key-id}}` format. AWS Identity and Access Management tidak memvalidasi jika string untuk `s3:x-amz-server-side-encryption-aws-kms-key-id` ada. 

**catatan**  
Saat mengunggah objek, Anda dapat menentukan kunci KMS dengan menggunakan `x-amz-server-side-encryption-aws-kms-key-id` header atau mengandalkan [konfigurasi enkripsi bucket default](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-encryption.html) Anda. Jika PutObject permintaan Anda menentukan `aws:kms` di `x-amz-server-side-encryption` header, tetapi tidak menentukan `x-amz-server-side-encryption-aws-kms-key-id` header, maka Amazon S3 mengasumsikan bahwa Anda ingin menggunakan. Kunci yang dikelola AWS Terlepas dari itu, ID AWS KMS kunci yang digunakan Amazon S3 untuk enkripsi objek harus cocok dengan ID AWS KMS kunci dalam kebijakan, jika tidak Amazon S3 menolak permintaan tersebut.

*Untuk daftar lengkap kunci kondisi khusus Amazon S3, lihat Kunci kondisi [untuk Amazon S3](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3.html#amazons3-policy-keys) di Referensi Otorisasi Layanan.*

## Konteks enkripsi
<a name="encryption-context"></a>

*Konteks enkripsi* adalah seperangkat pasangan nilai kunci yang berisi informasi kontekstual tambahan terkait data. Konteks enkripsi tidak dienkripsi. Ketika konteks enkripsi ditentukan untuk operasi enkripsi, Amazon S3 harus menentukan konteks enkripsi yang sama untuk operasi dekripsi. Jika tidak, dekripsi gagal. AWS KMS menggunakan konteks enkripsi sebagai [data otentikasi tambahan](https://docs.aws.amazon.com/database-encryption-sdk/latest/devguide/concepts.html#digital-sigs) (AAD) untuk mendukung enkripsi yang [diautentikasi](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations#digital-sigs). Untuk informasi umum tentang konteks enkripsi, lihat [Konteks enkripsi](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context) dalam *Panduan Pengembang AWS Key Management Service *. 

Secara default, Amazon S3 menggunakan objek atau bucket Amazon Resource Name (ARN) sebagai pasangan konteks enkripsi: 
+ **Jika Anda menggunakan SSE-KMS tanpa mengaktifkan S3 Bucket Key**, objek ARN digunakan sebagai konteks enkripsi.

  ```
  arn:aws:s3:::{{object_ARN}}
  ```
+ **Jika Anda menggunakan SSE-KMS dan mengaktifkan Kunci Bucket S3**, ARN bucket digunakan sebagai konteks enkripsi. Untuk informasi selengkapnya tentang Kunci Bucket S3, lihat [Mengurangi biaya SSE-KMS dengan Amazon S3 Bucket Keys](bucket-key.md).

  ```
  arn:aws:s3:::{{bucket_ARN}}
  ```

Anda secara opsional dapat memberikan pasangan konteks enkripsi tambahan dengan menggunakan `x-amz-server-side-encryption-context` header dalam permintaan [s3: PutObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html#API_PutObject_RequestSyntax). Namun, karena konteks enkripsi tidak dienkripsi, pastikan bahwa itu tidak menyertakan informasi yang sensitif. Amazon S3 menyimpan pasangan kunci tambahan ini bersama dengan konteks enkripsi default. Saat memproses permintaan `PUT` Anda, Amazon S3 menambahkan konteks enkripsi default ke `aws:s3:arn` yang Anda berikan. 

Anda dapat menggunakan konteks enkripsi untuk mengidentifikasi dan mengategorikan operasi kriptografi Anda. Anda juga dapat menggunakan nilai ARN konteks enkripsi default untuk melacak permintaan yang relevan AWS CloudTrail dengan melihat Amazon S3 ARN mana yang digunakan dengan kunci enkripsi mana.

Di `requestParameters` bidang file CloudTrail log, konteks enkripsi terlihat mirip dengan yang berikut. 

```
"encryptionContext": {
    "aws:s3:arn": "arn:aws:s3:::{{{{amzn-s3-demo-bucket1}}/file_name}}"
}
```

Bila Anda menggunakan SSE-KMS fitur S3 Bucket Keys opsional, nilai konteks enkripsi adalah ARN bucket.

```
"encryptionContext": {
    "aws:s3:arn": "arn:aws:s3:::{{{{amzn-s3-demo-bucket1}}}}"
}
```

## Mengirim permintaan untuk AWS KMS objek terenkripsi
<a name="aws-signature-version-4-sse-kms"></a>

**penting**  
Semua `GET` dan `PUT` permintaan untuk objek AWS KMS terenkripsi harus dibuat menggunakan Secure Sockets Layer (SSL) atau Transport Layer Security (TLS). Permintaan juga harus ditandatangani menggunakan kredensyal yang valid, seperti AWS Signature Version 4 (atau AWS Signature Version 2).

AWS Signature Version 4 adalah proses menambahkan informasi otentikasi ke AWS permintaan yang dikirim oleh HTTP. Untuk keamanan, sebagian besar permintaan AWS harus ditandatangani dengan kunci akses, yang terdiri dari ID kunci akses dan kunci akses rahasia. Kedua kunci ini umumnya disebut sebagai kredensial keamanan Anda. Untuk informasi selengkapnya, lihat [Permintaan Autentikasi (Tanda Tangan AWS Versi 4)](https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html) dan [Proses penandatanganan Tanda Tangan Versi 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html).

**penting**  
Jika objek Anda menggunakan SSE-KMS, jangan mengirim header permintaan enkripsi untuk `GET` permintaan dan `HEAD` permintaan. Jika tidak, Anda akan mendapatkan kesalahan HTTP 400 Bad Request.

**Topics**
+ [AWS KMS keys](#aws-managed-customer-managed-keys)
+ [Kunci Bucket Amazon S3](#sse-kms-bucket-keys)
+ [Membutuhkan enkripsi di sisi server](#require-sse-kms)
+ [Konteks enkripsi](#encryption-context)
+ [Mengirim permintaan untuk AWS KMS objek terenkripsi](#aws-signature-version-4-sse-kms)
+ [Menentukan enkripsi sisi server dengan AWS KMS (SSE-KMS)](specifying-kms-encryption.md)
+ [Mengurangi biaya SSE-KMS dengan Amazon S3 Bucket Keys](bucket-key.md)