セキュアなアーキテクチャ設計
ある企業では、開発アカウント(Account A)のEC2インスタンスから本番アカウント(Account B)のS3バケットに安全にアクセスさせたい。長期的なアクセスキーを共有せずに実現する方法として最も適切なものはどれか。
- AAccount BのIAMユーザーを作成し、アクセスキーをAccount AのEC2インスタンスに配置する
- BAccount AとAccount Bを同一のAWS Organizationsに統合し、ルートユーザーの認証情報を共有する
- ✓Account Bにクロスアカウントアクセスを許可するIAMロールを作成し、Account AのEC2インスタンスがそのロールをAssumeRoleする
- DAccount BのS3バケットポリシーでAccount AのVPC CIDRを許可する
解説
クロスアカウントアクセスでは、信頼ポリシーを設定したIAMロールをAssumeRoleし、一時的な認証情報を取得する方式が標準的でセキュアである。長期的なアクセスキーの共有はセキュリティリスクとなるため避けるべきである。
根拠AWS IAM クロスアカウントアクセス、AWS STS AssumeRole