【问题标题】:Error creating BucketPolicy in CloudFormation yaml在 CloudFormation yaml 中创建 BucketPolicy 时出错
【发布时间】:2017-07-15 20:46:40
【问题描述】:

我正在尝试使用以下 yaml 在 CloudFormation 中创建 S3 存储桶策略:

  cloudTrailBucketPolicy:
    Type:  "AWS::S3::BucketPolicy"
    Properties:
      Bucket:
        Ref: cloudtrailBucket
      PolicyDocument:
        -
          Action:
            - "s3:GetBucketAcl"
          Effect:  Allow
          Resource:
            Fn::Join:
              - ""
              -
                - "arn:aws:s3:::"
                -
                  Ref: cloudtrailBucket
                - "/*"
          Principal:  "*"
        -
          Action:
            - "s3:PutObject"
          Effect:  Allow
          Resource:
            Fn::Join:
              - ""
              -
                - "arn:aws:s3:::"
                -
                  Ref: cloudtrailBucket
                - "/*"
          Principal:
            Service:  cloudtrail.amazonaws.com

当我尝试这样做时,我收到一条消息“属性 PolicyDocument 的值必须是一个对象”

有人有什么想法吗?

【问题讨论】:

    标签: amazon-s3 yaml amazon-cloudformation


    【解决方案1】:

    看起来您解决了这个问题,但为了便于阅读,您可以使用 !Sub 压缩格式,并且知道该操作允许单个值和列表。我喜欢 yaml 的主要原因之一是你使用较少的垂直性。

    PolicyDocument: - Action: "s3:GetBucketAcl" Effect: Allow Resource: !Sub arn:aws:s3:::${cloudtrailBucket} Principal: "*" - Action: "s3:PutObject" Effect: Allow Resource: !Sub arn:aws:s3:::${cloudtrailBucket}/* Principal: Service: cloudtrail.amazonaws.com

    【讨论】:

      【解决方案2】:

      AWS::S3::BucketPolicy 资源的PolicyDocument 属性具有必需的 JSON 对象类型。您问题中的 YAML 模板错误地提供了一个 JSON 数组,其中包含两个 JSON 对象作为 PolicyDocument 属性的值,因此您收到了错误消息。

      要修复此错误,对象应正确嵌套在当前模板中缺少的 Statement 元素中。

      有关 IAM 政策文档语法的更多详细信息,请参阅IAM Policy Elements Reference

      【讨论】:

        【解决方案3】:

        啊。 s3:GetBucketAcl 是对存储桶的操作。我删除了第一条语句中的 /* 并且它起作用了。哎呀。超级有用的错误消息。

        【讨论】:

          猜你喜欢
          • 2020-10-20
          • 2021-09-30
          • 2019-05-12
          • 2019-11-05
          • 1970-01-01
          • 1970-01-01
          • 2021-01-05
          • 1970-01-01
          • 2021-03-14
          相关资源
          最近更新 更多