Amazon Cognito

Amazon Cognito の特徴

Amazon Cognito は、ウェブアプリケーションやモバイルアプリケーションの認証、許可、ユーザー管理をサポートしています。ユーザーは、ユーザー名とパスワードを使用して直接サインインするか、Facebook、Amazon、Google、Apple などのサードパーティーのソーシャル ID プロバイダーや、SAML 2.0 による Microsoft Active Directory などのエンタープライズ ID プロバイダーを通してを通じてサインインできます。

また、モバイルアプリ上での MFA 認証(多要素認証)による保護を可能にします。

用語

  • サードパーティー(third party) ← 第三者団体(企業、機関等)
  • ソーシャル ID プロバイダー ← 一般的なユーザーのIDを管理する機関。Facebook、Amazon、Google、Apple など
  • SAML(Security Assertion Markup Language) ← 通信プロトコル。SSO(Single Sign On)で利用する。

ID プロバイダー(IdP) 

ユーザーのIDを保存及び検証するサービス。主な IdP には Microsoft Entra ID (Azure AD)、Okta、Google Workspace、ADFS(Active Directory Federation Service) などがあります。

Cognito が利用できる ID プロバイダー

  • Facebook (サードパーティーのソーシャル ID プロバイダー)
  • Amazon (サードパーティーのソーシャル ID プロバイダー)
  • Google (サードパーティーのソーシャル ID プロバイダー)
  • Apple (サードパーティーのソーシャル ID プロバイダー)
  • Microsoft Active Directory (SAML 2.0 によるエンタープライズ ID プロバイダー)

IDフェデレーションとは?

Amazon Cognito を調べると「ID フェデレーション」という用語が出てきます。

ID フェデレーションとは Facebook などの認証結果を他のサイトでも利用する機能(認証ソリューション)です。

ID フェデレーションによりシングルサインオンを実現することができます。

Amazon Cognito ユーザープール(user pools

Amazon Cognito ユーザープールは、ウェブおよびモバイルアプリケーションの認証と認可のためのユーザーディレクトリで、アプリの利用者を管理するための会員名簿 + ログイン機能です。アプリ側から見ると、ユーザープールは OpenID Connect(OIDC)の IdP として動きます。

Cognito ユーザープールの役割

ユーザープールは次の役割を持ちます。

  • ユーザー登録
  • サインイン
  • パスワード管理
  • MFA
  • 外部 IdP 連携
  • ログイン後のトークン発行

外部 IdPとの統合

Amazon Cognito は SAML 2.0 に対応しているので外部の IdP(アイデンティティプロバイダ)と統合できます。

Cognito ユーザープールを Relying Party(信頼されたサービスプロバイダー)として設定することで SAML 認証が可能になります。

Amazon Cognito を利用しない場合

Amazon Cognito を利用しない場合は、Web IdP(Amazon、Facebook、Google等のOIDC互換IdPでログインする)と通信をするアプリを作成して、AssumeRoleWithWebIdentity API を呼び出すことで認証することができます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

AlphaOmega Captcha Classica  –  Enter Security Code
     
 

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください