Skip to content

enable-queue-encryption

Default Severity: high

Explanation

Queues should be encrypted with customer managed KMS keys and not default AWS managed keys, in order to allow granular control over access to specific queues.

Possible Impact

The SQS queue messages could be read if compromised

Suggested Resolution

Turn on SQS Queue encryption

Insecure Example

The following example will fail the aws-sqs-enable-queue-encryption check.

 resource "aws_sqs_queue" "bad_example" {
    # no key specified
 }

Secure Example

The following example will pass the aws-sqs-enable-queue-encryption check.

 resource "aws_sqs_queue" "good_example" {
    kms_master_key_id = "/blah"
 }