SAML ID プロバイダーを使用したサインインをユーザープールに追加する (オプション) - Amazon Cognito

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

SAML ID プロバイダーを使用したサインインをユーザープールに追加する (オプション)

アプリユーザーが SAML ID プロバイダー (IdP) を通じてサインインするようにできます。ユーザーが直接サインインしても、サードパーティーを介してサインインしても、すべてのユーザーにはユーザープールにプロファイルがあります。SAML ID プロバイダーを通じてサインインを追加しない場合は、この手順を省略してください。

詳細については、「ユーザープールでの SAML ID プロバイダーの使用」を参照してください。

SAML ID プロバイダーを更新し、ユーザープールを設定する必要があります。SAML 2.0 ID プロバイダーの証明書利用者またはアプリケーションとしてユーザープールを追加する方法については、SAML ID プロバイダーのドキュメントを参照してください。

また、SAML ID プロバイダーにアサーションコンシューマーサービス (ACS) エンドポイントを提供する必要があります。SAML ID プロバイダーの SAML 2.0 POST バインド用に、ユーザープールドメインで次のエンドポイントを設定します。ユーザープールドメインの詳細については、「」を参照してくださいユーザープールのドメインを設定する

https://Your user pool domain/saml2/idpresponse With an Amazon Cognito domain: https://<yourDomainPrefix>.auth.<region>.amazoncognito.com/saml2/idpresponse With a custom domain: https://Your custom domain/saml2/idpresponse

ドメインプレフィックスとユーザープールのリージョン値は、Amazon Cognito コンソールドメイン名タブにあります。

一部の SAML ID プロバイダーでは、オーディエンス URI または SP エンティティ ID urnとも呼ばれるサービスプロバイダー (SP) を次の形式で指定する必要があります。

urn:amazon:cognito:sp:<yourUserPoolID>

ユーザープール ID は、Amazon Cognito コンソール[General settings] (全般設定) タブにあります。

また、SAML ID プロバイダーを設定して、ユーザープールに必要なすべての属性の属性値を提供する必要もあります。通常、email はユーザープールの必須属性です。その場合、SAML ID プロバイダーは、SAML アサーションの email 値 (クレーム) を指定する必要があります。

Amazon Cognito ユーザープールはバインディング後のエンドポイントで SAML 2.0 フェデレーションをサポートします。これにより、ユーザープールはユーザーエージェントを通じて ID プロバイダーから直接 SAML レスポンスを受信するため、アプリが SAML アサーションレスポンスを取得または解析する必要がなくなります。

ユーザープールに SAML 2.0 ID プロバイダーを設定する
  1. Amazon Cognito コンソールに移動します。プロンプトが表示されたら、 AWS 認証情報を入力します。

  2. [User Pools] (ユーザープール) を選択します。

  3. リストから既存のユーザープールを選択するか、ユーザープールを作成します。

  4. [Sign-in experience] (サインインエクスペリエンス) タブを選択します。[Federated sign-in] (フェデレーションサインイン) を検索し、[Add an identity provider] (ID プロバイダーの追加) を選択します。

  5. [SAML] ソーシャル ID プロバイダーを選択します。

  6. カンマで区切られた [Identifiers] (識別子) を入力します。識別子は Amazon Cognito に、ユーザーがサインインしたときに入力した E メールアドレスを確認するように指示します。次に、ドメインに対応するプロバイダーに指示します。

  7. ユーザーがログアウトしたときに、Amazon Cognito が署名されたサインアウト要求をプロバイダーに送信するためには、[Add sign-out flow] (サインアウトフローの追加) を選択します。SAML 2.0 ID プロバイダーを設定して、ホストされた UI を構成するときに作成される https://<your Amazon Cognito domain>/saml2/logout エンドポイントにサインアウト応答を送信する必要があります。saml2/logout エンドポイントは POST バインディングを使用します。

    注記

    このオプションが選択されていて、SAML ID プロバイダーが署名付きログアウトリクエストを期待する場合は、Amazon Cognito が提供する署名証明書を SAML IdP で設定する必要もあります。

    SAML IdP は署名されたログアウトリクエストを処理し、Amazon Cognito セッションからユーザーをログアウトします。

  8. [Metadata document source] (メタデータドキュメントソース) を選択します。ID プロバイダーがパブリック URL で SAML メタデータを提供する場合は、[Metadata document URL] (メタデータドキュメント URL) を選択してそのパブリック URL を入力できます。それ以外の場合は、[Upload metadata document] (メタデータドキュメントをアップロード) を選択し、プロバイダーから以前ダウンロードしたメタデータファイルを選択します。

    注記

    プロバイダーにパブリックエンドポイントがある場合は、ファイルをアップロードするのではなく、メタデータドキュメント URL を入力することをお勧めします。これにより、Amazon Cognito はメタデータを自動的に更新できます。通常、メタデータの更新は 6 時間ごとまたはメタデータの有効期限が切れる前のいずれか早いタイミングで発生します。

  9. [Map attributes between your SAML provider and your appS] (AML プロバイダーとアプリケーション間で属性をマッピングする) をクリックして、SAML プロバイダー属性をユーザープールのユーザープロファイルにマッピングします。ユーザープールの必須属性を属性マップに含めます。

    たとえば、[User pool attribute] (ユーザープール属性) emailを選択して、ID プロバイダーからの SAML アサーションに表示される SAML 属性名を入力します。ID プロバイダーは、参考として SAML アサーションのサンプルを提供する場合があります。ID プロバイダーの中には、email などのような単純な名前を使用している ID プロバイダーもあります。次の例のように、URL 形式の属性名を使用するものもあります。

    http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
  10. [作成] を選択します。