SCS-C02 中級 SCS

Amazon Cognitoのユーザープールとアイデンティティプールを使い分ける

SCS-C02では、アプリケーション利用者の認証と認可の設計が出題されます。Cognitoの2つのプールを取り違えると誤答になりやすいため、この記事で役割を整理します。

覚え方:3つの観点

「認証(誰か)」「認可(AWSの資格情報)」「フェデレーション(外部IdP)」の3つで考えます。

ユーザープール:認証の担当

ユーザーの登録、サインイン、MFAを管理し、結果としてJWT(ID、アクセス、リフレッシュ)トークンを発行します。SAMLやOIDC、ソーシャルのIdPともフェデレーションできます。Lambdaトリガーで、サインアップ時の処理を拡張できます。自社のAPIをログインユーザーだけに公開する場合は、ユーザープールのトークンをAPI GatewayのCognitoオーソライザーで検証します。

アイデンティティプール:認可の担当

ユーザープールや外部IdPで認証したユーザーに、STSの一時認証情報を発行します。認証済みと未認証のIAMロールを設定でき、ロールの選択ルールも使えます。モバイルアプリからS3やDynamoDBへ直接アクセスさせたい場合に使います。

項目ユーザープールアイデンティティプール
役割認証(サインイン・MFA)認可(AWS資格情報の発行)
発行するものJWTトークンSTSの一時認証情報
代表的な用途APIの保護・ユーザー管理S3やDynamoDBへの直接アクセス
試験ポイント 両方を組み合わせるのが定番です。ユーザープールで認証し、そのトークンをアイデンティティプールに渡して、AWS資格情報を取得します。
よくある誤り ユーザープールが発行するJWTトークンは、そのままではAWSのAPIに署名して呼び出せません。AWS資格情報を得るには、アイデンティティプールが必要です。

チェックリスト

  • ユーザープールの役割とJWTトークンを説明できる
  • アイデンティティプールの役割と認証済みロールを説明できる
  • APIの保護に使う仕組みを選べる
  • S3へ直接アクセスさせる設計を選べる

まとめ

Cognitoは、認証はユーザープール、認可はアイデンティティプールと分けて考えます。 理解度はクイズで確認し、最新の試験範囲はAWS認定 公式ページで確かめましょう。

📚

SCS(セキュリティ) におすすめの教材

要点整理から攻略する AWS認定 セキュリティ−専門知識 改訂2版 表紙
書籍

要点整理から攻略する AWS認定 セキュリティ−専門知識 改訂2版

体系的にサービスと出題範囲を学べる定番テキスト

★★★★☆

Amazonで見る
AWS認定 セキュリティ−専門知識 SCS-C02 練習問題集 表紙
問題集

AWS認定 セキュリティ−専門知識 SCS-C02 練習問題集

本番形式の演習で総仕上げに最適

★★★★☆

Amazonで見る
Udemyコース
Udemy・講座

AWS認定SCS(SCS-C03)対策トレーニングコース

動画で体系的に学べる対策コース

Udemy

Udemyで見る
Udemy模擬試験
Udemy・模試

AWS認定SCS 本番模試(4回分/260問)

本番形式の演習で総仕上げ

Udemy

Udemyで見る

本セクションにはAmazonアソシエイト・Udemyアフィリエイトのリンクが含まれます。