Knowledge Center Monthly Newsletter - March 2025
Stay up to date with the latest from the Knowledge Center. See all new and updated Knowledge Center articles published in the last month and re:Post’s top contributors.
Amazon Cognito ユーザープールを使用して、SAML ID プロバイダーとして Auth0 を設定するにはどうすればよいですか?
Amazon Cognito ユーザープールを使用して、Security Assertion Markup Language 2.0 (SAML 2.0) ID プロバイダー (IdP) として Auth0 を使いたいと考えています。設定する方法を教えてください。
簡単な説明
Amazon Cognito ユーザープールでは、Auth0 などの SAML IdP を含め、サードパーティー (フェデレーション) を介してサインインできます。詳細については、「サードパーティー経由のユーザープールへのサインインの追加」および「ユーザープールへの SAML ID プロバイダーの追加」を参照してください。
Auth0 と統合されたユーザープールにより、Auth0 アプリケーションのユーザーは Amazon Cognito からユーザープールトークンを取得することができます。詳細については、「ユーザープールでのトークンの使用」を参照してください。
Auth0 を SAML IdP として設定するには、アプリクライアントとドメイン名を持つ Amazon Cognito ユーザープール、および Auth0 アプリケーションがある Auth0 アカウントが必要です。
解決方法
アプリクライアントとドメイン名を持つ Amazon Cognito ユーザープールを作成する
詳細については、次の記事を参照してください。
- チュートリアル: ユーザープールの作成
注: ユーザープールを作成する場合、標準属性のemailがデフォルトで選択されます。ユーザープールの属性の詳細については、「ユーザープール属性」を参照してください。 - Amazon Cognito コンソールでのホストされた UI のセットアップ
注: アプリクライアントを追加する場合、[Generate client secret] (クライアントシークレットを作成) チェックボックスをオフにします。アプリクライアントのシークレットは不要で、アプリクライアントのシークレットを使用すると、Amazon Cognito JavaScript (ブラウザ) SDK がユーザーを認証できなくなります。 - ユーザープールのドメイン名の追加
Auth0 アカウントのサインアップ
[Auth0 Sign Up] (Auth0 のサインアップ) で E メールアドレスとパスワードを入力し、開始します。すでにアカウントがある場合は、ログインします。
Auth0 アプリケーションを作成する
- Auth0 ウェブサイトのダッシュボードで、[アプリケーション]を選択し、[アプリケーションの作成]を選択します。
- [Create Application] ダイアログで、アプリケーションの名前を入力します。例えば、My App などです。
- [Choose an application type] で、[Single Page Web Applications] を選択します。
- [作成] を選択します。
Auth0 アプリケーションのテストユーザーを作成する
- 左のナビゲーションバーで [User management] (ユーザー管理) を選択し、[Users] (ユーザー) を選択します。
- [Create Your First User] (最初のユーザーを作成) を選択します。また、最初のユーザーでない場合は、[Create User] (ユーザーを作成) を選択します。
- [Create User] (ユーザーを作成) ダイアログボックスで、ユーザーの E メールとパスワードを入力します。
- [保存] を選択します。
アプリケーション用の SAML 設定を設定する
- 左側のナビゲーションバーで [Applications] を選択します。
- 作成したアプリケーションの名前を選択します。
- [Addons] (アドオン) タブで、[SAML2 Web App] をオンにします。
- [Addon: SAML2 Web App] (アドオン: SAML2 Web App) ダイアログボックスの [Settings] (設定) タブで、[Application Callback URL] に「https://yourDomainPrefix.auth.region.amazoncognito.com/saml2/idpresponse」と入力します。
注: yourDomainPrefix と region をユーザープールの値に置き換えます。ユーザープールの管理ページの [Domain name] (ドメイン名) タブにある、Amazon Cognito コンソールから確認できます。
- または -
次のようなカスタムドメインコールバック URL を入力します。 https/yourcustomDomain/saml2/idPresponse。詳細については、[ユーザープールへのカスタムドメインの追加] を参照してください。
- [設定] では、次の操作を実行します。
視聴者の場合、urn:amazon:cognito:sp:yourUserPoolId でコメント区切り文字 (//) を削除し、デフォルト値 (urn:foo) を置き換えます。
注 :Amazon Cognito のユーザープール ID で yourUserPoolId を置き換えます。ユーザープールの管理ページの [General settings] タブで、Amazon Cognito コンソールの ID を見つけます。
mappings と email の場合では、(//) コメント区切り文字を削除します。Amazon Cognito ユーザープールに必要な他のすべての属性についても同様にします。詳細については、「ユーザープール属性」を参照してください。
nameIdentifierFormat では、コメント区切り文字 (//) を削除します。デフォルト値 (urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified) を urn:oasis:names:tc:SAML:2.0:nameid-format:persistent に置き換えます。 - (オプション) [Debug] を選択してから、作成したテストユーザーとしてログインし、設定が機能することを確認します。
- [有効] を選択し、[保存] をクリックします。
Auth0 アプリケーションの IdP メタデータを取得する
[Addon: SAML2 Web App] (アドオン: SAML2 Web App) ダイアログボックスの [Usage] (使用状況) タブで、[Identity Provider Metadata] (ID プロバイダのメタデータ) を見つけます。その後、次のいずれかを行います。
- [download] (ダウンロード) を右クリックして、URL をコピーします。
- .xml メタデータファイルをダウンロードするには、[download] を選択します。
Amazon Cognitoで Auth0 を SAML IdP として設定する
詳細については、「ユーザープールの SAML ID プロバイダーの作成と管理」を参照してください。「ユーザープールに SAML 2.0 ID プロバイダーを設定する」の指示に従ってください。
メタデータドキュメント用に SAML IdP を作成する場合、アイデンティティプロバイダメタデータ URL をペーストするかまたは .xml メタデータファイルをアップロードします。
E メールアドレスを IdP 属性からユーザープール属性へマッピングする
詳細については、「ユーザープールの ID プロバイダー属性 mappings の指定」をご参照いただき、「SAML プロバイダー属性 mappings を指定する方法」の指示に従ってください。
SAML 属性を追加する場合、[SAML Attribute] (SAML 属性) に、http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress と入力します。[User pool attribute] (ユーザープール属性) で、リストから [Email] (E メール) を選択します。
Amazon Cognito でアプリクライアントの設定を変更する
- Amazon Cognito コンソールのユーザープールの管理ページの [App integration] (アプリの統合) で、[App client settings] (アプリクライアントの設定) を選択します。次に、以下の操作を実行します :
有効な ID プロバイダー で、[Auth0] および [Cognito User Pool] チェックボックスをオンにします。
[コールバック URL] にログイン後にユーザーをリダイレクトする URL を入力します。テストについては、https://www.amazon.com など任意の有効な URL を入力します。
[サインアウト URL] にログアウト後にユーザーをリダイレクトする URL を入力します。テストについては、https://www.amazon.com など任意の有効な URL を入力します。
[Allowed OAuth Flows] で必ず [Implicit grant] チェックボックスをオンにします。
[Allowed OAuth Scopes] で必ず [email] および [openid] チェックボックスをオンにしてください。 - [Save changes] (変更を保存) を選択します。
詳細については、「アプリクライアントの設定用語」を参照してください。
ログインエンドポイントをテストする
- ウェブブラウザにこの URL を入力してください。https://<yourDomainPrefix>.auth.<region>.amazoncognito.com/login?response_type=token&client_id=<yourClientId>&redirect_uri=<redirectUrl>
注: yourDomainPrefix と region をユーザープールの値に置き換えます。ユーザープールの管理ページの [Domain name] (ドメイン名) タブにある、Amazon Cognito コンソールから確認できます。
yourClientId をアプリクライアントの ID で置き換え、redirectUrl をクライアントのコールバック URL で置き換えます。ユーザープールの管理ページの [App client settings] (アプリクライアントの設定) タブにある、Amazon Cognito コンソールから確認できます。
詳細については、「Amazon Cognito のホストされたウェブの UI を設定する方法を教えてください。」および「ログインエンドポイント」を参照してください。 - [Auth0] を選択します。
注 : アプリクライアントのコールバック URL にリダイレクトされている場合、ブラウザで Auth0 アカウントにすでにサインインしています。ユーザープールのトークンは、ウェブブラウザのアドレスバーの URL に表示されます。 - Auth0 アプリケーションのログインページで、作成したテストユーザーの E メールとパスワードを入力します。
- [Log in] を選択します。
ログイン後、アプリクライアントのコールバック URL にリダイレクトされます。ユーザープールのトークンは、ウェブブラウザのアドレスバーの URL に表示されます。
関連情報
サードパーティー SAML ID プロバイダーと Amazon Cognito ユーザープールとの統合
Amazon Cognito ユーザープールでサードパーティーの SAML ID プロバイダーをセットアップするにはどうすればよいですか?

関連するコンテンツ
- 質問済み 1年前lg...
- 質問済み 1ヶ月前lg...
- 質問済み 2年前lg...