A company is building an application in the AWS Cloud. The application will store data in Amazon S3 buckets in two AWS Regions. The company must use an AWS Key Management Service (AWS KMS) customer managed key to encrypt all data that is stored in the S3 buckets. The data in both S3 buckets must be encrypted and decrypted with the same KMS key. The data and the key must be stored in each of the two Regions.
Which solution will meet these requirements with the LEAST operational overhead?
A. Create an S3 bucket in each Region. Configure the S3 buckets to use server-side encryption with Amazon S3 managed encryption keys (SSE-S3). Configure replication between the S3 buckets.
B. Create a customer managed multi-Region KMS key. Create an S3 bucket in each Region. Configure replication between the S3 buckets. Configure the application to use the KMS key with client-side encryption.
C. Create a customer managed KMS key and an S3 bucket in each Region. Configure the S3 buckets to use server-side encryption with Amazon S3 managed encryption keys (SSE-S3). Configure replication between the S3 buckets.
D. Create a customer managed KMS key and an S3 bucket in each Region. Configure the S3 buckets to use server-side encryption with AWS KMS keys (SSE-KMS). Configure replication between the S3 buckets.
D
技巧:排除明显错误选项,在没有明显错误的选项中选择最合理的选项。
一家公司正在 AWS 云中构建应用程序。该应用程序将在两个 AWS 区域的 Amazon S3 存储桶中存储数据。公司必须使用 AWS 密钥管理服务(AWS KMS)客户管理的密钥来加密存储在 S3 存储桶中的所有数据。两个 S3 存储桶中的数据必须使用相同的 KMS 密钥进行加密和解密,数据和密钥必须分别存储在两个区域中。
题目要求在两个 AWS 区域中部署 S3 存储桶,并使用同一个客户管理的 KMS 密钥(Customer Managed Key, CMK)对所有数据进行加密和解密,同时需满足以下条件:
数据加密:两个区域的 S3 存储桶均使用相同的 KMS 密钥。
密钥存储:KMS 密钥和数据需在两个区域中均可用(避免跨区域调用密钥导致延迟或失败)。
最低运维开销:方案需尽可能简化配置和管理。
A. 不正确。在每个区域中创建一个 S3 存储桶。将 S3 存储桶配置为使用具有 Amazon S3 托管加密密钥(SSE-S3)的服务器端加密。配置 S3 存储桶之间的复制。SSE-S3 使用 S3 管理的密钥,无需配置 KMS,而不是客户管理的 KMS 密钥。这与题目要求的“使用 AWS KMS 客户管理的密钥”不符。即使配置了复制,数据也是使用 S3 管理的密钥加密的,无法满足使用相同 KMS 密钥的要求。
B. 不正确。创建客户管理的多区域 KMS 密钥。在每个区域中创建一个 S3 存储桶。配置 S3 存储桶之间的复制。将应用程序配置为使用带有客户端加密的 KMS 密钥。题目未要求客户端加密,客户端加密需要应用程序自行管理加密 / 解密逻辑,增加开发复杂度。
C. 不正确。在每个区域中创建客户管理的 KMS 密钥和 S3 存储桶。将 S3 存储桶配置为使用具有 Amazon S3 托管加密密钥(SSE-S3)的服务器端加密。配置 S3 存储桶之间的复制。SSE-S3 使用的是 S3 管理的密钥,而不是客户管理的 KMS 密钥。此外,客户管理的 KMS 密钥默认是单区域密钥(仅在创建区域可用),无法直接在另一个区域使用。若需跨区域使用,需手动在每个区域创建密钥副本(或使用密钥轮换策略),增加运维复杂度。此外,跨区域复制时,若源存储桶和目标存储桶的 KMS 密钥不同,可能导致复制失败或数据无法解密。
D. 正确。在每个区域中创建客户管理的 KMS 密钥和 S3 存储桶。将 S3 存储桶配置为使用 AWS KMS 密钥(SSE-KMS)进行服务器端加密。配置 S3 存储桶之间的复制。SSE-KMS 使用客户管理的 KMS 密钥加密,支持密钥轮换、审计和细粒度访问控制。客户在一个区域创建多区域密钥后,AWS 会自动在目标区域生成等效的密钥副本(共享密钥材料,但独立管理)。应用程序在任一区域均可使用相同的密钥 ARN 访问密钥。两个区域的 S3 存储桶均配置为使用 SSE-KMS,并指定多区域 KMS 密钥的 ARN。跨区域复制时,S3 会自动处理密钥上下文(因密钥在两个区域均可用)。