Amazon Cognitoとは
モバイル・Webアプリケーションのユーザー認証・認可・ユーザー管理を提供するサービス。ユーザープール(認証・ユーザーディレクトリ)とIDプール(フェデレーテッドID・AWS認証情報の払い出し)の2つのコンポーネントで構成される。
Google・Facebook・Apple等のソーシャルIDPやSAML/OIDCによる企業IdPとのフェデレーションをサポート。JWT(JSON Web Token)を発行し、API GatewayやALBのオーソライザーとして使用できる。
試験での問われ方
「アプリユーザーのサインアップ・サインインを管理したい」「モバイルアプリからAWSリソースに直接アクセスしたい」シナリオではCognitoを選ぶ。IAMとの使い分けは「社内ユーザー(IAM)」か「エンドユーザー(Cognito)」か。
ユーザープールはJWT発行のみ(AWSへのアクセス権限なし)、IDプールは一時的なAWS認証情報を払い出すという役割の違いが引っかけとして頻出。
このサービスが登場する演習問題(14問)
- 【CLF-C02】ある企業が、Webアプリケーションでユーザー認証機能(サインアップ・サインイン・ソーシャルログイン等)を実装したいと考え…
- 【SAA-C03】ある企業が、Amazon API Gateway + Lambda のサーバーレスアーキテクチャを使って公開 API を…
- 【SAA-C03】ある企業が、Amazon Cognito ユーザープールを使ったモバイルアプリを運用している。ユーザーがサインインした後…
- 【DVA-C02】ある企業が、API GatewayのHTTP APIとLambda統合でREST APIを構築している。フロントエンドの…
- 【DVA-C02】あるチームがAPI GatewayとLambdaで社内ツール向けのREST APIを構築している。このAPIをインターネ…
- 【DVA-C02】ある企業のモバイルアプリは、ユーザーがサインアップ・サインインして独自の S3 バケットのオブジェクトにアクセスできる必…
- 【DVA-C02】あるスタートアップは SaaS アプリケーションのバックエンドで、ユーザーごとに異なる S3 パスへのアクセスを制御した…
- 【DVA-C02】あるチームは Cognito を使ったモバイルアプリを開発しています。アプリは Cognito ユーザープールでサインイ…
- 【DVA-C02】ある開発者は Cognito ユーザープールを使ったウェブアプリを構築しています。サインインページをゼロから実装する工数…
- 【DVA-C02】ある企業はマルチテナント SaaS アプリケーションを開発しています。各テナントのデータを DynamoDB テーブルに…
- 【DVA-C02】ある企業はモバイルアプリでユーザーが Google アカウントでサインインできる機能を実装しています。Google 認証…
- 【DVA-C02】ある企業の Cognito ユーザープールでは、ユーザーサインアップ時に企業ドメイン(@example.com)のメール…
- 【DVA-C02】ある企業は Cognito ID プールを使って認証済みユーザーと未認証(ゲスト)ユーザーの両方に AWS リソースへの…
- 【SAP-C02】ある企業が AWS 上でウェブアプリケーションを構築しており、ユーザー認証・認可の機能を最小限の開発負荷で実装したいと考…