SAA / ドメイン1 セキュアなアーキテクチャの設計

Amazon Cognito

は、Web アプリケーションやモバイルアプリケーションの利用者を認証し、必要に応じて AWS リソースへの一時的なアクセス権を提供するサービスです。SAA では、ユーザープールとアイデンティティプールの違い、企業従業員向けの との使い分けが重要です。


概要

は、アプリ利用者のサインアップ、サインイン、、ソーシャルログイン、外部 連携を提供します。アプリケーションが独自にパスワードデータベースを実装する負担を減らせます。


主要技術

①ユーザープール ⚠️ 頻出

ユーザープールはアプリ利用者のディレクトリです。認証に成功すると ID トークン、アクセストークン、更新トークンを発行します。アプリや で「誰であるか」を確認する用途です。


②アイデンティティプール

アイデンティティプールは、認証済みまたはゲストの利用者に一時的な AWS 認証情報を提供します。 ロールと連携し、 への写真アップロードなど、クライアントから AWS リソースへ限定アクセスさせます。

機能主目的出力
ユーザープールユーザー認証JWT トークン
アイデンティティプールAWS リソースへの認可一時的な AWS 認証情報

③外部IdPとMFA

SAML、OIDC、ソーシャル と連携できます。 やパスワードポリシーを利用し、認証処理をアプリケーションから分離します。


④API GatewayやALBとの統合

のオーソライザーや の認証機能と連携し、認証済み利用者だけをバックエンドへ到達させられます。認証と による AWS 認可は別の判断です。

ALB の認証機能は のルールで動き、 ユーザープールか OpenID Connect 対応の (社内の IdP など)で利用者を認証してから、ターゲットへリクエストを転送します。アプリケーションにログイン処理を実装しなくても、社員だけが社内向けアプリを使える状態を作れます。


試験対策

問題文の要件選ぶ機能
Web/モバイルアプリの利用者を認証 ユーザープール
認証済み利用者へ の限定権限を渡すCognito アイデンティティプール
従業員が複数 AWS アカウントへアクセス
や へ権限を付与 ロール

「ログイン」と「AWS リソースへの一時権限」を分けて考えると、2種類のプールを選びやすくなります。


参考文献

  1. ※1出題比率: AWS 公式の試験ガイドに記載された、採点対象の設問のうちその分野が占める割合です。

検索

キーワードを入力してください