如何通过 Terraform 将现有隐私政策附加到 IAM 角色

清酒

我需要通过 Terraform 创建一个新的 IAM 角色。该角色应具有在 AWS (AmazonSSMFullAccess) 中预定义的策略,但我找不到任何地方应该如何添加已创建的策略。代码模板应如下所示:

    resource "aws_iam_role" "role" {
      name                 = var.name
      assume_role_policy   = var.assume_role_policy
      max_session_duration = var.max_session_duration
      description          = var.description
    }
    
    resource "aws_iam_role_policy_attachment" "attach_policy" {
      policy_arn = var.policy_to_attach
      role       = aws_iam_role.role.name
    }
继续

对于现有的 aws 策略,您可以直接从控制台复制其 arn。然后只需将 arn 粘贴为 policy_arn 参数。在你的情况下:

resource "aws_iam_role_policy_attachment" "attach_policy" {
    policy_arn = "arn:aws:iam::aws:policy/AmazonSSMFullAccess"
    role       = aws_iam_role.role.name
}

为了使其更加安全,您可以首先使用数据源导入策略

data "aws_iam_policy" "example" {
    arn = "arn:aws:iam::aws:policy/AmazonSSMFullAccess"
}
resource "aws_iam_role_policy_attachment" "attach_policy" {
    policy_arn = data.aws_iam_policy.example.arn
    role       = aws_iam_role.role.name
}

编辑:也可以按名称调用数据源:

data "aws_iam_policy" "test" {
  name = "AmazonSSMFullAccess"
}

正如评论中所说,数据源将有助于进行 terraform 检查,以便您可以在尝试执行其他任何操作之前找到并阅读给定的策略。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用Terraform将多个IAM策略附加到IAM角色?

如何在Terraform中旋转时将现有IAM角色设置为新实例

使用 Terraform 将现有 IAM 角色添加到 EC2 实例

使用Terraform修改现有的IAM角色

如何使用Terraform将AWS IAM角色分配给服务帐户?

Terraform GCP 将 IAM 角色分配给服务帐户

使用Terraform创建具有IAM角色的服务帐户

如何将IAM角色附加到EC2实例,以便它们可以从Terraform中的ECR中提取特定图像

如何使用Terraform创建无假设角色策略的AWS IAM角色?

如何将IAM角色添加到AWS中的现有实例?

terraform中的任务执行IAM角色

尽管 IAM 设置正确,但 Terraform 仍承担角色

想要通过terraform针对服务帐户分配多个Google Cloud IAM角色

通过CloudFormation将默认KMS密钥的使用授予IAM角色

如何将多个 IAM 角色附加到 AWS 上的实例配置文件?

使用cloudformation附加IAM角色

通过Terraform将AWS托管策略附加到自定义角色

如何通过 Terraform 将虚拟机用户登录角色添加到用户列表中?

AWS CloudFormation-通过模板将现有托管策略附加到现有角色

如何将IAM角色分配给用户或组

如何使用具有 iam 角色的託管策略

使用 terraform 和 apex 将单个 IAM 策略附加到两个不同区域(同一账户)中的两个不同角色

Terraform aws_flow_log 未添加 IAM 角色 ARN

使用Terraform创建GCP自定义IAM角色

将IAM角色从EKS中的Pod附加到Serviceaccount

使用 Ansible 将 IAM 角色附加到 AWS RDS 实例

如何使用ServiceAccount创建AWS IAM角色并将其附加到Kubernetes DaemonSet

如何部署具有多个角色的Terraform模块?

AWS iam terraform中的角色ID与角色名称,什么时候使用?