Q41 — AWS SAA-C03 第8章

第 41/65 問 | ← 第8章

Q536. サーバーレスアプリケーションが Amazon API Gateway、AWS Lambda、Amazon DynamoDB を使用しています。Lambda 関数は、DynamoDB テーブルに対する読み取りおよび書き込み権限を必要としています。 この要件を満たす最も安全な解決策はどれですか?

正解: B. 信頼されたサービスとして Lambda を含む IAM ロールを作成します。このロールに DynamoDB テーブルへの読み取りおよび書き込みアクセスを許可するポリシーをアタッチします。Lambda 関数の設定を更新し、この新しいロールを実行ロールとして使用するように指定します。

解説

Lambda 関数が AWS リソース(ここでは DynamoDB)にアクセスするには、実行ロール(execution role)として IAM ロールを使用するのが最も安全かつ推奨される方法です。このロールは、Lambda サービスが信頼するエンティティ(trusted entity)として定義され、必要な最小限の権限を持つポリシーがアタッチされます。オプション A および C は、IAM ユーザーのアクセスキーを環境変数や Parameter Store に格納する手法ですが、これは資格情報の管理・ローテーション・セキュリティ面でリスクが高く、ベストプラクティスに反します。オプション D は、信頼されたサービスを DynamoDB と誤って設定しており、Lambda 関数がロールを「コード内でアタッチ」することは技術的に不可能です(実行ロールはデプロイ時に設定されるものであり、実行時には変更できません)。したがって、正解は B です。