Q57 — AWS SAA-C03 第14章

第 57/100 問 | ← 第14章

Q1057. ある企業がアプリケーションをプライベートサブネット上にホストしています。同社はすでにアプリケーションをAmazon Cognitoと統合済みで、Amazon Cognitoユーザープールを用いてユーザーの認証を行っています。このアプリケーションを改修し、ユーザーがドキュメントをAmazon S3バケットに安全に保存できるようにする必要があります。Amazon S3をアプリケーションと安全に統合するための手順の組み合わせとして適切なものを2つ選んでください。

正解: A. ユーザーが正常にログインした際に、セキュアなAmazon S3アクセストークンを生成するためのAmazon Cognito IDプールを作成します。, C. アプリケーションをホストするVPC内にAmazon S3 VPCエンドポイントを作成します。

解説

Amazon Cognitoによるユーザー認証を利用するアプリケーションとAmazon S3を安全に統合するには、以下の2つの手順の組み合わせが最適です:AおよびC。 解説: 1. A:Amazon Cognito IDプールの作成  ・Amazon Cognito IDプールは、ユーザーの認証を行い、一時的なAWS資格情報を取得するために使用されます。これは、ユーザーにAmazon S3への安全なアクセスを付与する上で不可欠です。ユーザーがユーザープール経由でログインすると、IDプールを活用してS3との安全なやり取りを可能にするAWSアクセストークンを生成できます。 2. C:Amazon S3 VPCエンドポイントの作成  ・S3 VPCエンドポイントを作成することで、アプリケーションがパブリックインターネットを経由せずにS3にアクセスできるようになります。これにより、データ転送がAWSネットワーク内に留まり、プライベートサブネットにおけるセキュリティ要件(例:トラフィックの外部流出防止)を満たすことができます。 他の選択肢の評価: B:既存のAmazon Cognitoユーザープールの利用  ・ユーザープールは認証機能を提供しますが、S3アクセスのためのAWS資格情報(一時的セキュリティ認証情報)を直接生成しません。そのため、IDプールが必要です。 D:NATゲートウェイの作成  ・NATゲートウェイは、プライベートサブネット内のリソースがインターネットへアウトバウンド接続を行うために使用されますが、S3 VPCエンドポイントを活用する場合には不要です。また、「Amazon Cognitoから発行されていないリクエストを拒否する」というポリシーは、技術的に実現困難であり、適切なアクセス制御手法ではありません。 E:ユーザーのIPアドレスのみを許可するS3バケットポリシー  ・ユーザーのIPアドレスは動的に変化する場合が多く(例:モバイル回線やDHCP環境)、頻繁に変更されるため、実運用では信頼性が低く、アクセス管理として不適切です。 結論: AとCの組み合わせにより、Amazon Cognitoを活用したユーザー認証と、プライベートサブネット内での安全なS3接続を同時に実現でき、セキュアかつ効率的な統合が可能です。