無限ノック › DVA 練習問題一覧 › 問題
DVAセキュリティ

開発チームはAccount A(開発環境)にデプロイされたLambda関数から、Account B(本番環境)のDynamoDBテーブルのデータを読み取る必要があります。最小権限の原則に従い、長期的なアクセスキーの管理リスクを排除した、最も安全な実装はどれですか?

A
Account BでIAMユーザーを作成してDynamoDB読み取りポリシーをアタッチし、そのアクセスキーをAccount AのLambda環境変数(KMS暗号化)に設定する。LambdaはKMSで復号した長期アクセスキーを使用し、DynamoDB APIを直接呼び出してクロスアカウントでデータを読み取る構成とする
IAMユーザーアクセスキーは長期認証情報であり管理リスクが高いです。
B
Account AのLambda実行ロールにsts:AssumeRole権限を付与する。Account Bに必要なDynamoDB読み取り権限を持つIAMロールを作成し、そのトラストポリシーでAccount AのLambda実行ロールARNを信頼エンティティとして設定する。LambdaコードではSTSのAssumeRoleで一時認証情報を取得してDynamoDBにアクセスする
✓ 正解
クロスアカウントアクセスの標準的かつ最も安全なパターンはSTS AssumeRoleです。一時認証情報はデフォルトで1時間で失効するため漏洩リスクが低く、最小権限の原則に沿っています。
C
Account BのDynamoDBテーブルにリソースベースポリシーを設定し、Account AのLambda実行ロールARNをプリンシパルとして直接許可する。LambdaはAccount Aの実行ロールの権限でDynamoDBのAPIを呼び出し、リソースポリシーの評価を通じてクロスアカウントアクセスが許可される
ついてはAmazon DynamoDBは2023年11月よりリソースベースポリシーをサポートしており技術的なクロスアカウントアクセス自体は可能ですが、STS AssumeRoleのような一時認証情報を使用しないため漏洩リスクが相対的に高く、AWSが推奨する標準的なクロスアカウントアクセスパターンでもありません。
D
Account AとAccount BをVPCピアリングで接続し、Account BにDynamoDB VPCエンドポイントを作成してプライベートネットワーク経由でアクセスする。VPCピアリングはネットワーク経路を提供するが、IAMによる認証・認可は引き続き必要であり、認証情報を省略することはできない
VPCピアリングとDynamoDB VPCエンドポイントはネットワーク経路を提供するものに過ぎず、IAMによる認証・認可を回避する手段にはならないため不正解です。

解説

正解: Account AのLambda実行ロールにsts:AssumeRole権限を付与する。Account Bに必要なDynamoDB読み取り権限を持つIAMロールを作成し、そのトラストポリシーでAccount AのLambda実行ロールARNを信頼エンティティとして設定する。LambdaコードではSTSのAssumeRoleで一時認証情報を取得してDynamoDBにアクセスする クロスアカウントアクセスの標準的かつ最も安全なパターンはSTS AssumeRoleです。一時認証情報はデフォルトで1時間で失効するため漏洩リスクが低く、最小権限の原則に沿っています。 選択肢AのIAMユーザーアクセスキーは長期認証情報であり管理リスクが高いです。 選択肢CについてはAmazon DynamoDBは2023年11月よりリソースベースポリシーをサポートしており技術的なクロスアカウントアクセス自体は可能ですが、STS AssumeRoleのような一時認証情報を使用しないため漏洩リスクが相対的に高く、AWSが推奨する標準的なクロスアカウントアクセスパターンでもありません。 選択肢DのVPCピアリングとDynamoDB VPCエンドポイントはネットワーク経路を提供するものに過ぎず、IAMによる認証・認可を回避する手段にはならないため不正解です。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでDVAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← DVA の問題一覧に戻る