π‘οΈ AWS DynamoDB Table is not encrypted with a KMS keyπ’
- Contextual name: π‘οΈ Table is not encrypted with a KMS keyπ’
- ID:
/ce/ca/aws/dynamodb/table-encryption - Tags:
- π’ Policy with categories
- π’ Policy with type
- π’ Production policy
- Policy Type:
COMPLIANCE_POLICY - Policy Categories:
SECURITY
Logicβ
- π§ prod.logic.yamlπ’
Similar Policiesβ
- Internal:
dec-x-c658697c
Similar Internal Rulesβ
| Rule | Policies | Flags |
|---|---|---|
| βοΈ dec-x-c658697c | 1 |
Descriptionβ
Descriptionβ
This policy identifies AWS DynamoDB Tables that are not encrypted at rest using an AWS KMS key. By default, all DynamoDB tables are encrypted using server-side encryption with an AWS-owned key. However, for enhanced security and compliance control, tables should be configured to use either a Customer-Managed Key (CMK) or an AWS Managed Key stored in AWS Key Management Service (KMS).
Rationaleβ
Encrypting DynamoDB tables with a KMS key provides several advantages over the default AWS-owned key:
- You can manage key lifecycle operations (such as creation, rotation, and access control) directly within AWS KMS.
- All key usage is recorded in AWS CloudTrail, providing a detailed audit trail of data access and decryption events.
- You can define fine-grained IAM policies on the KMS key to restrict which users or roles can access encrypted data in the table.
Impactβ
Enabling encryption with a KMS key may incur additional costs associated with AWS KMS usage.
Auditβ
This policy marks an AWS DynamoDB Table as
INCOMPLIANTifSSE: Statusfield is not set to ENABLED.... see more
Remediationβ
Remediationβ
Update an Encrypted Table with an AWS Managed Keyβ
From Command Lineβ
To enable encryption at rest using the AWS managed key, run the following command:
aws dynamodb update-table \
--table-name {{table-name}} \
--sse-specification Enabled=true,SSEType=KMSUpdate an Encrypted Table with a Customer-Managed Keyβ
To enable encryption at rest using a Customer-Managed key (CMK), specify the key ID in the command:
aws dynamodb update-table \
--table-name {{table-name}} \
--sse-specification Enabled=true,SSEType=KMS,KMSMasterKeyId={{kms-key-id}}