当通过 CloudFront 从 S3 存储桶提供网站服务时,我通常会应用以下存储桶策略以允许访问我的文件:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Allow Public Access to All Objects",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::somewhere.example.com/*"
}
]
}
Run Code Online (Sandbox Code Playgroud)
但亚马逊最近开始展示这条信息(我的粗体强调):
我们强烈建议您永远不要授予对 S3 存储桶的任何类型的公共访问权限。
AWS 文档与此建议非常不一致,表明只有写访问权限是一个问题。我正在为一个网站提供服务,因此显然我很高兴让公众访问这些文件,特别是因为仍然不允许目录列表。
截至 2017 年 11 月,在不提供任何公共访问权限的情况下,将 CloudFront 连接到 S3 存储桶的推荐方式是什么?