【问题标题】:AWS lambda and kms key aliasesAWS lambda 和 kms 密钥别名
【发布时间】:2022-01-01 00:09:05
【问题描述】:

我有一个使用 kms 的 lambda 函数

 {
      "Sid": "KMSDecryption",
      "Effect": "Allow",
      "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey"
      ],
      "Resource": [
        "${KMSArn}"
      ]
    }

最初我在 terraform 中将其设置为仅使用别名,但这不起作用我必须引用“arn”以允许 lambda 访问,这是有意义的。

{....
.....
  policy_file = templatefile("lambda_policy.json", {
    KMSArn = data.aws_kms_alias.key_alias.target_key_arn
  })
}

data "aws_kms_alias" "key_alias" {
  name = "alias/kms_test"
}

我的问题是,现在 lambda 策略在其策略中包含我在控制台中看到的“arn”。旋转密钥时会发生什么,AWS 是否还会更新 lambda 上的 arn 以指向新密钥...

有没有办法在 lambda 策略中引用别名以使其无关紧要?

【问题讨论】:

    标签: amazon-web-services aws-lambda terraform


    【解决方案1】:

    您需要在策略中引用 ARN。你不应该担心旋转。来自documentation

    密钥轮换仅更改 KMS 密钥的密钥材料,即 用于加密操作的加密材料。知识管理系统 key 是同一个逻辑资源,不管有没有或者有多少 次其关键材料的变化。 KMS 密钥的属性不 如下图所示。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-07
      • 2019-11-18
      • 2019-04-21
      • 2020-05-06
      • 2022-11-13
      • 1970-01-01
      • 1970-01-01
      • 2016-02-09
      相关资源
      最近更新 更多