我是 AWS 和 AWS 控制台的新手。我似乎不知何故真的搞乱了我的设置。我的客户想使用 AWS S3 作为他的播客的托管平台,但我无法上传任何具有公共读取权限的文件。
为了解决这个问题,我尝试将存储桶策略更改为以下内容(以 root 用户身份):
{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"AddPerm",
"Effect":"Allow",
"Principal": "*",
"Action":["s3:GetObject"],
"Resource":["arn:aws:s3:::[bucketname]/*"]
}
]
}
但是,当我尝试保存新策略时,我收到一条“拒绝访问”消息。至于已在使用的策略:没有。它只是一个空白字段。
答案1
如果您是根用户并且您的访问被拒绝,那么您显然应该存在任何权限问题,但我猜测这是 AWS 引入的针对意外公共访问的额外保护层。
他们于 2018 年 11 月宣布了“阻止公共访问”功能,以提高 S3 存储桶的安全性。请参阅博客文章https://aws.amazon.com/blogs/aws/amazon-s3-block-public-access-another-layer-of-protection-for-your-accounts-and-buckets/
假设这就是导致此问题的原因,您应该首先能够更改存储桶上的此设置,然后才能配置存储桶策略。
答案2
如果存储桶的公共访问设置下的“阻止新的公共 ACL 和上传公共对象(推荐)”设置为 true,则您将无法添加任何授予公共访问权限的新 ACL。存储桶页面中公共访问设置的屏幕截图