Kinesis stream must use KMS encryption
High
AWS
General
aws-kinesis-stream-encryption
Applies to
AWS::Kinesis::Stream
What CGPulse checks
A resource passes this rule when encryptionType must equal KMS. Anything else is reported as a finding with the evaluated property value attached as evidence.
How to fix it
Enable encryption at rest to protect stream data from media compromise. In AWS Console: Kinesis > Data streams > select stream > Edit > enable Server-side encryption. See: https://docs.aws.amazon.com/streams/latest/dev/server-side-encryption.html
CLI
aws kinesis start-stream-encryption --stream-name "{name}" --encryption-type KMS --key-id alias/aws/kinesisTerraform
resource "aws_kinesis_stream" "{name}" {
encryption_type = "KMS"
kms_key_id = aws_kms_key.{name}.id
}
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