Amazon Cognito ユーザープールの SAML ID プロバイダーとして AD FS をセットアップする方法を教えてください。

所要時間2分
0

Amazon Cognito ユーザープールで、Active Directory フェデレーションサービス (AD FS) を Security Assertion Markup Language 2.0 (SAML 2.0) ID プロバイダー (IdP) として使用したいです。設定方法を教えてください。

簡単な説明

Amazon Cognito ユーザープールでは、AD FS などの SAML IdP を含む、サードパーティ経由 (フェデレーション) のサインインが可能です。詳細については、「サードパーティ経由のユーザープールへのサインインを追加する」および「ユーザープールに SAML ID プロバイダーを追加する」を参照してください。

Amazon Cognito のホストされたウェブ UI を使用すると、Amazon Elastic Compute Cloud (Amazon EC2) Windows インスタンスで ADFS サーバーとドメインコントローラーを設定し、その設定をユーザープールに統合できます。

重要: この解決策には、お客様が所有するドメイン名が必要です。独自のドメインを所有していない場合は、Amazon Route 53 を使用して新しいドメインを登録するか、他のドメインネームシステム (DNS) サービスを使用して登録してください。

解決策

アプリクライアントで Amazon Cognito ユーザープールを作成する

詳細については、「チュートリアル: ユーザープールの作成」および「Amazon Cognito コンソールを使用してホスト UI を設定する」を参照してください。

注: ユーザープールの作成時に、デフォルトで標準属性 email が選択されます。ユーザープール属性の詳細については、「ユーザープール属性を設定する」を参照してください。

EC2 Windows インスタンスを設定する

EC2 Windows インスタンスを設定して起動し、そのインスタンスで AD FS サーバーとドメインコントローラーを設定します。

Amazon Cognito で AD FS サーバーを SAML IdP として設定する

詳細については、「ユーザープールに SAML ID プロバイダーを設定、管理する (AWS マネジメントコンソール)」を参照し、「ユーザープールで SAML 2.0 ID プロバイダーを設定する方法」の手順に従ってください。

SAML IdP の作成時に、メタデータドキュメントにメタデータドキュメントのエンドポイント URL を貼り付けるか、.xml メタデータファイルをアップロードします。

IdP 属性からユーザープール属性にメールアドレスをマッピングする

詳細については、「ユーザープールに ID プロバイダーの属性マッピングを指定する」を参照し、「SAML プロバイダーの属性マッピングを指定する方法」の手順に従ってください。

SAML 属性の追加時に、[SAML 属性]http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress と入力します。[ユーザープール属性] で、リストから [電子メール] を選択します。

Amazon Cognito でアプリケーションクライアント設定を変更する

  1. Amazon Cognito コンソールで、ユーザープール用の管理ページの [アプリ統合][アプリクライアント設定] を選択します。次に、以下の操作を行います。
    [有効な ID プロバイダー] で、設定した SAML IdP にチェックを入れます。(例: ADFS 。)
    [コールバック URL] で、ユーザーのログイン後にリダイレクトする URL を入力します。
    [ログアウト URL] で、ユーザーのログアウト後にリダイレクトする URL を入力します。
    [許可する OAuth フロー] で、[認証コードの付与][暗黙的付与] にチェックを入れます。
    [許可する OAuth スコープ] で、すべてのチェックボックスにチェックを入れます。
  2. [変更を保存] を選択します。詳しくは、「アプリケーションクライアント設定の用語」を参照してください。

Amazon Cognito がホストするウェブ UI を使用して設定をテストする

  1. ウェブブラウザに、https://domainNamePrefix.auth.region.amazoncognito.com/loginresponse_type=token&client_id=appClientId&redirect_uri=https://www.example.com という URL を入力します
    注: URL には、ユーザープールとアプリクライアントの値を使用します。[アプリ統合] ページの Amazon Cognito コンソールで、ユーザープールのドメイン (ドメイン名のプレフィックスと AWS リージョンを含む) を見つけます。アプリクライアント設定でアプリクライアント ID を確認します。 https://www.example.com は、実際の SAML IdP のコールバック URL に置き換えます。
  2. 設定した SAML IdP の名前を選択します。AD FS 認証ページにリダイレクトされます。
  3. [組織アカウントでサインイン] に、Active Directory ユーザーのユーザー名とパスワードを入力します。
  4. [サインイン] を選択します。サインインが成功すると、Amazon Cognito はユーザープールのトークンおよび、成功を示す SAML 応答を返します。SAML 応答の確認方法に関する詳細については、「トラブルシューティング用途でブラウザで SAML 応答を表示する方法」を参照してください。
    注: デコードすると、SAML 応答には必須属性 NameID が含まれています。

関連情報

Amazon Cognito ユーザープールを使用してウェブアプリケーション用の ADFS フェデレーションを構築する

サードパーティーの SAML ID プロバイダーと Amazon Cognito ユーザープールを統合する

SAML ユーザープールの IdP 認証フロー

Amazon Cognito ユーザープールを使用してサードパーティの SAML ID プロバイダーを設定する方法を教えてください

コメントはありません

関連するコンテンツ