Skip to main content
Auth0 では、 (IdP) 接続を作成できます。

前提条件

開始する前に、以下を行ってください。
  • Auth0 にアプリケーションを登録します
    • 適切な Application Type を選択します。
    • Allowed Callback URL{https://yourApp/callback} を追加します。
    • アプリケーションの Grant Types に適切なフローが含まれていることを確認します。
  • このエンタープライズ接続の名前を決めます
    • Post-back URL (Assertion Consumer Service URL とも呼ばれます) は次のようになります: https://{yourDomain}/login/callback?connection={yourConnectionName}
    • Entity ID は次のようになります: urn:auth0:{yourTenant}:{yourConnectionName}

手順

アプリケーションを SAML IDプロバイダーに接続するには、次の手順を実行する必要があります。
  1. IdP で Post-back URL と Entity ID を入力します (手順については、SAML IDプロバイダー設定を参照してください) 。
  2. IdP から署名証明書を取得し、Base64 に変換します。
  3. Auth0 でエンタープライズ接続を作成します。
  4. Auth0 アプリケーションのエンタープライズ接続を有効にします。
  5. マッピングを設定します (ほとんどの場合は不要です) 。
  6. 接続をテストします。

IdPから署名証明書を取得する

SAML Login では、Auth0 はサービスプロバイダーとして機能するため、SAML IdP から X.509 署名証明書 (PEM または CER 形式) を取得する必要があります。これは後で Auth0 にアップロードします。この証明書の取得方法はさまざまなため、さらにサポートが必要な場合は、IdP のドキュメントを参照してください。

署名証明書をBase64に変換する

X.509 署名証明書をアップロードするには、またはを使用できます。Management API を使用する場合は、ファイルを Base64 に変換する必要があります。そのためには、シンプルなオンラインツールを使用するか、Bash で次のコマンドを実行します: cat signing-cert.crt | base64

アサーションの暗号化

SAML アサーションが暗号化されている場合は、Auth0 が復号をどのように処理するかを認識できるように、接続に対して追加の値を設定する必要があります。

Auth0 でエンタープライズ接続を作成する

次に、Auth0 で SAML エンタープライズ接続を作成して設定し、X.509 署名証明書をアップロードする必要があります。この作業は、Auth0 のAuth0 Dashboardまたは Management API のいずれかを使用して実行できます。

Auth0 Dashboard を使用してエンタープライズ接続を作成する

  1. Auth0 Dashboard > Authentication > Enterprise に移動し、SAML を見つけて + を選択します。
    Dashboard - 接続 - エンタープライズ
  2. 接続の詳細を入力し、Create: を選択します。
SAML 設定を構成
3. Provisioning ビューで、Auth0 内でユーザープロファイルを作成および更新する方法を設定します。
  1. Login Experience ビューで、この接続を使用したユーザーのログイン方法を設定します。
オプションのフィールドは Universal Login でのみ使用できます。Classic Login を使用している場合、Add ボタン、Button display name、Button logo URL は表示されません。
  1. 統合を完了するための適切な管理者権限がある場合は、Continue をクリックして、IdP の設定に必要なカスタムパラメーターを確認します。権限がない場合は、必要な設定を管理者が調整できるよう、表示された URL を管理者に共有してください。

Management API を使用してエンタープライズ接続を作成する

Management API を使用して SAML 接続を作成することもできます。この場合は、各 SAML 設定フィールドを手動で指定することも、設定値を含む SAML メタデータドキュメントを指定することもできます。

指定した値を使用して接続を作成する

Create a Connection endpoint に対して POST リクエストを実行します。MGMT_API_ACCESS_TOKENCONNECTION_NAMESIGN_IN_ENDPOINT_URLSIGN_OUT_ENDPOINT_URLBASE64_SIGNING_CERT の各プレースホルダー値は、それぞれ Management API の 、接続名、サインイン URL、サインアウト URL、Base64 エンコードされた署名証明書 (PEM または CER 形式) に必ず置き換えてください。 または、JSON 形式では次のとおりです。

SAML メタデータを使用して接続を作成する

各 SAML 設定フィールドを個別に指定する代わりに、設定値を含む SAML メタデータドキュメントを指定できます。SAML メタデータドキュメントを指定する場合は、ドキュメントの XML コンテンツ (metadataXml) またはドキュメントの URL (metadataUrl) のいずれかを指定できます。URL を指定した場合、コンテンツは 1 回だけダウンロードされます。今後 URL の内容が変更されても、接続が自動的に再構成されることはありません。
メタデータドキュメントの内容を指定する
metadataXml オプションを使用して、メタデータドキュメントの内容を指定します。
メタデータドキュメントの URL を指定する
ドキュメントの URL を指定するには、metadataUrl オプションを使用します。 URL を指定すると、コンテンツは一度だけダウンロードされます。今後 URL の内容が変更されても、接続が自動的に再構成されることはありません。
メタデータ URL を使用して既存の接続情報を更新する
この手順が機能するのは、接続を metadataUrl を使って手動で作成した場合のみです。
B2B 実装で、独自の SAML IDプロバイダーを使用して Auth0 とフェデレーションしている場合は、署名証明書の変更、エンドポイント URL の変更、新しいアサーションフィールドの追加などに応じて、Auth0 に保存されている接続情報を更新する必要が生じることがあります。Auth0 は ADFS 接続ではこれを自動で行いますが、SAML 接続では行いません。 定期的に更新するためのバッチ処理 (cron ジョブ) を作成できます。この処理は数週間ごとに実行し、/api/v2/connections/CONNECTION_ID エンドポイントに PATCH リクエストを送って、{options: {metadataUrl: '$URL'}} を含むボディを渡します。ここで $URL は、接続の作成時に使用したものと同じメタデータ URL です。メタデータ URL を使って新しい一時的な接続を作成し、古い接続と新しい接続のプロパティを比較します。差分があれば、新しい接続を更新してから一時接続を削除します。
  1. options.metadataUrl を使用して SAML 接続を作成します。接続オブジェクトには、メタデータの情報が設定されます。
  2. URL 先のメタデータの内容を更新します。
  3. /api/v2/connections/CONNECTION_ID エンドポイントに {options: {metadataUrl: '$URL'}} を指定して PATCH リクエストを送信します。これで、接続オブジェクトが新しいメタデータの内容で更新されます。
options パラメーターを使用すると、options オブジェクト全体が上書きされます。必ずすべてのパラメーターを含めてください。

カスタム Entity ID を指定する

カスタム Entity ID を指定するには、Management API を使用してデフォルトの urn:auth0:YOUR_TENANT:YOUR_CONNECTION_NAME を上書きします。接続の作成時、または既存の接続を更新するときに、connection.options.entityID プロパティを設定します。 以下の JSON 例では、SAML IdP のメタデータ URL を使用して新しい SAML 接続を作成すると同時に、カスタム Entity ID も指定できます。Entity ID は接続の名前を使って作成されるため、一意性は維持されます。

Auth0 アプリケーションでエンタープライズ接続を有効にする

新しい SAML エンタープライズ接続を使用するには、まず Auth0 アプリケーションでその接続を有効にする必要があります。

マッピングを設定する

非標準の PingFederate Server に対する SAML エンタープライズ接続を設定している場合は、属性マッピングを必ず更新してください。
Mappings ビューを選択し、{} 内にマッピングを入力して、Save を選択します。
SAML マッピングを設定する
非標準の PingFederate Server のマッピング:
Circle のマッピング
2 つのクレームのいずれかを 1 つのユーザー属性にマッピングする
NameID をユーザー属性にマッピングする方法

接続をテストする

これで、接続をテストする準備が整いました。

Global Token Revocation を設定する

この接続タイプは Global Token Revocation エンドポイントをサポートしており、対応するIDプロバイダーが Auth0 のユーザーセッションを失効させ、を失効させ、セキュアなバックチャネルを使用するアプリケーションに対してバックチャネルログアウトをトリガーできるようにします。 この機能は、Okta Workforce Identity の Universal Logout と併用できます。 詳細および設定手順については、Universal Logout を参照してください。

詳しくはこちら