Q27 — AWS SAP-C02 第1章

第 27/75 問 | ← 第1章

Q102. 出版会社のデザインチームが、ECサイトのWebアプリケーションで使用されるアイコンおよびその他の静的アセットを更新します。同社は、本番アカウント内にホストされているAmazon S3バケットからこれらのアイコンおよびアセットを配信しています。また、デザインチームのメンバーがアクセス可能な開発アカウントも利用しています。デザインチームが開発アカウント内で静的アセットのテストを完了した後、それらを本番アカウント内のS3バケットにロードする必要があります。ソリューションアーキテクトは、Webアプリケーションの他の部分が不要な変更のリスクにさらされないようにしつつ、デザインチームに本番アカウントへのアクセスを提供しなければなりません。これらの要件を満たすためには、以下のどの手順の組み合わせを実行すればよいでしょうか?(3つ選択)

正解: A. 本番アカウントで、S3バケットに対する読み取りおよび書き込みアクセスを許可する新しいIAMポリシーを作成します。, C. 本番アカウントでロールを作成し、この新しいポリシーをロールにアタッチします。また、信頼されたエンティティとして開発アカウントを指定します。, E. 開発アカウントで、デザインチームのすべてのIAMユーザーを含むグループを作成します。このグループに別のIAMポリシーをアタッチし、本番アカウント内のロールに対してsts:AssumeRoleアクションを許可します。

解説

デザインチームに本番アカウントへのアクセスを安全に提供し、Webアプリケーションの他の部分が不要な変更のリスクにさらされないようにしつつ、S3バケットへのアセットのロードを可能にするには、以下の手順の組み合わせを実行する必要があります。 A:本番アカウントで、S3バケットに対する読み取りおよび書き込みアクセスを許可する新しいIAMポリシーを作成します。 C:本番アカウントでロールを作成し、この新しいポリシーをロールにアタッチします。また、信頼されたエンティティとして開発アカウントを指定します。 E:開発アカウントで、デザインチームのすべてのIAMユーザーを含むグループを作成します。このグループに別のIAMポリシーをアタッチし、本番アカウント内のロールに対してsts:AssumeRoleアクションを許可します。 解説: A:IAMポリシーを本番アカウントで作成することで、デザインチームが本番アカウント内のS3バケットに対して読み書きできるよう必要な権限を定義できます。 C:本番アカウントにロールを作成し、先に作成したIAMポリシーをアタッチします。さらに、信頼されたエンティティとして開発アカウントを指定することで、開発アカウントのユーザーがこのロールを引き受ける(assume)ことを許可します。 E:開発アカウント内でデザインチームの全IAMユーザーを含むグループを作成し、そのグループに本番アカウントのロールを引き受けるためのsts:AssumeRole権限を付与するIAMポリシーをアタッチします。これにより、デザインチームのメンバーは本番アカウントのロールを引き受け、S3バケットにアクセスできるようになります。 選択肢Bは不適切です。S3バケットは本番アカウント内にあるため、アクセス許可のポリシーは本番アカウントで作成する必要があります。開発アカウントでポリシーを作成しても、本番リソースへのアクセスはできません。 選択肢DおよびFは不適切です。ロールとポリシーは、アクセス対象となるリソース(本番S3バケット)が存在する本番アカウント側で作成・管理する必要があります。開発アカウント側でロールを作成しても、本番リソースへの安全なアクセスは実現できません。 したがって、正しい手順の組み合わせはA、C、Eです。すなわち、「本番アカウントでIAMポリシーを作成」「本番アカウントでロールを作成しポリシーをアタッチ」「開発アカウントでグループを作成し、本番アカウントのロールを引き受けるためのsts:AssumeRole権限を付与」です。