【问题标题】:Include tags on aws_iam_policy resource on Terraform在 Terraform 上的 aws_iam_policy 资源上包含标签
【发布时间】:2021-05-31 04:24:25
【问题描述】:

我正在尝试创建一个遵循 Terraform documentation 的策略

resource "aws_iam_policy" "policy" {
  name        = "test_policy"
  path        = "/"
  description = "My test policy"

  policy = jsonencode({
    Version = "2012-10-17"
    Statement = [
      {
        Action = [
          "ec2:Describe*",
        ]
        Effect   = "Allow"
        Resource = "*"
      },
    ]
  })
}

不幸的是,没有关于如何包含标签的描述。我无法像使用其他资源那样做到这一点,即使我可以从 AWS 管理控制台手动提供。

tags 设置似乎不起作用。如果我尝试对 IAM role 执行相同操作,则会收到错误消息,包括:

  tags = {
    tag-key = "tag-value"
  }

【问题讨论】:

    标签: amazon-web-services terraform amazon-iam terraform-provider-aws aws-policies


    【解决方案1】:

    更新:

    此功能已添加到 https://github.com/hashicorp/terraform-provider-aws/pull/18276,并作为 v3.35.0 of the AWS provider 的一部分发布。

    您现在应该可以按照您的预期将标签添加到您的 aws_iam_policy 资源:

    resource "aws_iam_policy" "policy" {
      name        = "test_policy"
      path        = "/"
      description = "My test policy"
    
      policy = jsonencode({
        Version = "2012-10-17"
        Statement = [
          {
            Action = [
              "ec2:Describe*",
            ]
            Effect   = "Allow"
            Resource = "*"
          },
        ]
      })
    
      tags = {
        tag-key = "tag-value"
      }
    }
    

    标记客户管理的 IAM 政策是 introduced on 11th February 2021 的一项新功能。目前,AWS 提供商上只有 a feature request 用于此功能。

    一旦有人添加了必要的更改并且它已被合并和发布,您应该期望它与您在问题中提供的语法一起使用。

    【讨论】:

      【解决方案2】:

      这是now available from version 3.35.0

      * 数据源/aws_iam_policy:添加 policy_idtags 属性 (#18276)

      _

      【讨论】:

        猜你喜欢
        • 2021-08-13
        • 2020-07-15
        • 2018-12-14
        • 1970-01-01
        • 2022-01-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多