EBS volume should use a customer-managed KMS key
Medium
AWS
General
aws-ec2-volume-ebs-volume-customer-managed-kms
Applies to
AWS::EC2::Volume
What CGPulse checks
A resource passes this rule when kmsKeyId must be set true. Anything else is reported as a finding with the evaluated property value attached as evidence.
How to fix it
Enable EBS encryption to protect data at rest from storage compromise. In AWS Console: EC2 > EBS > Settings > enable Default encryption, or create encrypted snapshots for existing volumes. See: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption.html
Terraform
resource "aws_ebs_volume" "{name}" {
encrypted = true
kms_key_id = aws_kms_key.{name}.arn
}
Compliance frameworks
Is your environment compliant with this rule?
CGPulse checks it — and 621 others — against your Azure and AWS accounts with read-only access.
Related AWS rules
- ACM certificate must be eligible for renewal
- ACM certificate must be in issued status
- Amplify app should have basic auth disabled for production
- API Gateway REST API must have an endpoint configuration
- API Gateway V2 API must be properly configured
- App Runner service must have encryption enabled
- AppSync API must have logging configured
- AppSync API must have X-Ray tracing enabled