EC2 上的应用程序向用户提供存储在 S3 存储桶中的对象。在存储桶上启用 S3 Block Public Access 后,用户无法再下载对象。要求是只有通过应用程序认证的用户才能访问这些对象。以下哪组步骤可以安全地满足此要求?(选择两项)
选择一个答案
点击一个选项来检查您的答案。
正确答案: 创建具有适当策略的 IAM 角色和实例配置文件,并将其分配给 EC2 实例。, 更改应用程序以调用 S3 的 GeneratePresignedUrl API 并将预签名 URL 返回给已认证的用户。.
为什么这是答案
当S3 Block Public Access启用后,直接公共访问被阻止。为了让EC2上的应用程序能够访问S3对象,EC2实例需要被授予相应的权限。将具有适当策略的IAM角色分配给EC2实例是推荐的安全实践,它允许实例临时获取访问S3的凭证,而无需在实例上存储长期凭证。 应用程序需要改变其与S3交互的方式。直接将S3对象句柄或委托请求返回给用户是不安全的,因为这会暴露S3的内部结构或允许未经授权的访问。使用S3的GeneratePresignedUrl API是安全的解决方案。应用程序在认证用户后,可以生成一个有时效性的预签名URL,该URL允许用户直接从S3下载对象,而无需应用程序充当中介。这满足了只有通过应用程序认证的用户才能访问对象的要求,并利用了S3的直接下载能力,减轻了应用程序的负载。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡