我正在尝试根据 IAM 角色是否存在来设置 KMS 密钥策略。yaml 文件如下所示。
data "aws_iam_policy_document" "key_policy" {
statement {
sid = "Give Access to the my Role"
actions = [
"kms:GenerateDateKey",
"kms:Decrypt"
]
resources = ["*"]
principals {
type = "AWS"
identifiers = ["arn:aws:iam::${var.account_id}:role/myrole"]
}
}
}
这个 terraform 脚本的问题是,如果myrole
我的帐户中不存在它会失败。我们有多个 AWS 账户,其中只有一部分有这个myrole
。我们的 CI 将为所有帐户运行相同的脚本。有没有办法仅在myrole
存在时应用此语句?