無限ノック › SCS 練習問題一覧 › 問題
SCSアイデンティティとアクセス管理

あるモバイルゲーム企業がAWSでバックエンドを構築しています。以下の要件があります。 ・ユーザーはGoogleアカウントまたはメール/パスワードでサインインできること ・認証済みユーザーは自分専用のS3プレフィックス(s3://game-data/users/{ユーザーID}/)にのみアクセスできること ・未認証(ゲスト)ユーザーにも一部の公開コンテンツへの読み取りアクセスを許可すること ・バックエンドAPIはAmazon API Gatewayで公開すること この要件を最も適切に満たすAmazon Cognitoの構成はどれですか?

A
Cognitoユーザープールのみを使用し、API GatewayにCognitoオーソライザーを設定してJWTトークンでS3への直接アクセスを制御する
ユーザープールのみではJWTトークンが発行されるが、S3はAWS Signature V4を要求するためJWTでS3に直接アクセスすることはできない。AWSクレデンシャルの発行にはIDプールが必要。
B
Cognitoユーザープールとアイデンティティプールを組み合わせ、認証済みロールに${cognito-identity.amazonaws.com:sub}でS3プレフィックス制限を設定し、未認証ロールで公開コンテンツ読み取りを許可する
✓ 正解
Cognitoユーザープールがメール/パスワード認証とGoogle連携を担当し、Cognito IDプール(フェデレーテッドアイデンティティ)がJWTを受け取ってAWSの一時クレデンシャルを発行する。IAMポリシー変数`${cognito-identity.amazonaws.com:sub}`でユーザー固有のS3プレフィックスに制限でき、未認証ロールの設定でゲストアクセスも実現できる。両者の組み合わせが本要件の標準パターン。
C
Cognito IDプールのみにGoogleのOAuthトークンを直接登録し、メール/パスワード認証はIAMユーザーで別途管理する
IDプールのみの構成では、メール/パスワード認証機能がなく、ユーザー管理も別システムが必要になり統合管理ができない。
D
AWS IAM Identity CenterにGoogleをIdPとして登録し、モバイルゲームユーザーをSSO経由でAWSリソースにアクセスさせる
IAM Identity Centerは企業従業員向けのAWSコンソールSSOに使用するサービスであり、コンシューマー向けモバイルゲームのエンドユーザー認証には適していない。

解説

Cognitoユーザープールがメール/パスワード認証とGoogle連携を担当し、Cognito IDプール(フェデレーテッドアイデンティティ)がJWTを受け取ってAWSの一時クレデンシャルを発行する。IAMポリシー変数`${cognito-identity.amazonaws.com:sub}`でユーザー固有のS3プレフィックスに制限でき、未認証ロールの設定でゲストアクセスも実現できる。両者の組み合わせが本要件の標準パターン。 選択肢AのユーザープールのみではJWTトークンが発行されるが、S3はAWS Signature V4を要求するためJWTでS3に直接アクセスすることはできない。AWSクレデンシャルの発行にはIDプールが必要。 選択肢CのIDプールのみの構成では、メール/パスワード認証機能がなく、ユーザー管理も別システムが必要になり統合管理ができない。 選択肢DのIAM Identity Centerは企業従業員向けのAWSコンソールSSOに使用するサービスであり、コンシューマー向けモバイルゲームのエンドユーザー認証には適していない。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでSCSを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← SCS の問題一覧に戻る