CloudFront 分配使用源访问身份 (OAI) 访问私有 S3 存储桶。该存储桶拒绝其他所有人的访问。应用程序要求用户查看公共登录页面,然后接收签名 Cookie 以访问私有目录。该分配使用默认缓存行为,并将受限的查看器访问指向 S3 源。访问登录页面时返回 403 Forbidden。开发人员如何才能允许未经身份验证的用户访问登录页面,同时确保私有内容的安全?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 添加第二个缓存行为(相同的 S3 源),其路径模式与登录页面匹配,并将该行为的查看器访问设置为不受限。保持默认缓存行为不变。.
为什么这是答案
正确答案通过添加第二个缓存行为解决了问题。默认缓存行为配置为限制查看器访问,并使用 OAI 访问私有 S3 存储桶,这导致登录页面也返回 403 错误。通过添加一个针对登录页面路径模式(例如 /login.html)的新缓存行为,并将其查看器访问设置为“不受限制”,CloudFront 将允许未经身份验证的用户访问该特定页面。默认缓存行为保持不变,确保了私有目录的安全性,只有持有签名 Cookie 的用户才能访问。 其他选项不正确: 第二个选项会使所有内容都受到限制,或者将登录页面设置为默认行为,从而可能暴露其他内容。 第三个选项中的故障转移源不适用于此场景,因为它主要用于源不可用时提供备用内容,而不是用于基于路径的访问控制。 第四个选项涉及 S3 存储桶策略和 CloudFront 函数,虽然可以实现,但比添加缓存行为更复杂,并且可能引入额外的管理开销,同时 CloudFront 函数的重定向逻辑也可能不适用于直接解决 403 错误。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡