

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

# Mengelola tabel yang dienkripsi di DynamoDB
<a name="encryption.tutorial"></a>

Anda dapat menggunakan Konsol Manajemen AWS atau AWS Command Line Interface (AWS CLI) untuk menentukan kunci enkripsi pada tabel baru dan memperbarui kunci enkripsi pada tabel yang ada di Amazon DynamoDB.

**Topics**
+ [Menentukan kunci enkripsi untuk tabel baru](#encryption.tutorial-creating)
+ [Memperbarui kunci enkripsi](#encryption.tutorial-update)

## Menentukan kunci enkripsi untuk tabel baru
<a name="encryption.tutorial-creating"></a>

Ikuti langkah berikut untuk menentukan kunci enkripsi pada tabel baru menggunakan konsol Amazon DynamoDB atau AWS CLI.

### Membuat tabel yang dienkripsi (konsol)
<a name="encryption.tutorial-console"></a>

1. Masuk ke Konsol Manajemen AWS dan buka konsol DynamoDB di. [ https://console.aws.amazon.com/dynamodb/ ](https://console.aws.amazon.com/dynamodb/)

1.  Di panel navigasi di sisi kiri konsol, pilih **Tabel**.

1. Pilih **Buat Tabel**. Untuk **Nama tabel**, masukkan **Music**. Untuk kunci primer, masukkan **Artist**, dan untuk kunci urutan, masukkan **SongTitle**, keduanya sebagai string.

1. Di **Pengaturan**, pastikan bahwa **Sesuaikan pengaturan** dipilih.
**catatan**  
Jika ** Gunakan pengaturan default ** dipilih, tabel dienkripsi Kunci milik AWS saat diam tanpa biaya tambahan.

1. Di bawah ** Enkripsi saat diam**, pilih jenis enkripsi - Kunci milik AWS, Kunci yang dikelola AWS, atau kunci yang dikelola pelanggan.
   +  **Dimiliki oleh Amazon DynamoDB. ** AWS kunci yang dimiliki, secara khusus dimiliki dan dikelola oleh DynamoDB. Anda tidak dikenakan biaya tambahan untuk menggunakan kunci ini.
   + **AWS kunci yang dikelola**. Alias kunci: `aws/dynamodb`. Kunci disimpan di akun Anda dan dikelola oleh AWS Key Management Service (AWS KMS). AWS KMS dikenakan biaya.
   +  **Disimpan di akun Anda, serta dimiliki dan dikelola oleh Anda.** Kunci yang dikelola pelanggan. Kunci disimpan di akun Anda dan dikelola oleh AWS Key Management Service (AWS KMS). AWS KMS dikenakan biaya.
**catatan**  
Jika Anda memilih untuk memiliki dan mengelola kunci Anda sendiri, pastikan Kebijakan Kunci KMS diatur dengan tepat. Untuk informasi selengkapnya termasuk contoh, lihat [Kebijakan kunci untuk kunci yang dikelola pelanggan](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk).

1. Pilih **Buat tabel** untuk membuat tabel terenkripsi. Untuk mengonfirmasi jenis enkripsi, pilih detail tabel pada tab **Gambaran umum** dan tinjau bagian **Detail tambahan**.

### Membuat tabel terenkripsi (AWS CLI)
<a name="encryption.tutorial-cli"></a>

Gunakan AWS CLI untuk membuat tabel dengan kunci default Kunci milik AWS, kunci Kunci yang dikelola AWS, atau yang dikelola pelanggan untuk Amazon DynamoDB.

**Untuk membuat tabel terenkripsi dengan default Kunci milik AWS**
+ Buat tabel `Music` yang dienkripsi seperti berikut.

  ```
  aws dynamodb create-table \
    --table-name Music \
    --attribute-definitions \
        AttributeName=Artist,AttributeType=S \
        AttributeName=SongTitle,AttributeType=S \
    --key-schema \
        AttributeName=Artist,KeyType=HASH \
        AttributeName=SongTitle,KeyType=RANGE \
    --provisioned-throughput \
        ReadCapacityUnits=10,WriteCapacityUnits=5
  ```
**catatan**  
Tabel ini sekarang dienkripsi menggunakan default Kunci milik AWS di akun layanan DynamoDB.

**Untuk membuat tabel terenkripsi dengan Kunci yang dikelola AWS untuk DynamoDB**
+ Buat tabel `Music` yang dienkripsi seperti berikut.

  ```
  aws dynamodb create-table \
    --table-name Music \
    --attribute-definitions \
        AttributeName=Artist,AttributeType=S \
        AttributeName=SongTitle,AttributeType=S \
    --key-schema \
        AttributeName=Artist,KeyType=HASH \
        AttributeName=SongTitle,KeyType=RANGE \
    --provisioned-throughput \
        ReadCapacityUnits=10,WriteCapacityUnits=5 \
    --sse-specification Enabled=true,SSEType=KMS
  ```

   Status `SSEDescription` tabel diatur menjadi `ENABLED` dan `SSEType` adalah `KMS`. 

  ```
  "SSEDescription": {
    "SSEType": "KMS",
    "Status": "ENABLED",
    "KMSMasterKeyArn": "arn:aws:kms:us-east-1:123456789012:key/abcd1234-abcd-1234-a123-ab1234a1b234",
  }
  ```

**Untuk membuat tabel yang dienkripsi dengan kunci yang dikelola pelanggan untuk DynamoDB**
+ Buat tabel `Music` yang dienkripsi seperti berikut.

  ```
  aws dynamodb create-table \
    --table-name Music \
    --attribute-definitions \
        AttributeName=Artist,AttributeType=S \
        AttributeName=SongTitle,AttributeType=S \
    --key-schema \
        AttributeName=Artist,KeyType=HASH \
        AttributeName=SongTitle,KeyType=RANGE \
    --provisioned-throughput \
        ReadCapacityUnits=10,WriteCapacityUnits=5 \
    --sse-specification Enabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234
  ```
**catatan**  
Untuk itu`KMSMasterKeyId`, Anda dapat menggunakan ID kunci, kunci ARN, atau alias kunci. Jika Anda menggunakan alias kunci (misalnya,`alias/my-key`), DynamoDB menyelesaikan alias dan mengaitkan AWS KMS kunci yang mendasarinya dengan tabel. Dalam deskripsi tabel, `KMSMasterKeyArn` akan selalu menampilkan kunci ARN dari kunci yang diselesaikan, bukan alias. Untuk informasi selengkapnya tentang pengidentifikasi [ kunci, lihat Pengidentifikasi kunci (KeyId) ](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id) di Panduan *AWS Key Management Service Pengembang*.

   Status `SSEDescription` dari deskripsi tabel diatur menjadi `ENABLED` dan `SSEType` adalah `KMS`.

  ```
  "SSEDescription": {
    "SSEType": "KMS",
    "Status": "ENABLED",
    "KMSMasterKeyArn": "arn:aws:kms:us-east-1:123456789012:key/abcd1234-abcd-1234-a123-ab1234a1b234",
  }
  ```

## Memperbarui kunci enkripsi
<a name="encryption.tutorial-update"></a>

Anda juga dapat menggunakan konsol DynamoDB atau AWS CLI untuk memperbarui kunci enkripsi tabel yang ada antara kunci Kunci milik AWS, Kunci yang dikelola AWS, dan yang dikelola pelanggan kapan saja.

### Memperbarui kunci enkripsi (konsol)
<a name="encryption.tutorial-update-console"></a>

1. Masuk ke Konsol Manajemen AWS dan buka konsol DynamoDB di. [ https://console.aws.amazon.com/dynamodb/ ](https://console.aws.amazon.com/dynamodb/)

1.  Di panel navigasi di sisi kiri konsol, pilih **Tabel**.

1. Pilih tabel yang akan Anda perbarui.

1. Pilih dropdown **Tindakan**, lalu pilih opsi **Perbarui pengaturan**.

1. Buka tab **Pengaturan tambahan**.

1. Di bawah **Enkripsi**, pilih **Kelola enkripsi**.

1. Pilih jenis enkripsi:
   +  **Dimiliki oleh Amazon DynamoDB.** Kun AWS KMS cinya dimiliki dan dikelola oleh DynamoDB. Anda tidak dikenakan biaya tambahan untuk menggunakan kunci ini.
   + **AWS kunci terkelola Alias ** kunci:`aws/dynamodb`. Kunci disimpan di akun Anda dan dikelola oleh AWS Key Management Service. (AWS KMS). AWS KMS dikenakan biaya.
   +  **Disimpan di akun Anda, serta dimiliki dan dikelola oleh Anda.** Kunci disimpan di akun Anda dan dikelola oleh AWS Key Management Service. (AWS KMS). AWS KMS dikenakan biaya.
**catatan**  
Jika Anda memilih untuk memiliki dan mengelola kunci Anda sendiri, pastikan Kebijakan Kunci KMS diatur dengan tepat. Untuk informasi selengkapnya, lihat [Kebijakan kunci untuk kunci yang dikelola pelanggan](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk).

   Lalu pilih **Simpan** untuk memperbarui tabel yang dienkripsi. Untuk mengonfirmasi jenis enkripsi, periksa detail tabel di bawah tab **Gambaran Umum**.

### Memperbarui kunci enkripsi (AWS CLI)
<a name="encryption.tutorial-update-cli"></a>

Contoh-contoh berikut menunjukkan cara memperbarui tabel yang dienkripsi menggunakan AWS CLI.

**Untuk memperbarui tabel terenkripsi dengan default Kunci milik AWS**
+ Perbarui tabel `Music` yang dienkripsi, seperti pada contoh berikut.

  ```
  aws dynamodb update-table \
    --table-name Music \
    --sse-specification Enabled=false
  ```
**catatan**  
Tabel ini sekarang dienkripsi menggunakan default Kunci milik AWS di akun layanan DynamoDB.

**Untuk memperbarui tabel terenkripsi dengan Kunci yang dikelola AWS untuk DynamoDB**
+ Perbarui tabel `Music` yang dienkripsi, seperti pada contoh berikut.

  ```
  aws dynamodb update-table \
    --table-name Music \
    --sse-specification Enabled=true
  ```

   Status `SSEDescription` dari deskripsi tabel diatur menjadi `ENABLED` dan `SSEType` adalah `KMS`.

  ```
  "SSEDescription": {
    "SSEType": "KMS",
    "Status": "ENABLED",
    "KMSMasterKeyArn": "arn:aws:kms:us-east-1:123456789012:key/abcd1234-abcd-1234-a123-ab1234a1b234",
  }
  ```

**Untuk memperbarui tabel yang dienkripsi dengan kunci yang dikelola pelanggan untuk DynamoDB**
+ Perbarui tabel `Music` yang dienkripsi, seperti pada contoh berikut.

  ```
  aws dynamodb update-table \
    --table-name Music \
    --sse-specification Enabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234
  ```
**catatan**  
Untuk itu`KMSMasterKeyId`, Anda dapat menggunakan ID kunci, kunci ARN, atau alias kunci. Jika Anda menggunakan alias kunci (misalnya,`alias/my-key`), DynamoDB menyelesaikan alias dan mengaitkan AWS KMS kunci yang mendasarinya dengan tabel. Dalam deskripsi tabel, `KMSMasterKeyArn` akan selalu menampilkan kunci ARN dari kunci yang diselesaikan, bukan alias.

   Status `SSEDescription` dari deskripsi tabel diatur menjadi `ENABLED` dan `SSEType` adalah `KMS`. 

  ```
  "SSEDescription": {
    "SSEType": "KMS",
    "Status": "ENABLED",
    "KMSMasterKeyArn": "arn:aws:kms:us-east-1:123456789012:key/abcd1234-abcd-1234-a123-ab1234a1b234",
  }
  ```