説明
SQSのサーバー側暗号化(SSE)は、保存されるメッセージ本文を保護します。新しいキューではデフォルトでSSEが有効になるため、KMSキーの指定がないだけでは暗号化が無効とは限りません。
想定される影響
キューのSSEを明示的に無効にすると、メッセージを保護する追加の暗号化がなくなり、組織のデータ保護要件を満たせない場合があります。
対処方法
sqs_managed_sse_enabled = trueでSSE-SQSを使用するか、kms_master_key_idでSSE-KMSを設定してください。KMSを使う場合は、メッセージの送受信主体に必要なキー権限も付与してください。
例
変更前はSSE-SQSを明示的に無効にした例です。変更後はAWS管理のSQSキーでSSE-KMSを使用しています。
変更前
hcl
resource "aws_sqs_queue" "example" {
name = "terraform-example-queue"
sqs_managed_sse_enabled = false
kms_data_key_reuse_period_seconds = 300
}
変更後
hcl
resource "aws_sqs_queue" "example" {
name = "terraform-example-queue"
kms_master_key_id = "alias/aws/sqs"
kms_data_key_reuse_period_seconds = 300
}