Amazon web services 使用terraform和apex将单个IAM策略附加到两个不同区域(同一帐户)的两个单独角色
我有一个terraform基础设施设置,其中一个模块在不同的环境中使用(相同的帐户,不同的区域)。我遇到的问题是,对于每个环境,我需要将策略附加到该环境中的某个角色。因此,每次我尝试使用Amazon web services 使用terraform和apex将单个IAM策略附加到两个不同区域(同一帐户)的两个单独角色,amazon-web-services,terraform,amazon-iam,Amazon Web Services,Terraform,Amazon Iam,我有一个terraform基础设施设置,其中一个模块在不同的环境中使用(相同的帐户,不同的区域)。我遇到的问题是,对于每个环境,我需要将策略附加到该环境中的某个角色。因此,每次我尝试使用apex infra-e apply更新基础结构时,以前附加到策略的角色都会被新环境中的角色覆盖 TerraformV0.12.13 Apex版本1.0.0-rc2 有没有办法告诉terraform,将角色添加到当前附加到策略的角色列表中? data "aws_iam_policy" "ecsPolicy" {
apex infra-e apply
更新基础结构时,以前附加到策略的角色都会被新环境中的角色覆盖
TerraformV0.12.13
Apex版本1.0.0-rc2
有没有办法告诉terraform,将角色添加到当前附加到策略的角色列表中?
data "aws_iam_policy" "ecsPolicy" {
arn = "arn:aws:iam::aws:policy/service-role/AmazonECSTaskExecutionRolePolicy"
}
resource "aws_iam_policy_attachment" "ecs_task_attach" {
name = "${var.apex_environment}_ecsTaskExec"
roles = [aws_iam_role.ecs_task_executor_role.name]
policy_arn = data.aws_iam_policy.ecsPolicy.arn
}
创建单独的策略以附加到不同的用户将是我最后一次
aws_iam_policy_attachment
创建iam策略的独占附件,并覆盖附加到iam角色的任何现有策略
如果要将多个策略附加到单个IAM角色,请尝试使用aws_IAM_Role_policy_attachment
()。这些资源应该能帮助你实现你的目标
希望这有帮助 很高兴听到:)