我已将AWS CloudFront和S3设置为其来源。
我已经在桶中公开了我想要访问的文件,但是当我尝试访问这些文件时,我收到了403 Forbidden错误/ Access denied XML。
链接很简单:
http://dd9rhibbjdy7s.cloudfront.net/assets123/app.js
我到处搜索了Google,但仍无法找到解决方案。
是否有人知道如何使其正常工作?
浏览时的确切响应是:
<Error>
<Code>AccessDenied</Code>
<Message>Access Denied</Message>
<RequestId>74E36027507DACD6</RequestId>
<HostId>
uUxkyTmpJbfxk1UJTf9bZmtkA/Vqq5O4eRruiG8zpC6uWn7tA1ffd5bnM4GcKD9Hp0BPKqKsBKQ=
</HostId>
</Error>
答案 0 :(得分:0)
将此存储桶策略添加到S3存储桶,请记住更改存储桶名称。
{
"Version":"2008-10-17",
"Statement":[{
"Sid":"AllowPublicRead",
"Effect":"Allow",
"Principal": {
"AWS": "*"
},
"Action":["s3:GetObject"],
"Resource":["arn:aws:s3:::YOUR-BUCKET-NAME/*"
]
}
]
}
答案 1 :(得分:0)
我的一位同事建议我使用策略生成器并提出这个:
{
"Id": "Policy1439469599074",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1439469594186",
"Action": [
"s3:GetObject"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::assets123/*",
"Principal": "*"
}
]
}
这使一切顺利:)