terraform - 有没有办法将多个角色附加到单个策略?
问题描述
我正在尝试在 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
解决方案
如果您正在使用aws_iam_role_policy_attachment
资源,则需要为每个角色创建一个单独的附件。确保你给他们不同的名字。
或者,您可以考虑使用iam_policy_attachment
,它接受角色列表。不过,请确保您阅读并理解页面顶部的警告。
推荐阅读
- python - 通过python上传docker镜像到GCR
- python - 在 ||Python 中根据文本文件中的文本打印特定行
- selenium - 隐式等待不等待指定时间导致测试失败
- ruby - ruby-kafka 读取所有消息主题并退出
- php - 使用 IFNULL 或 COALESCE 时,通过汇总分组不会将列名更改为 TOTAL
- node.js - (heroku) 错误 R10 (启动超时) -> Web 进程未能在启动后 60 秒内绑定到 $PORT
- javascript - 打字机效果及链接
- mysql - 云 sql 未在表中显示正确的数据
- c++ - 函数在不同的配置上返回不同的值
- javascript - 在 Async/Await 下留下无用的同步代码是一种反模式吗?