我有一个名为' mybucket'它采用云端分布。我已配置了云端源访问标识(OAI)并按如下方式设置存储桶策略:
{
"Version": "2008-10-17",
"Id": "PolicyForCloudFrontPrivateContent",
"Statement": [
{
"Sid": "1",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity XXXXXXXXXXXX"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::mybucket/*"
}
]
}
所以现在当我通过cloudfront请求文件时,它按预期工作并提供文件,但是阻止了通过S3的直接访问。真棒。
我的问题是此存储桶策略仅适用于新/上传的文件,而不适用于存储桶中的现有文件。我本以为桶级别的策略会应用于所有文件?我是否需要重新上传我的存储桶中的所有内容,或者是否有办法将此新存储桶策略推送到所有现有对象?
答案 0 :(得分:1)
在收到请求时评估了Amazon S3存储桶策略。因此,它在应用策略时立即应用于存储桶(实际上,它实际上需要几秒钟才能激活)。
你不需要重新上传文件。
在创建存储分区策略之前,您的网络浏览器可能有缓存文件。通过尝试从其他浏览器或不同的计算机访问文件来测试它。
您的存储分区中的某些对象也可能在对象级别具有权限设置。对于可直接访问的任何对象,请检查权限设置,并确保没有Everyone
的设置。