Q18 — AWS DVA-C02 第1章
第 18/100 問 | ← 第1章
ある開発者が、ユーザーがWebブラウザ経由で登録およびログインするゲーム向けにサーバーレスアプリケーションを設計しています。このアプリケーションは、Amazon API Gateway HTTP APIの背後に配置されたAWS Lambda関数に対して、ユーザーを代表してリクエストを送信します。開発者は、アプリケーションのログインページでユーザーの登録および認証を実装するソリューションを実現したいと考えています。このソリューションは、運用オーバーヘッドを最小限に抑え、ユーザーIDの継続的な管理を極力減らす必要があります。この要件を満たすソリューションはどれですか?
- A. 外部ソーシャルIDプロバイダー向けにAmazon Cognitoユーザープールを作成します。IDプールに対してIAMロールを設定します。 ✓
- B. ログインページを記述して、ユーザーのIAMグループを作成し、これらのグループにIAMロールをアタッチします。
- C. ユーザーを保存し、AWSバックエンドリソースへのアクセス権限を管理するために、Amazon RDS for SQL Server DBインスタンスを作成します。
- D. ログインページを設定して、IAMポリシーがアタッチされたAmazon DynamoDBテーブルにユーザーとパスワードを登録・保存します。
正解: A. 外部ソーシャルIDプロバイダー向けにAmazon Cognitoユーザープールを作成します。IDプールに対してIAMロールを設定します。
解説
選択肢Aは、外部ソーシャルIDプロバイダー(例:Facebook、Googleなど)向けにAmazon Cognitoユーザープールを使用してユーザーIDを管理することを提案しています。Amazon Cognitoは、認証、承認、ユーザー管理を包括的に提供するソリューションであり、外部IDプロバイダーとの統合も容易です。IDプールにIAMロールを設定することで、ユーザーがAWSリソースにアクセスする際に付与される権限を定義できます。この手法は運用オーバーヘッドを最小化し、ユーザーIDの継続的な管理を極力減らします。一方、選択肢BではIAMグループとロールの手動作成が必要で、より多くの管理作業が発生します。選択肢CではAmazon RDSによるユーザー情報の保存が必要となり、複雑さとコストが増加し、さらに管理負荷も高まります。選択肢Dでは、ユーザーとパスワードをDynamoDBテーブルに直接保存することになりますが、これはセキュリティ上不適切であり、カスタムコードと管理の負担も大きくなります。したがって、選択肢Aが最適なソリューションであり、包括的なユーザーID管理ソリューションを提供し、運用オーバーヘッドと継続的な管理を最小限に抑えます。 【灯笼考证提供:swufelp1999】