Terrafrom aws_iam_policy_document 条件正确的语法

Mac*_*iej 5 amazon-s3 amazon-iam terraform

这部分存储桶策略如何写成 aws_iam_policy_document?

    "Condition": {
        "StringEquals": {
            "s3:x-amz-acl": "bucket-owner-full-control",
            "aws:SourceAccount": "xxxxxxxxxxxx"
        },
        "ArnLike": {
            "aws:SourceArn": "arn:aws:s3:::my-tf-test-bucket"
        }
Run Code Online (Sandbox Code Playgroud)

condition {
  test = "StringEquals"
  values = []
  variable = ""
}
Run Code Online (Sandbox Code Playgroud)

帮助 :)。

jas*_*lsh 11

aws_iam_policy_document支持嵌套condition指令。以下 Terraform 配置应该会有所帮助:

data "aws_iam_policy_document" "iam_policy_document" {
  condition {
    test = "StringEquals"

    values = [
      "bucket-owner-full-control"
    ]

    variable = "s3:x-amz-acl"
  }

  condition {
    test = "StringEquals"

    values = [
      "xxxxxxxxxxxx"
    ]

    variable = "aws:SourceAccount"
  }

  condition {
    test = "ArnLike"

    values = [
      "arn:aws:s3:::my-tf-test-bucket"
    ]

    variable = "aws:SourceArn"
  }
}

Run Code Online (Sandbox Code Playgroud)