Skip to main content
SAML 2.0を使用するとして、Auth0を構成で利用できます。

Auth0 組み込みサポートに対応した SSO 連携

  1. Auth0 Dashboard > アプリケーション > SSO Integrations に移動し、Create SSO Integration を選択します。
  2. SSO のアイデンティティプロバイダー連携を選択します。次の画面で、Continue をクリックします。
  3. 選択したプロバイダーで必要な詳細を入力し、Save をクリックします。
Tutorial ビューには、選択した連携に応じた追加の設定手順が表示されます。 一部の SSO 連携では、SAML2 Web App アドオン を使用します。

SSO 連携を手動で設定する

の SAML2 Web App アドオンを使用すると、SAML 連携を手動で設定できます。SAML アドオンは、画面上の手順とサービスプロバイダーの設定で確認できる情報を使って設定できます。

サービスプロバイダーからアプリケーションのコールバック URL を取得する

SAML 認証アサーションの送信先となる URL を、サービスプロバイダーから取得します。これは Assertion Consumer Service URLPost-back URL、または Callback URL と呼ばれることがあります。

Auth0 で SAML SSO を設定する

  1. Auth0 Dashboard > アプリケーション > アプリケーション に移動し、新しいアプリケーションを作成するか、設定するアプリケーションの名前をクリックします。
  2. Settings ページの一番下までスクロールし、Advanced Settings をクリックします。
  3. Certificates タブを選択し、Download Certificates をクリックして PEM 形式を選択します。 証明書は {yourTenant}.pem という名前のファイルとしてダウンロードされます。このファイルは保存しておいてください。サービスプロバイダーの設定時にアップロードする必要があります。
    Dashboard Applications Advanced Settings Certificates tab
  4. Endpoints タブを選択し、SAML Protocol URL を探します。これをコピーして保存します。後でサービスプロバイダーに渡す必要があります。
  5. 上部までスクロールし、Addons タブを選択します。
  6. SAML2 Web App トグルを有効にします。
    1 つのクライアントで SAML と WS-Fed の両方の add-on を有効にすることはサポートされておらず、動作が不安定になる可能性があります。add-on ごとに別のクライアントを使用してください。
  7. Settings タブで、Auth0 がユーザーを認証した後に SAML アサーションの送信先となる、サービスプロバイダー (またはアプリケーション) の Application Callback URL を入力します。これは Assertion Consumer Service (ACS) URL です。
    Dashboard Applications Applications Addons Tab SAML2 Web App Settings Tab
    SAML2 add-on に許可済みの callback URL を追加すると、その URL はアプリケーションの許可済み callback URL 一覧の先頭にも追加されます。これにより、この一覧の先頭 URL をデフォルトとして使用する機能に影響が出ます。また、後でアプリケーションの許可済み callback URL 一覧の先頭 URL を更新または変更すると、その変更は SAML2 add-on にも反映されるため、正常に動作しなくなる可能性があります。
  8. タブの一番下までスクロールし、Enable をクリックします。
  9. サービスプロバイダーが SAML リクエストで複数の ACS URL を送信する場合は、アプリケーションの Settings タブに移動し、Allowed Callback URLs を見つけてそれらを追加し、許可リストに含める必要があります。

サービスプロバイダーで SAML SSO を設定する

  1. SAML Addon の Usage タブに移動し、サービスプロバイダーのアプリケーションを設定するために必要な情報を確認します。
    Auth0 Dashboard アプリケーション アプリケーション Addons タブ SAML2 Web App Usage タブ
  2. IDプロバイダーのメタデータ を見つけて Download をクリックし、メタデータファイルをダウンロードします。サービスプロバイダーにこの情報を追加することで、Auth0 に対して SAML ベースの認証リクエストを送信する方法を認識できるようになります。ここで示す手順は一般的なものです。サービスプロバイダー側で該当する画面とフィールドを見つける必要があります。
  • サービスプロバイダーがメタデータファイルのアップロードに対応している場合は、SAML2 Web Addon の Usage タブで取得したメタデータ URL を指定します。
  • サービスプロバイダーがメタデータファイルのアップロードに対応していない場合は、SAML Addon の Usage ビューの情報を使用して設定を手動で行います。
    • Login URL には、サービスプロバイダーが SAML Authentication Requests の送信先として使用する IDプロバイダーのログイン URL を指定します。
    • カスタムドメインがある場合は、Auth0 ドメインではなく、カスタムドメインベースの URL を使用します。次の形式の URL の代わりに: https://{yourTenant}.auth0.com/samlp/CLIENTID?connection=Username-Password-Authentication 次の形式の URL を使用します: https://{yourCustomDomain}/samlp/CLIENTID?connection=Username-Password-Authentication.
    • Organizations を使用している場合は、クエリ文字列で organization パラメータとして organization ID を指定することで、ユーザーを特定の organization のログインプロンプトに誘導できます。必要に応じて、connection パラメータを含めて 接続 を指定することもできます。例: https://{yourTenant}.auth0.com/samlp/CLIENTID?connection=Acme-Saml-Connection&organization=org_123456789
    • サービスプロバイダーに Logout URL のフィールドもある場合は、再度 IDプロバイダーのログイン URL を入力します。login と logout はどちらも同じ URL で処理されます。
  • SAML Addon の Usage ビューから証明書をダウンロードし、サービスプロバイダーに提供します。この証明書は、Auth0 からサービスプロバイダーに送信される SAML Authentication Assertions の署名を検証するために使用されます。サービスプロバイダーが Issuer を求める場合は、これも SAML Addon の Usage ビューから取得できます。

設定のテスト

上記の設定が完了したら、ログインをテストします。
  • アプリケーションが最初からうまく動作しない場合は、テストのたびにブラウザーの履歴と、できれば Cookie を削除してください。そうしないと、ブラウザーが HTML ページの最新バージョンを読み込めなかったり、古い Cookie が残っていて実行に影響したりすることがあります。
  • SSO のトラブルシューティングに役立てるため、やり取りの HTTP トレースを取得してください。多くのツールでは、分析用にブラウザーの HTTP トラフィックをキャプチャできます。
    • “HTTP Trace” でインターネット検索し、ツールを見つけてインストールしてください。
    • ログインの一連の流れを最初から最後まで取得し、トレースを分析してください。想定される一連の流れのどこまで進んでいるかを確認するには、GET リクエストの流れを追跡します。元のサイトから SP、次に IdP へのリダイレクト、ログインが必要な場合は資格情報の送信、その後 コールバック URL または SP へのリダイレクト、さらにアプリケーションで指定した コールバック URL へのリダイレクトが確認できるはずです。
  • ブラウザーで Cookie と JavaScript が有効になっていることを確認してください。
  • SAML アサーションのデコードには、http://samltool.io ツールを使用してください。

詳しくはこちら