A company stores database backups in an Amazon S3 bucket. The backups are encrypted at rest using a Customer Managed Key (CMK) in AWS Key Management Service (AWS KMS). The company's security policy requires that the encryption keys be rotated annually. Which of the following actions should the solutions architect take to meet these requirements with the least operational overhead?
- Enable automatic key rotation for the Customer Managed Key in AWS KMS, which automatically generates new key material annually while preserving the older key material for decryption.Answer
- BEnable automatic key rotation for the Customer Managed Key in AWS KMS, and schedule an AWS Batch job to immediately decrypt and re-encrypt all existing database backups in the S3 bucket under the new key version.
- CManually create a new Customer Managed Key each year, configure the S3 bucket default encryption to use the new key, and delete the previous key immediately to prevent unauthorized access.
- DStore the encryption key material as a plaintext string parameter in AWS Systems Manager Parameter Store, and configure an AWS Lambda function to update and rotate the parameter annually.
Answer
Enable automatic key rotation for the Customer Managed Key in AWS KMS, which automatically generates new key material annually while preserving the older key material for decryption.
Enabling automatic key rotation on an AWS KMS Customer Managed Key (CMK) is the most operationally efficient method to meet annual rotation requirements. When enabled, AWS KMS automatically generates new key material for the CMK every year. It keeps all older versions of the key material active so that AWS KMS can decrypt any data previously encrypted with those versions. The key ID remains unchanged, meaning application code and S3 bucket configurations do not need to be updated.
Step-by-Step Solution
Key Concept
AWS KMS Automatic Key Rotation