DVA-C02:AWS Certified Developer - Associate アプリケーションのセキュリティ 問11
アプリケーションのセキュリティ/アプリと AWS サービスの認証・認可の実装モバイルアプリで、まずエンドユーザーのサインアップ/サインイン(ユーザーディレクトリ)を行い、認証済みユーザーに AWS リソース(S3 等)へ直接アクセスするための一時的な AWS 認証情報も発行したい。Amazon Cognito の構成として最も適切なものはどれか。
当サイトのオリジナル問題(DVA-C02:AWS Certified Developer - Associateの出題範囲「アプリケーションのセキュリティ」に対応。実際の試験問題ではありません)
- Aユーザープールだけで AWS 認証情報も直接発行する
- BIDプールだけでユーザーのサインアップ/サインインも行う
- CIAM ユーザーをエンドユーザーごとに作成する
- Dユーザープールで認証し、IDプールで認証済みユーザーに一時的な AWS 認証情報を発行する
正解:D
解説
Amazon Cognito では、ユーザープールがユーザーディレクトリ(サインアップ/サインイン・トークン発行)を担い、IDプール(フェデレーテッドアイデンティティ)が認証済みのIDに対して AWS リソースへアクセスするための一時的な AWS 認証情報を発行します。役割が分かれており、片方だけで両方は担えず、エンドユーザーごとのIAMユーザー作成は不適切です。
下線の用語は 用語集 で意味を確認できます。
選択肢ごとの解説
- A誤り。AWSリソースへの一時認証情報の発行はIDプールの役割で、ユーザープール単体ではありません。
- B誤り。サインアップ/サインインのユーザーディレクトリはユーザープールの役割です。
- C誤り。エンドユーザーごとのIAMユーザー作成はスケールせず不適切です。
- D正しい。認証はユーザープール、AWS一時認証情報の発行はIDプールです。