我有一种情况,我不容易理解为什么,也找不到任何文档。
我已经执行以下操作:
创建了一个S3存储桶
公开访问它
为静态网站托管启用了它
为其创建了CloudFront发行版
在云端启用了HTTPS
现在,我试图将S3存储桶的访问限制为仅对CloudFront。
我尝试了呈现的步骤
不幸的是,当我尝试编辑原点时,我没有看到UI中的所有选项,尤其是缺少“限制存储区访问”。
我只看到用于编辑原始域名,原始路径,原始ID(显示为灰色),原始自定义标题的选项-没有输入OAI或设置“限制存储桶访问权限”的选项。
是因为启用了HTTPS吗?
S3大师,请帮忙!
答案 0 :(得分:2)
原始访问身份仅在将S3 REST端点(例如example-bucket.s3.amazonaws.com)用于存储桶时适用-在使用网站托管端点(例如example-bucket.s3-website)时不适用.us-east-2.amazonaws.com),因为网站托管端点do not support authenticated requests -它们仅用于公共内容...但是OAI是一种身份验证机制。
在使用网站终端节点时,CloudFront不会将原点视为S3原点,而是将其视为“自定义原点”,并且这些选项不可用,因为如果可用,它们将始终无法工作(对于上面提到的原因)。
答案 1 :(得分:0)
对于那些后来将某些S3设置更改为不公开并希望只能通过Cloudfront进行检索的用户而言,它现在已存在但被隐藏了。您只需要从“原始”选项卡中的“原始域名”中剪切值,然后再次将其重新粘贴(如果其名称为存储桶),UI将立即显示为“限制访问”输入选项。