> ## Documentation Index
> Fetch the complete documentation index at: https://docs-dev-update-anonymous-sessons-ea.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Auth0 で使用する SAML アイデンティティプロバイダーとして OneLogin を設定する方法を説明します。

# OneLogin を SAML IDプロバイダーとして設定する

次の手順に従って、OneLogin を <Tooltip tip="Security Assertion Markup Language (SAML): 2 者間でパスワードを使わずに認証情報をやり取りできる標準化されたプロトコル。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=SAML">SAML</Tooltip> <Tooltip tip="Security Assertion Markup Language (SAML): 2 者間でパスワードを使わずに認証情報をやり取りできる標準化されたプロトコル。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=identity+provider">IDプロバイダー</Tooltip> として設定します。

1. OneLogin の SAML 連携を設定する
2. Auth0 で SAML 接続を設定する。
3. 接続をテストする。

<h2 id="prerequisite">
  前提条件
</h2>

OneLoginのデベロッパーアカウントが必要です。

<h2 id="configure-onelogin">
  OneLogin を設定する
</h2>

1. [OneLogin](https://www.onelogin.com/) のダッシュボードにログインし、**Apps** > **Add Apps** をクリックします。
2. **SAML** を検索し、**SAML Test Connector (IdP w/attr)** を選択します。
3. 表示されたら、アプリの **Display Name** を変更します。
4. **SAVE** をクリックします。
5. **SSO** タブに移動し、**SAML 2.0 Endpoint (HTTP)** と **SLO Endpoint (HTTP)** の値をコピーします。
6. **X.509 Certificate** フィールドの **View Details** リンクをクリックします。
7. X.509 証明書 **onelogin.pem** をダウンロードします。

<h2 id="configure-auth0-connection">
  Auth0 接続を設定する
</h2>

1. [Dashboard > Authentication > Enterprise > SAMLP](https://manage.auth0.com/#) に移動し、**plus** アイコンをクリックして、新しい接続を作成するページに進みます。
2. この接続に必要な設定を入力するよう求められます。必須項目は次のとおりです。

| 設定                           | 説明                                                        |
| ---------------------------- | --------------------------------------------------------- |
| **Sign In URL**              | OneLogin アプリの設定時に控えた SAML 2.0 エンドポイント (HTTP) の値です。        |
| **Sign Out URL**             | OneLogin アプリの設定時に控えた SLO エンドポイント (HTTP) の値です。             |
| **X509 Signing Certificate** | OneLogin からダウンロードした証明書です。この証明書を Auth0 に直接アップロードする必要があります。 |

3. **Save** をクリックして続行します。
4. 次の画面で、2 つの選択肢が表示されます。

   1. ドメイン管理者の場合は、**Continue** をクリックすると、SAML IDプロバイダーの設定に関する追加の手順が表示されます。
   2. ドメイン管理者でない場合は、表示された URL をドメイン管理者に渡して、設定を完了してもらうことができます。

<h3 id="auth0-configuration-values">
  Auth0 の設定値
</h3>

SAML アプリケーションの設定を完了するには、管理者は Auth0 に関する以下の情報を用意する必要があります。

* **SAML Consumer URL**: `https://{yourDomain}/login/callback`
* **SAML <Tooltip tip="オーディエンス: 発行されたトークンの対象となる受信者の一意の識別子です。トークン内では aud という名前で、その値には ID トークンの場合はアプリケーション（Client ID）、Access Token の場合は API（API Identifier）の ID が含まれます。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Audience">オーディエンス</Tooltip>**: `urn:auth0:{yourTenant}:yourConnectionName`

[OneLogin](https://www.onelogin.com/) アプリの Configuration タブに戻る前に、**post-back URL** と **Entity ID** の値もコピーしてください。

| Auth0 の値      | OneLogin の設定フィールド              |
| ------------- | ------------------------------ |
| Post-back URL | ACS (Consumer) URL と Recipient |
| Entity ID     | Audience                       |

また、**ACS (Consumer) URL Validator** には有効な正規表現を指定してください。例:

`[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)`

<h2 id="test-connection">
  接続をテストする
</h2>

接続をテストする前に、以下を確認してください。

* テストに使用できる OneLogin ユーザーが存在すること。いない場合は、OneLoginダッシュボードの **Users** タブに移動して追加してください
* 新しい Auth0 SAMLP 接続がアプリケーションに関連付けられていること (関連付けられていない場合は、`invalid_request: the connection was disabled` エラーが発生します)

**SAML** 接続の横にある **Try** ボタンをクリックします。問題がなければ、接続が正しく機能していることを示すページにリダイレクトされます。

<h2 id="identity-provider-initiated-sso">
  IDプロバイダー主導のシングルサインオン
</h2>

OneLogin では、ユーザー向けに Application Portal/Launcher が提供されています。この機能を利用するには、OneLogin ダッシュボードの**SAML Consumer URL**を変更し、`connection` パラメーター (例: `https://{yourDomain}/login/callback?connection=onelogin-customer`) を含める必要があります。`onelogin-customer` は、ご利用の Auth0 接続名に置き換えてください。

最後に、その接続で IdP 主導のログインを有効にし、SAML アサーションの処理後にユーザーのリダイレクト先となるアプリケーションを選択してください。詳しくは、[IDプロバイダー主導のシングルサインオンを設定する](/docs/ja-jp/authenticate/protocols/saml/saml-sso-integrations/identity-provider-initiated-single-sign-on)を参照してください。

<h2 id="edit-connection-mappings">
  接続マッピングを編集する
</h2>

OneLogin と Auth0 をそのまま使用している場合、OneLogin 経由でログインし、<Tooltip tip="Auth0 Dashboard: サービスを設定するための Auth0 のメイン製品です。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Auth0+Dashboard">Auth0 Dashboard</Tooltip>で作成されたユーザーには、必要なプロファイル情報の一部が不足していることがあります。

追加のユーザー情報を収集するには、OneLogin dashboard で適切なパラメーターを編集し、そのパラメーターを SAML アサーションに含めて、Auth0 接続でマッピングを作成します。

<h3 id="user-profile-attributes">
  ユーザープロファイル属性
</h3>

構築したい機能によっては、標準のユーザープロファイル属性だけでは不十分な場合があります。そのような場合は、カスタム属性を使用して SAML トークンを拡張できます。基本的な例を見ていきましょう。

SAML トークンには、`FirstName` や `LastName` などの属性が含まれています。ここでは、名と姓を連結した値を格納する `FullName` という新しいカスタム属性を追加します。

1. OneLogin ダッシュボードに移動し、アプリを編集します。
2. **Parameters** タブで、**Add Parameter** をクリックします。
3. ポップアップで、**Field name** テキストボックスを使って新しいカスタム属性の名前を設定します。必ず **Include in SAML assertion** にチェックを入れてください。**Save** をクリックします。
4. 作成した新しい属性が表示されます。現在 `- No default -` と表示されている **Value** フィールドをクリックします。
5. **Value** ドロップダウンメニューをクリックし、`- Macro -` を選択します。
6. テキストボックスに `{firstname} {lastname}` を設定します。**Save** をクリックします。
7. 変更をテストします。[Auth0 dashboard > Authentication > Enterprise > SAML](https://manage.auth0.com/#/connections/enterprise) に戻ります。**SAML** 接続で **Try** ボタンをクリックします。結果には、新しい属性 `FullName` が含まれているはずです。

Attribute Macros の詳細については、[OneLogin Help Center](https://support.onelogin.com/hc/en-us/articles/201174464-Attribute-macros) を参照してください。

<h3 id="add-new-parameter-to-saml-assertion">
  SAML アサーションに新しいパラメーターを追加する
</h3>

ここでは例として、すでに送信している 2 つのフィールドを連結した値よりも詳細な情報である `EmailAddress` を、ログインに追加する方法を見ていきます。

1. ユーザーの **EmailAddress** をマッピングする前に、このフィールドを OneLogin ダッシュボードでカスタムパラメーターとして追加する必要があります。**Field name** は `EmailAddress`、**Value** は `Email` に設定します。
2. ユーザープロファイルをカスタマイズするために必要な手順の詳細は、上のセクションを参照してください。
3. 変更を加えたら保存し、もう一度接続をテストします。
4. Auth0 のユーザーを確認し、`EmailAddress` の情報が含まれていて、その値が正しいことを確認します。

これで、Auth0 でユーザー情報フィールドのマッピングに進む準備が整いました。

1. [SAML](https://manage.auth0.com/#/connections/enterprise) の **Settings** に移動し、**Mappings** タブを開きます。メールアドレスについては、以下のマッピングをコピーしてテキストボックスに貼り付けます。
2. 変更を保存して、もう一度接続を試します。正常にログインできたら、[Dashboard > User Management > Users](https://manage.auth0.com/#/users) に移動してログイン内容を確認します。該当するユーザーに追加情報が表示されます。
