Q45 — AWS SAA-C03 第15章

第 45/100 問 | ← 第15章

Q1145. ある会社は、オンライン写真共有サービスを運営しており、データをAWSアカウントA内の集中型のAmazon S3バケットに保存しています。この会社は、アカウントBと呼ばれる第2のAWSアカウントに対して、アカウントA内の集中型S3バケットへのアクセスを許可したいと考えています。なお、この会社がアカウントBを所有しています。この要件を満たす解決策はどれですか?

正解: D. アカウントBがアカウントA内の集中型S3バケットにアクセスできるよう、バケットポリシーを作成する。

解説

要件と各選択肢を分析し、アカウントA内のAmazon S3バケットへアカウントBがアクセスできるようにするための最適な解決策を特定します。 【主な要件】 ・アカウントB(当社が所有)に、アカウントA内のS3バケットへのアクセスを許可すること。 【関連するAWSの概念】 ・S3バケットポリシー:他のAWSアカウント(アカウントIDで指定)にS3バケットへのアクセス権限(例:s3:GetObject、s3:ListBucketなど)を付与するために使用されます。 ・クロスアカウントIAMロール:クロスアカウントアクセスを実現する別の方法ですが、本問ではIAMロールの使用が言及されておらず、単純なバケットポリシーによる制御が最も適切です。 ・S3 Transfer Acceleration:長距離通信におけるアップロード/ダウンロードの高速化を目的としており、クロスアカウントアクセスの許可には関係ありません。 ・クロスリージョンレプリケーション:異なるリージョンにあるS3バケット間でのデータ複製に用いられ、アクセス許可の手段ではありません。 ・Amazon CloudFront:S3をオリジンとしてコンテンツ配信を行うCDNであり、クロスアカウントアクセスのための仕組みではありません(署名付きURLは一時的なオブジェクトアクセス用です)。 【各選択肢の検討】 選択肢A:S3 Transfer Accelerationは、ネットワーク転送速度の向上を目的としており、クロスアカウントアクセスの許可には一切関係ありません。→ 要件不適合。 選択肢B:クロスリージョンレプリケーションは、データの複製に特化しており、アクセス権限の付与には使えません。→ 要件不適合。 選択肢C:CloudFront+署名付きURLは、一般ユーザーなどに一時的に特定オブジェクトへのアクセスを許可する手法であり、アカウント全体に対する永続的・包括的なクロスアカウントアクセスを提供するものではありません。→ 要件不適合。 選択肢D:アカウントAのS3バケットにバケットポリシーを設定し、アカウントBのアカウントID(例:arn:aws:iam::ACCOUNT_B_ID:root)をPrincipalとして指定して、必要なアクション(s3:GetObject、s3:ListBucketなど)とリソース(バケットおよびそのオブジェクト)を明示的に許可すれば、要件を直接かつシンプルに満たせます。これはAWSが公式に推奨するクロスアカウントS3アクセスの標準的手法です。 【他選択肢が不適切な理由】 A:Transfer Accelerationはアクセス制御ではなく、転送性能向上の機能です。 B:レプリケーションはデータ同期の仕組みであり、アクセス許可とは無関係です。 C:署名付きURLは一時的・限定的なアクセス手段であり、アカウント単位の永続的アクセス許可には不向きです。 【結論】 正解はDです。アカウントAのS3バケットに、アカウントBへのアクセスを許可するバケットポリシーを作成することが、この要件を満たす最もシンプルで直接的な解決策です。