一位安全工程师正在排查名为 MyLambdaFunction 的 AWS Lambda 函数,该函数在尝试从名为 DOC-EXAMPLE-BUCKET 的 Amazon S3 存储桶读取对象时失败。该存储桶已配置存储桶策略。对策略进行哪项更改可以确保 Lambda 函数能够读取对象?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 将 Resource 元素更改为 arn:aws:s3:::DOC-EXAMPLE-BUCKET/*。.
为什么这是答案
Lambda 函数无法从 S3 存储桶读取对象,这通常是由于存储桶策略中缺少对该 Lambda 函数的正确权限。Resource 元素定义了策略语句所适用的 AWS 资源。将 Resource 元素更改为 arn:aws:s3:::DOC-EXAMPLE-BUCKET/,表示该策略语句适用于 DOC-EXAMPLE-BUCKET 存储桶中的所有对象。这确保了 Lambda 函数(如果其 Principal 元素正确配置)将拥有访问该存储桶中所有对象的权限。 移除 Condition 元素并修改 Principal 元素可能无法解决问题,因为即使 Principal 正确,如果 Resource 元素不正确,权限仍可能被拒绝。更新 Action 元素是必要的,但如果 Resource 元素不正确,也无法解决问题。将 Resource 元素更改为 arn:aws:lambda:::function:MyLambdaFunction 是错误的,因为 Resource 元素应该指向 S3 存储桶,而不是 Lambda 函数本身。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡