如何在 Terraform 中使用 aws 为 SQS 提供的 kms 加密密钥

How to use aws provided kms Encryption Key for SQS in Terraform

我想配置我的 SQS Terraform 脚本以使用 aws 提供的 SSE 密钥。 我知道您可以使用以下代码执行此操作:

resource "aws_sqs_queue" "terraform_queue" {
  name                              = "terraform-example-queue"
  kms_master_key_id                 = "alias/aws/sqs"
  kms_data_key_reuse_period_seconds = 300
}

但是对于这个例子,我需要先创建我自己的 KMS 密钥。在 aws 控制台中,可以使用默认的,而无需自己创建。我如何在 Terraform 中执行此操作,我必须在 kms_master_key_id?

中输入什么

任何服务的默认密钥都由别名 alias/aws/$service 给出。因此,当您提到 alias/aws/sqs 时,您正在为该地区的该服务使用默认的 AWS 托管 KMS 密钥。

这在 AWS user guide:

中有简要介绍

The alias name cannot begin with aws/. The aws/ prefix is reserved by Amazon Web Services to represent AWS managed CMKs in your account.