SQSキューのサーバー側暗号化設定の確認

キューの暗号化でメッセージ本文を保護してください。

説明

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
}

参考資料