仍然提供Cloudfront AccessDenied和文件

时间:2018-05-25 17:51:18

标签: amazon-s3 amazon-cloudfront access-denied bucket

我想使用Amazon S3通过cloudfront提供JS文件。

我已配置cloudfront以更新存储桶策略并生成此策略

{
    "Version": "2008-10-17",
    "Id": "PolicyForCloudFrontPrivateContent",
    "Statement": [
        {
            "Sid": "1",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity **********"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::BUCKET-NAME/*"
        }
    ]
}

该文件已交付,因此每个人都可以加载它,但我在云端日志中有拒绝访问权限

<Error>
    <Code>AccessDenied</Code>
    <Message>Access Denied</Message>
    <RequestId>23EF9D4EF83B9E7B</RequestId>
    <HostId>**************</HostId>
</Error>

如果文件已发送,为什么会出错?这个错误是重要的吗?

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

您的策略是允许CloudFront虚拟用户访问ACL为私有的存储桶中的内容。这意味着CloudFront可以访问内容。

错误消息最有可能发生在没有引荐来源标头的情况下尝试访问CloudFront的用户(普通用户之外)。查看CloudFront日志以查看拒绝的请求类型。