我为托管静态网页的组织创建了一个S3存储桶。我想授予其只读公共访问权限,但总体上拒绝公共访问。
我尝试添加存储桶策略,该策略提供读取访问权限并在权限->阻止公共访问部分下阻止公共访问功能。但这使我在所有情况下都被拒绝访问。
禁用公共访问,但通过对外部对象的只读操作来设置s3存储桶的“允许”权限:
"Action":["s3:GetObject"]
{
"Version": "2008-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "eact resource information"
}
]
}
这是我的S3网址带我去的地方:
<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>7B5968B84E5DB018</RequestId><HostId>ehRR5C0zoZU0QO0e9SdetVsa/6TrO/kIRwynpSl+L4zFiP1I6yFwtHsembeQjnP/ozdeOgRBrdg=</HostId></Error>
答案 0 :(得分:0)
要授予对存储桶中所有对象的公共访问权限,请使用以下存储桶策略:
{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"PublicPermission",
"Effect":"Allow",
"Principal": "*",
"Action":["s3:GetObject"],
"Resource":["arn:aws:s3:::my-bucket/*"]
}
]
}
(用您的存储桶名称替换my-bucket
)
您还需要关闭阻止公共访问,以启用存储桶策略。