

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

# Menyiapkan enkripsi topik Amazon SNS dengan langganan antrian Amazon SQS terenkripsi
<a name="sns-enable-encryption-for-topic-sqs-queue-subscriptions"></a>

Anda dapat mengaktifkan enkripsi sisi server (SSE) untuk topik untuk melindungi datanya. Untuk mengizinkan Amazon SNS mengirim pesan ke antrian Amazon SQS terenkripsi, kunci terkelola pelanggan yang terkait dengan antrian Amazon SQS harus memiliki pernyataan kebijakan yang memberikan akses prinsipal layanan Amazon SNS ke tindakan API dan. AWS KMS `GenerateDataKey` `Decrypt` Untuk informasi selengkapnya tentang menggunakan SSE, lihat [Mengamankan data Amazon SNS dengan enkripsi sisi server](sns-server-side-encryption.md).

Topik ini menjelaskan cara mengaktifkan SSE untuk topik Amazon SNS dengan langganan antrian Amazon SQS terenkripsi menggunakan. Konsol Manajemen AWS

## Langkah 1: Buat kunci KMS kustom
<a name="create-custom-cmk"></a>

1. Masuk ke [konsol AWS KMS](https://console.aws.amazon.com/kms/) dengan pengguna yang memiliki setidaknya kebijakan `AWSKeyManagementServicePowerUser`.

1. Pilih **Buat kunci**.

1. **Untuk membuat kunci KMS enkripsi simetris, untuk **Key type** pilih Symmetric.**

   Untuk informasi tentang cara membuat kunci KMS asimetris di AWS KMS konsol, lihat [Membuat kunci KMS asimetris](https://docs.aws.amazon.com/kms/latest/developerguide/asymm-create-key.html#create-asymmetric-keys-console) (konsol).

1. Dalam **Penggunaan kunci**, opsi **Enkripsi dan dekripsi** dipilih untuk Anda.

   Untuk informasi tentang cara membuat kunci KMS yang menghasilkan dan memverifikasi kode MAC, lihat [Membuat kunci KMS HMAC](https://docs.aws.amazon.com/kms/latest/developerguide/hmac-create-key.html).

   Untuk informasi tentang **opsi lanjutan**, lihat Kunci [tujuan khusus](https://docs.aws.amazon.com/kms/latest/developerguide/key-types.html).

1. Pilih **Berikutnya**.

1. Ketik alias untuk kunci KMS. Nama alias tidak dapat dimulai dengan **aws/**. **aws/**Awalan dicadangkan oleh Amazon Web Services untuk mewakili Kunci yang dikelola AWS di akun Anda.
**catatan**  
Menambahkan, menghapus, atau memperbarui alias dapat mengizinkan atau menolak izin ke kunci KMS. Untuk detailnya, lihat [ABAC untuk AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/abac.html) dan [Menggunakan alias untuk mengontrol akses ke kunci KMS](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#hmac-key-concept).

   Alias adalah nama tampilan yang dapat Anda gunakan untuk mengidentifikasi kunci KMS. Kami menyarankan Anda memilih alias yang menunjukkan jenis data yang Anda rencanakan untuk dilindungi atau aplikasi yang Anda rencanakan untuk digunakan dengan kunci KMS.

   Alias diperlukan saat Anda membuat kunci KMS di file. Konsol Manajemen AWS Mereka opsional saat Anda menggunakan [CreateKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)operasi.

1. (Opsional) Ketik deskripsi untuk kunci KMS.

   Anda dapat menambahkan deskripsi sekarang atau memperbaruinya kapan saja kecuali [status kuncinya](https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) adalah `Pending Deletion` atau`Pending Replica Deletion`. Untuk menambah, mengubah, atau menghapus deskripsi kunci terkelola pelanggan yang ada, [edit deskripsi](https://docs.aws.amazon.com/kms/latest/developerguide/editing-keys.html) di Konsol Manajemen AWS atau gunakan [UpdateKeyDescription](https://docs.aws.amazon.com/kms/latest/APIReference/API_UpdateKeyDescription.html)operasi.

1. (Opsional) Ketik kunci tanda dan nilai tanda opsional. Untuk menambahkan lebih dari satu tag ke tombol KMS, pilih **Tambah tag**.
**catatan**  
Menandai atau melepas tag kunci KMS dapat mengizinkan atau menolak izin ke kunci KMS. Untuk detailnya, lihat [ABAC untuk AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/abac.html) dan [Menggunakan tag untuk mengontrol akses ke kunci KMS](https://docs.aws.amazon.com/kms/latest/developerguide/tag-authorization.html).

   Saat Anda menambahkan tag ke AWS sumber daya Anda, AWS buat laporan alokasi biaya dengan penggunaan dan biaya yang dikumpulkan berdasarkan tag. Tag juga dapat digunakan untuk mengontrol akses ke kunci KMS. [Untuk informasi tentang menandai kunci KMS, lihat [Menandai kunci](https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html) dan ABAC untuk. AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/abac.html)

1. Pilih **Berikutnya**.

1. Pilih pengguna IAM dan peran yang dapat mengelola kunci KMS.
**catatan**  
Kebijakan kunci ini memberikan kontrol Akun AWS penuh atas kunci KMS ini. Ini memungkinkan administrator akun untuk menggunakan kebijakan IAM untuk memberikan izin kepada prinsipal lain untuk mengelola kunci KMS. Untuk detailnya, lihat [Kebijakan kunci default](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-default.html).  
   
Praktik terbaik IAM mencegah penggunaan pengguna IAM dengan kredensil jangka panjang. Bila memungkinkan, gunakan peran IAM, yang menyediakan kredensi sementara. Untuk detailnya, lihat [Praktik terbaik keamanan di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) di Panduan Pengguna IAM.

1. (Opsional) Untuk mencegah pengguna dan peran IAM yang dipilih menghapus kunci KMS ini, di bagian **Penghapusan kunci** di bagian bawah halaman, kosongkan kotak centang **Izinkan administrator kunci untuk menghapus kunci** ini.

1. Pilih **Berikutnya**.

1. Pilih pengguna IAM dan peran yang dapat menggunakan kunci dalam operasi [kriptografi](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations). Pilih **Berikutnya**.

1. Pada halaman **Meninjau dan mengedit kebijakan kunci**, tambahkan pernyataan berikut ini ke kebijakan kunci, dan kemudian pilih **Selesai**.

   ```
   {
       "Sid": "Allow Amazon SNS to use this key",
       "Effect": "Allow",
       "Principal": {
           "Service": "sns.amazonaws.com"
       },
       "Action": [
           "kms:Decrypt",
           "kms:GenerateDataKey*"
       ],
       "Resource": "*"
   }
   ```

Kunci terkelola pelanggan baru Anda muncul di daftar kunci.

## Langkah 2: Buat topik Amazon SNS terenkripsi
<a name="create-encrypted-topic"></a>

1. Masuk ke [Konsol Amazon SNS](https://console.aws.amazon.com/sns/home).

1. Pada panel navigasi, pilih **Topik**.

1. Pilih **Buat topik**.

1. Pada halaman **Buat topik baru**, untuk **Nama**, masukkan nama topik (sebagai contoh, `MyEncryptedTopic`) dan kemudian pilih **Buat topik**.

1. Perluas bagian **Enkripsi** dan lakukan hal berikut ini: 

   1. Pilih **Aktifkan enkripsi sisi server**.

   1. Tentukan kunci yang dikelola pelanggan. Untuk informasi selengkapnya, lihat [Istilah kunci](sns-server-side-encryption.md#sse-key-terms).

      Untuk setiap jenis kunci yang dikelola pelanggan, **ARN** **Deskripsi**, **Akun**, dan kunci yang dikelola pelanggan ditampilkan.
**penting**  
Jika Anda bukan pemilik kunci yang dikelola pelanggan, atau jika Anda masuk dengan akun yang tidak memiliki `kms:DescribeKey` izin `kms:ListAliases` dan, Anda tidak akan dapat melihat informasi tentang kunci yang dikelola pelanggan di konsol Amazon SNS.  
Mintalah pemilik kunci yang dikelola pelanggan untuk memberi Anda izin ini. Untuk informasi selengkapnya, lihat [Izin API AWS KMS : Referensi Tindakan dan Sumber Daya](https://docs.aws.amazon.com/kms/latest/developerguide/kms-api-permissions-reference.html) dalam *Panduan Developer AWS Key Management Service *.

   1. Untuk **kunci terkelola pelanggan**, pilih **MyCustomKey**[yang Anda buat sebelumnya](#create-custom-cmk), lalu pilih **Aktifkan enkripsi sisi server**.

1. Pilih **Simpan perubahan**.

   SSE diaktifkan untuk topik Anda dan **MyTopic**halaman ditampilkan.

   Status **Enkripsi** topik, AWS **Akun**, **kunci terkelola pelanggan**, **ARN** kunci terkelola pelanggan, dan **Deskripsi** ditampilkan di tab **Enkripsi**.

Topik terenkripsi baru Anda muncul dalam daftar topik.

## Langkah 3: Buat dan berlangganan antrian Amazon SQS terenkripsi
<a name="create-encrypted-queue"></a>

1. Masuk ke [konsol Amazon SQS](https://console.aws.amazon.com/sqs/).

1. Pilih **Buat Antrean Baru**.

1. Pada halaman **Buat Antrean Baru**, lakukan hal berikut ini:

   1. Masukkan **Nama Antrean** (sebagai contoh, `MyEncryptedQueue1`).

   1. Pilih **Antrean Standar**, dan kemudian pilih **Konfigurasi Antrean**.

   1. Pilih **Gunakan SSE**.

   1. Untuk **AWS KMS key**, pilih **MyCustomKey**[yang Anda buat sebelumnya](#create-custom-cmk), lalu pilih **Buat Antrian**.

1. Ulangi proses untuk membuat antrean kedua (sebagai contoh, beri nama `MyEncryptedQueue2`).

   Antrean terenkripsi baru Anda muncul dalam daftar antrean.

1. Pada konsol Amazon SQS, pilih `MyEncryptedQueue1` dan `MyEncryptedQueue2` dan kemudian pilih **Tindakan Antrean**, **Berlangganan Antrean ke Topik SNS**.

1. Dalam kotak dialog **Subscribe to a Topic**, untuk **Pilih Topik** pilih **MyEncryptedTopic**, lalu pilih **Berlangganan**.

   Langganan antrean terenkripsi Anda ke topik terenkripsi Anda ditampilkan di kotak dialog **Hasil Berlangganan Topik**.

1. Pilih **OK**.

## Langkah 4: Publikasikan pesan ke topik terenkripsi Anda
<a name="publish-to-encrypted-topic"></a>

1. Masuk ke [Konsol Amazon SNS](https://console.aws.amazon.com/sns/home).

1. Di panel navigasi, pilih **Topik**.

1. Dari daftar topik, pilih **MyEncryptedTopic**lalu pilih **Publikasikan pesan**.

1. Pada halaman **Terbitkan pesan**, lakukan hal berikut ini:

   1. (Opsional) Di bagian **Detail pesan**, masukkan **Subjek** (sebagai contoh, `Testing message publishing`).

   1. Di bagian **Isi pesan**, masukkan isi pesan (sebagai contoh, `My message body is encrypted at rest.`).

   1. Pilih **Terbitkan pesan**.

Pesan Anda diterbitkan ke antrean terenkripsi berlangganan Anda.

## Langkah 5: Verifikasi pengiriman pesan
<a name="verify-message-delivery"></a>

1. Masuk ke [konsol Amazon SQS](https://console.aws.amazon.com/sqs/).

1. Dari daftar antrian, pilih **MyEncryptedQueue1** lalu pilih **Kirim dan terima** pesan.

1. Pada halaman **Kirim dan terima pesan dalam MyEncryptedQueue 1**, pilih **Poll untuk pesan**.

   Pesan [yang Anda kirim sebelumnya](#publish-to-encrypted-topic) ditampilkan.

1. Pilih **Detail Selengkapnya** untuk melihat pesan Anda.

1. Setelah Anda selesai, pilih **Tutup**.

1. Ulangi proses ini untuk **MyEncryptedQueue2**.