我正在尝试在terraform中创建IAM角色,在2-3种策略中很常见,那么有什么方法可以将这些角色附加到策略上?
resource "aws_iam_role_policy_attachment" "alerts-config-params-sam-cf-accessToKmsKeyIAMPolicy-CZV903G9AVJR" {
role = ["${module.role1.name}","${module.role2.name}","${module.role3.name}",]
policy_arn = "arn:aws:iam::policy"
}
这是我尝试附加3个角色的政策
"${module.role1.name}","${module.role2.name}","${module.role3.name}",
确切的错误是:
aws_iam_role_policy_attachment.AWSLambdaBasicExecutionRole: role must be a single value, not a list
并且如果我多次创建该策略并将其附加到单个角色上,则会出现如下错误:
aws_iam_role_policy_attachment.AWSLambdaBasicExecutionRole: resource repeated multiple times
答案 0 :(得分:0)
如果您正在使用aws_iam_role_policy_attachment
资源,则需要为每个角色创建一个单独的附件。确保给他们提供不同的名称。
或者,您可以考虑使用iam_policy_attachment
,它接受角色列表。不过,请确保您已阅读并理解页面顶部的警告。