ある企業は AWS Organizations を使用して、開発・ステージング・本番の 3 つの AWS アカウントを管理しています。開発チームは EC2 インスタンスから本番アカウントの特定の S3 バケットへの読み取りアクセスが必要です。セキュリティ要件として以下があります。 「認証情報をアプリケーションに埋め込んではならない」 「最小権限の原則を適用する」 「将来アカウントが増えても管理しやすい設計にする」 最もセキュアで運用負荷が低いアーキテクチャはどれですか?
選択肢Bはクロスアカウントアクセスのベストプラクティスで、IAM ロールの AssumeRole を利用します。EC2 インスタンスプロファイル(IAM ロール)を使うことで長期的な静的認証情報の埋め込みを排除でき、AssumeRole で取得する一時認証情報により最小権限を実現します。 選択肢Aは長期認証情報(アクセスキー)の漏洩リスクがあり、認証情報の埋め込み禁止要件に違反します。 選択肢Cは SCP がアクセスの「許可付与」ではなく「制限」のみに機能するという仕組みを誤解した選択肢です。SCP 単体でクロスアカウントの読み取り権限を付与することはできません。 選択肢Dは VPC エンドポイントはネットワーク経路の制御であり、IAM 認証の代替にはなりません。VPC ピアリングしても S3 アクセスには IAM 認証が必要です。