【问题标题】:Amazon S3 Bucket Policy Public Access DeniedAmazon S3 存储桶策略公共访问被拒绝
【发布时间】:2019-04-20 03:20:10
【问题描述】:

我正在尝试公开我的 S3 存储桶,但是当我添加以下策略时,我收到错误访问被拒绝:

{
   "Version":"2012-10-17",
   "Statement":[{
      "Sid":"AddPerm",
      "Effect":"Allow",
      "Principal":"*",
      "Action":[
         "s3:GetObject"
      ],
      "Resource":[
         "arn:aws:s3:::emergencydatascience.org/*"
      ]
    }]
}

【问题讨论】:

  • 潜力duplicate
  • 如果您尝试用作网站,您应该启用静态网站托管和/或创建以 S3 作为源的 CloudFront 分配。
  • 我启用了静态托管端点为emergencydatascience.org.s3-website-us-east-1.amazonaws.com,但您将收到 403 错误,因为存储桶尚未设置为公共。我尝试了不同的存储桶策略,它总是说错误访问被拒绝。我是帐户的管理员,它应该允许我更改存储桶策略,但它说我无权访问。
  • 已解决。默认情况下,S3 存储桶似乎会阻止新的公共策略。在公共访问设置中将其设置为 false,您可以再次编辑存储桶策略。
  • 这是一项名为 S3 Block Public Access 的新 AWS 安全功能,截至 21 小时前:aws.amazon.com/blogs/aws/…

标签: amazon-web-services amazon-s3


【解决方案1】:

进入您的存储桶 > 权限 > 公共访问设置 > 编辑 > 取消勾选阻止新公共 ACL 和上传公共对象并删除通过公共 ACL 授予的公共访问权限(警告)

【讨论】:

    【解决方案2】:

    AWS 引入了Amazon S3 Block Public Access – Another Layer of Protection for Your Accounts and Buckets | AWS News Blog

    您现在必须在您希望公开访问的任何存储桶上禁用此功能。

    【讨论】:

      【解决方案3】:

      要启用对对象的公共访问, 修改帐户的公共访问权限,例如

      也在存储桶级别启用相同的功能

      如果没有这些更改,您将无法添加新的公共政策。

      【讨论】:

        【解决方案4】:

        虽然 AWS 政策非常动态,但请注意,以下答案适用于我提供它的日期,并且可能会及时更改。 使用公共访问策略创建新存储桶所需的是将 account 级别的“阻止公共访问”配置更改为以下内容: enter image description here

        完成此更改后,接下来还需要执行 Bucket 级别的常规设置 - 添加策略并更改 bucket 级别“阻止公共访问”(以与之前相同的方式在帐户级别完成)。

        【讨论】:

          猜你喜欢
          • 2018-01-10
          • 2019-04-28
          • 2017-02-12
          • 2023-03-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-03-28
          • 2020-01-16
          相关资源
          最近更新 更多