Description
AWS Key Management Service (KMS) allows customers to rotate the backing key which is key material stored within the KMS which is tied to the key ID of the customer-created customer master key (CMK). It is the backing key that is used to perform cryptographic operations such as encryption and decryption. Automated key rotation currently retains all prior backing keys so that decryption of encrypted data can take place transparently. It is recommended that CMK key rotation be enabled for symmetric keys. Key rotation can not be enabled for any asymmetric CMK.
Rationaleβ
Rotating encryption keys helps reduce the potential impact of a compromised key as data encrypted with a new key cannot be accessed with a previous key that may have been exposed. Keys should be rotated every year, or upon event that would result in the compromise of that key.
Impactβ
Creation, management, and storage of CMKs may require additional time from an administrator.
Auditβ
From Consoleβ
- Sign in to the AWS Management Console and open the KMS console at: https://console.aws.amazon.com/kms.
- In the left navigation pane, click
Customer-managed keys
. - Select a customer managed CMK where
Key spec = SYMMETRIC_DEFAULT
. - Select the
Key rotation
tab. - Ensure the
Automatically rotate this KMS key every year
checkbox is checked. - Repeat steps 3β5 for all customer-managed CMKs where
Key spec = SYMMETRIC_DEFAULT
.
From Command Lineβ
- Run the following command to get a list of all keys and their associated
KeyIds
:
aws kms list-keys
- For each key, note the KeyId and run the following command:
describe-key --key-id <kms_key_id>
- If the response contains
KeySpec = SYMMETRIC_DEFAULT
, run the following command:
aws kms get-key-rotation-status --key-id <kms_key_id>
- Ensure
KeyRotationEnabled
is set totrue
. - Repeat steps 2β4 for all remaining CMKs.