

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

# Enkripsi data saat istirahat untuk Amazon SES
<a name="encryption-rest"></a>

Secara default, Amazon SES mengenkripsi semua data saat istirahat. Enkripsi secara default membantu mengurangi overhead operasional dan kompleksitas yang terlibat dalam melindungi data. Enkripsi juga memungkinkan Anda untuk membuat arsip Mail Manager yang memenuhi kepatuhan enkripsi yang ketat dan persyaratan peraturan.

SES menyediakan opsi enkripsi berikut:
+ **AWS kunci yang dimiliki** - SES menggunakan ini secara default. Anda tidak dapat melihat, mengelola, atau menggunakan kunci yang AWS dimiliki, atau mengaudit penggunaannya. Namun, Anda tidak perlu mengambil tindakan apa pun atau mengubah program apa pun untuk melindungi kunci yang mengenkripsi data Anda. Untuk informasi selengkapnya, lihat [kunci yang AWS dimiliki](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk) di *Panduan AWS Key Management Service Pengembang*. 
+ **Kunci terkelola pelanggan** — SES mendukung penggunaan kunci terkelola pelanggan simetris yang Anda buat, miliki, dan kelola. Karena Anda memiliki kontrol penuh atas enkripsi, Anda dapat melakukan tugas-tugas seperti: 
  + Menetapkan dan memelihara kebijakan utama
  + Menetapkan dan memelihara kebijakan dan hibah IAM
  + Mengaktifkan dan menonaktifkan kebijakan utama
  + Memutar bahan kriptografi kunci
  + Menambahkan tanda
  + Membuat alias kunci
  + Kunci penjadwalan untuk penghapusan

  Untuk menggunakan kunci Anda sendiri, pilih kunci yang dikelola pelanggan saat Anda membuat sumber daya SES Anda.

  Untuk informasi selengkapnya, lihat [Kunci terkelola pelanggan](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) di *Panduan AWS Key Management Service Pengembang*. 

**catatan**  
SES secara otomatis mengaktifkan enkripsi saat istirahat menggunakan kunci yang AWS dimiliki tanpa biaya.   
Namun, AWS KMS biaya berlaku untuk menggunakan kunci yang dikelola pelanggan. Untuk informasi selengkapnya tentang harga, lihat [AWS Key Management Service harga](https://aws.amazon.com/kms/pricing/).

## Buat kunci terkelola pelanggan
<a name="create-key"></a>

 Anda dapat membuat kunci terkelola pelanggan simetris dengan menggunakan Konsol Manajemen AWS, atau. AWS KMS APIs

**Untuk membuat kunci terkelola pelanggan simetris**

Ikuti langkah-langkah untuk [Membuat kunci KMS enkripsi simetris](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk) di Panduan *AWS Key Management Service Pengembang*.

**catatan**  
Untuk pengarsipan, kunci Anda harus memenuhi persyaratan berikut:  
Kuncinya harus simetris.
Asal bahan utama harus`AWS_KMS`.
Penggunaan kuncinya harus`ENCRYPT_DECRYPT`.

**Kebijakan utama**

Kebijakan utama mengontrol akses ke kunci yang dikelola pelanggan Anda. Setiap kunci yang dikelola pelanggan harus memiliki persis satu kebijakan utama, yang berisi pernyataan yang menentukan siapa yang dapat menggunakan kunci dan bagaimana mereka dapat menggunakannya. Saat membuat kunci terkelola pelanggan, Anda dapat menentukan kebijakan kunci. Untuk informasi selengkapnya, lihat [Mengelola akses ke kunci terkelola pelanggan](https://docs.aws.amazon.com/kms/latest/developerguide/control-access-overview.html#managing-access) di *Panduan AWS Key Management Service Pengembang*.

Untuk menggunakan kunci terkelola pelanggan Anda dengan pengarsipan Mail Manager, kebijakan kunci Anda harus mengizinkan operasi API berikut:
+ [kms: DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) — Memberikan detail kunci yang dikelola pelanggan yang memungkinkan SES untuk memvalidasi kunci.
+ [kms: GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html) — Memungkinkan SES untuk menghasilkan kunci data untuk mengenkripsi data saat istirahat.
+ [KMS: Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) — Memungkinkan SES untuk mendekripsi data yang disimpan sebelum mengembalikannya ke klien API.

Contoh berikut menunjukkan kebijakan kunci tipikal:

```
{
            "Sid": "Allow SES to encrypt/decrypt",
            "Effect": "Allow",
            "Principal": {
                "Service": "ses.amazonaws.com"
            },
            "Action": [
                "kms:GenerateDataKey",
                "kms:Decrypt",
                "kms:DescribeKey"
            ],
            "Resource": "*"
        },
```

Untuk informasi selengkapnya, lihat [menentukan izin dalam kebijakan](https://docs.aws.amazon.com/kms/latest/developerguide/control-access-overview.html#overview-policy-elements), di Panduan *AWS Key Management Service Pengembang*.

*Untuk informasi selengkapnya tentang pemecahan masalah, lihat [akses kunci pemecahan masalah](https://docs.aws.amazon.com/kms/latest/developerguide/policy-evaluation.html#example-no-iam), di Panduan Pengembang.AWS Key Management Service *

## Menentukan kunci terkelola pelanggan untuk Mail Manager
<a name="enable-custom-encryption"></a>

Anda dapat menentukan kunci yang dikelola pelanggan sebagai alternatif untuk menggunakan kunci AWS yang dimiliki. **Saat Anda membuat arsip atau mengonfigurasi titik akhir masuk dengan otentikasi TLS (mTLS) bersama, Anda dapat menentukan kunci data dengan memasukkan ARN kunci KMS.** Untuk pengarsipan, Mail Manager menggunakan kunci untuk mengenkripsi semua data pelanggan dalam arsip. Untuk titik akhir ingress mTLS, Mail Manager menggunakan kunci untuk mengenkripsi konten trust store saat istirahat.
+ **ARN kunci KMS** — Pengidentifikasi [kunci untuk AWS KMS kunci yang](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id) dikelola pelanggan. Masukkan ID kunci, ARN kunci, nama alias, atau ARN alias.

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

[Konteks enkripsi](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context) adalah kumpulan opsional pasangan kunci-nilai yang berisi informasi kontekstual tambahan tentang data.

AWS KMS menggunakan konteks enkripsi sebagai data otentikasi tambahan untuk mendukung enkripsi yang diautentikasi. Bila Anda menyertakan konteks enkripsi dalam permintaan untuk mengenkripsi data, AWS KMS mengikat konteks enkripsi ke data terenkripsi. Untuk mendekripsi data, Anda menyertakan konteks enkripsi yang sama dalam permintaan.

**catatan**  
Amazon SES tidak mendukung konteks enkripsi untuk pembuatan arsip. Sebagai gantinya, Anda menggunakan kebijakan IAM atau KMS. Misalnya kebijakan, lihat[Kebijakan pembuatan arsip](#archive-creation-policies), nanti di bagian ini.

**Konteks enkripsi Amazon SES**

SES menggunakan konteks enkripsi yang sama di semua operasi AWS KMS kriptografi, di mana kuncinya adalah `aws:ses:arn` dan nilainya adalah sumber daya [Amazon Resource Name](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) (ARN).

**Example**  

```
"encryptionContext": {
    "aws:ses:arn": "arn:aws:ses:us-west-2:111122223333:ExampleResourceName/ExampleResourceID"
}
```

**Menggunakan konteks enkripsi untuk pemantauan**

Bila Anda menggunakan kunci terkelola pelanggan simetris untuk mengenkripsi sumber daya SES Anda, Anda juga dapat menggunakan konteks enkripsi dalam catatan audit dan log untuk mengidentifikasi bagaimana kunci terkelola pelanggan digunakan. Konteks enkripsi juga muncul di [log yang dihasilkan oleh AWS CloudTrail atau Amazon CloudWatch Logs](#example-custom-encryption).

**Menggunakan konteks enkripsi untuk mengontrol akses ke kunci terkelola pelanggan Anda**

Anda dapat menggunakan konteks enkripsi dalam kebijakan utama dan kebijakan IAM `conditions` untuk mengontrol akses ke kunci terkelola pelanggan simetris Anda. Anda juga dapat menggunakan kendala konteks enkripsi dalam hibah.

SES menggunakan batasan konteks enkripsi dalam hibah untuk mengontrol akses ke kunci yang dikelola pelanggan di akun atau wilayah Anda. Batasan hibah mengharuskan operasi yang diizinkan oleh hibah menggunakan konteks enkripsi yang ditentukan.

**Example**  
Berikut ini adalah contoh pernyataan kebijakan kunci untuk memberikan akses ke kunci yang dikelola pelanggan untuk konteks enkripsi tertentu. Kondisi dalam pernyataan kebijakan ini mengharuskan hibah memiliki batasan konteks enkripsi yang menentukan konteks enkripsi.  

```
{
    "Sid": "Enable DescribeKey",
    "Effect": "Allow",
    "Principal": {
        "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole"
     },
     "Action": "kms:DescribeKey",
     "Resource": "*"
},
{
     "Sid": "Enable CreateGrant",
     "Effect": "Allow",
     "Principal": {
         "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole"
     },
     "Action": "kms:CreateGrant",
     "Resource": "*",
     "Condition": {
         "StringEquals": {
             "kms:EncryptionContext:aws:ses:arn": "arn:aws:ses:us-west-2:111122223333:ExampleResourceName/ExampleResourceID"
          }
     }
}
```

## Kebijakan pembuatan arsip
<a name="archive-creation-policies"></a>

Contoh kebijakan berikut menunjukkan cara mengaktifkan pembuatan arsip. Kebijakan bekerja pada semua aset.

**Kebijakan IAM**

```
{
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "ses:CreateArchive",
            "Resource": [
                "*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kms:DescribeKey",
                "kms:GenerateDataKey",
                "kms:Decrypt"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "kms:ViaService": "ses.us-east-1.amazonaws.com",
                    "kms:CallerAccount": "012345678910"
                }
            }
        }
```

**AWS KMS kebijakan**

```
{
            "Sid": "Allow SES to encrypt/decrypt",
            "Effect": "Allow",
            "Principal": {
                "Service": "ses.amazonaws.com"
            },
            "Action": [
                "kms:GenerateDataKey",
                "kms:Decrypt",
                "kms:DescribeKey"
            ],
            "Resource": "*"
        },
```

## Kebijakan mTLS titik akhir Ingress
<a name="ingress-endpoint-mtls-policies"></a>

Contoh kebijakan berikut memungkinkan penggunaan kunci terkelola pelanggan untuk mengenkripsi konten trust store untuk otentikasi TLS (mTLS) bersama pada titik akhir masuknya Manajer Mail.

Untuk membuat cakupan kebijakan contoh ke titik akhir ingress tertentu, ganti wildcard dalam kondisi dengan ARN sumber daya yang tepat (misalnya,). `arn:aws:ses:us-east-1:111122223333:mailmanager-ingress-point/inp-ab1c2defgh3ij4klmno5pq6rs`

**Kebijakan IAM**

```
{
    "Effect": "Allow",
    "Principal": {
      "AWS": "arn:aws:iam::111122223333:role/rolename"
    },
    "Action": [
      "kms:GenerateDataKey",
      "kms:Decrypt"
    ],
    "Resource": "*",
    "Condition": {
      "StringEquals": {
        "kms:ViaService": "ses.us-east-1.amazonaws.com"
      },
      "StringLike": {
        "kms:EncryptionContext:aws:ses:arn": [
          "arn:aws:ses:us-east-1:111122223333:mailmanager-ingress-point/*"
        ]
      }
    }
  },
  {
    "Effect": "Allow",
    "Principal": {
      "AWS": "arn:aws:iam::111122223333:role/rolename"
    },
    "Action": [
      "kms:DescribeKey"
    ],
    "Resource": "*",
    "Condition": {
      "StringEquals": {
        "kms:ViaService": "ses.us-east-1.amazonaws.com"
      }
    }
  }
```

**AWS KMS kebijakan**

```
{
    "Effect": "Allow",
    "Principal": {
      "Service": "ses.amazonaws.com"
    },
    "Action": [
      "kms:Decrypt"
    ],
    "Resource": "*",
    "Condition": {
      "StringLike": {
        "aws:SourceArn": [
          "arn:aws:ses:us-east-1:111122223333:mailmanager-ingress-point/*"
        ],
        "kms:EncryptionContext:aws:ses:arn": [
          "arn:aws:ses:us-east-1:111122223333:mailmanager-ingress-point/*"
        ]
      }
    }
  },
  {
    "Effect": "Allow",
    "Principal": {
      "Service": "ses.amazonaws.com"
    },
    "Action": [
      "kms:DescribeKey"
    ],
    "Resource": "*",
    "Condition": {
      "StringLike": {
        "aws:SourceArn": [
          "arn:aws:ses:us-east-1:111122223333:mailmanager-ingress-point/*"
        ]
      }
    }
  }
```

## Memantau kunci enkripsi Anda untuk Amazon SES
<a name="example-custom-encryption"></a>

Saat Anda menggunakan kunci yang dikelola AWS KMS pelanggan dengan sumber daya Amazon SES, Anda dapat menggunakan [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)atau [Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) untuk melacak permintaan yang dikirimkan SES AWS KMS.

Contoh berikut adalah AWS CloudTrail peristiwa untuk`GenerateDataKey`,`Decrypt`, dan `DescribeKey` untuk memantau operasi KMS yang dipanggil oleh SES untuk mengakses data yang dienkripsi oleh kunci yang dikelola pelanggan Anda:

------
#### [ GenerateDataKey ]

Saat Anda mengaktifkan kunci terkelola AWS KMS pelanggan untuk sumber daya Anda, SES membuat kunci tabel yang unik. Ini mengirimkan `GenerateDataKey` permintaan ke AWS KMS yang menentukan kunci yang dikelola AWS KMS pelanggan untuk sumber daya.

Saat Anda mengaktifkan kunci terkelola AWS KMS pelanggan untuk sumber daya arsip Manajer Mail Anda, kunci tersebut akan digunakan `GenerateDataKey` saat mengenkripsi data arsip saat istirahat.

Contoh peristiwa berikut mencatat `GenerateDataKey` operasi:

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "ses.amazonaws.com"
    },
    "eventTime": "2021-04-22T17:07:02Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "GenerateDataKey",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "172.12.34.56",
    "userAgent": "ExampleDesktop/1.0 (V1; OS)",
    "requestParameters": {
        "encryptionContext": {
            "aws:ses:arn": "arn:aws:ses:us-west-2:111122223333:ExampleResourceName/ExampleResourceID"
        },
        "keySpec": "AES_256",
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE"
    },
    "responseElements": null,
    "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333",
    "sharedEventID": "57f5dbee-16da-413e-979f-2c4c6663475e"
}
```

------
#### [ Decrypt ]

Saat Anda mengakses sumber daya terenkripsi, SES memanggil `Decrypt` operasi untuk menggunakan kunci data terenkripsi yang disimpan untuk mengakses data terenkripsi. 

Contoh peristiwa berikut mencatat `Decrypt` operasi:

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "ses.amazonaws.com"
    },
    "eventTime": "2021-04-22T17:10:51Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "Decrypt",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "172.12.34.56",
    "userAgent": "ExampleDesktop/1.0 (V1; OS)",
    "requestParameters": {
        "encryptionContext": {
            "aws:ses:arn": "arn:aws:ses:us-west-2:111122223333:ExampleResourceName/ExampleResourceID"
        },
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE",
        "encryptionAlgorithm": "SYMMETRIC_DEFAULT"
    },
    "responseElements": null,
    "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333",
    "sharedEventID": "dc129381-1d94-49bd-b522-f56a3482d088"
}
```

------
#### [ DescribeKey ]

SES menggunakan `DescribeKey` operasi untuk memverifikasi apakah kunci terkelola AWS KMS pelanggan yang terkait dengan sumber daya Anda ada di akun dan wilayah.

Contoh peristiwa berikut mencatat `DescribeKey` operasi:

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01",
        "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01",
        "accountId": "111122223333",
        "accessKeyId": "AKIAIOSFODNN7EXAMPLE3",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01",
                "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01",
                "accountId": "111122223333",
                "userName": "Admin"
            },
            "webIdFederationData": {},
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2021-04-22T17:02:00Z"
            }
        },
        "invokedBy": "ses.amazonaws.com"
    },
    "eventTime": "2021-04-22T17:07:02Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "DescribeKey",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "172.12.34.56",
    "userAgent": "ExampleDesktop/1.0 (V1; OS)",
    "requestParameters": {
        "keyId": "00dd0db0-0000-0000-ac00-b0c000SAMPLE"
    },
    "responseElements": null,
    "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333"
}
```

------

## Pelajari selengkapnya
<a name="Learn-more-data-at-rest-encryption"></a>

Sumber daya berikut memberikan informasi lebih lanjut tentang enkripsi data saat istirahat.
+ Untuk informasi selengkapnya tentang [konsep AWS Key Management Service dasar](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html), lihat *Panduan AWS Key Management Service Pengembang*.
+ Untuk informasi selengkapnya tentang [praktik terbaik Keamanan AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/best-practices.html), lihat *Panduan AWS Key Management Service Pengembang*.