如何修复 terraform 中的 MalformedPolicyDocument

rp1*_*409 3 amazon-iam terraform

我正在学习使用 terraform 部署 AWS 基础设施。我编写了下面的代码来创建 IAM 策略-

    resource "aws_iam_role_policy" "s3_access_policy" 
{
  name = "s3_access_policy"
  role = aws_iam_role.s3_access_role.id

  policy = <<EOF
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3.*",
      "Resource": "*"
    }
  ]
}
EOF
}
Run Code Online (Sandbox Code Playgroud)

当我运行 terraform apply 时,出现以下错误 -

Error: Error putting IAM role policy s3_access_policy: MalformedPolicyDocument: Actions/Conditions must be prefaced by a vendor, e.g., iam, sdb, ec2, etc.
        status code: 400, request id: cdd4d629-4f43-450c-a4f1-b6d475e363f0

  on main.tf line 14, in resource "aws_iam_role_policy" "s3_access_policy":
  14: resource "aws_iam_role_policy" "s3_access_policy" {
Run Code Online (Sandbox Code Playgroud)

无法解决此问题,非常感谢您的帮助

mjg*_*py3 11

Action我认为你需要在你的sos3:*而不是中使用冒号(而不是句号)s3.*