> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> アプリケーション用に Login by Auth0 WordPress Plugin を設定する方法

# Login by Auth0 の設定

Login by Auth0 は、プラグインの Setup Wizard を使用して設定することも、設定プロセスをより細かく制御するために手動で設定することもできます。詳しくは、[Install Login by Auth0](/docs/ja-jp/customize/integrations/cms/wordpress-plugin/install-login-by-auth0) をご覧ください。以下の手順は、Setup Wizard が完了しなかった場合や、ログインの問題をトラブルシューティングする際にも使用できます。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  以下の手順を始める前に、Auth0 アカウントにログインしている必要があります。まだアカウントをお持ちでない場合は、[作成してください](https://auth0.com/signup)。
</Callout>

<div id="auth0-configuration">
  ## Auth0 の設定
</div>

Auth0 テナントは、WordPress サイトからのログインリクエストを受け付け、少なくとも 1 つの接続 (Auth0 のデータベース、ソーシャル接続、または企業ディレクトリ) からユーザーのアイデンティティ情報を取得できるように設定する必要があります。テナントの詳細については、[テナントを作成する](/docs/ja-jp/get-started/auth0-overview/create-tenants) を参照してください。接続の詳細については、[IDプロバイダー](/docs/ja-jp/authenticate/identity-providers) を参照してください。

<div id="application-setup">
  ### アプリケーションの設定
</div>

1. WordPress サイト用のアプリケーションを作成します。

* **Setup Wizard のトラブルシューティングを行っている場合**は、[Auth0 Dashboard > アプリケーション > アプリケーション](https://manage.auth0.com/#/applications) に移動し、WordPress サイト名に似た名前のアプリケーションを探してください。見つからない場合は、Wizard によってアプリケーションが作成されていないことを意味します。WordPress で Setup Wizard を再起動するか、すぐ下の手順に従ってアプリケーションを手動で作成してください。
* **手動で設定する場合**は、[Auth0 Dashboard > アプリケーション > アプリケーション](https://manage.auth0.com/#/applications) に移動し、**Create** を選択します。アプリケーション名を入力し、**従来型Webアプリケーション** を選択してから、**Create** を選択します。

1. アプリケーションの **設定** view を選択します。Auth0 に接続するために **wp-admin > Auth0 > 設定** で使用する Domain、Client ID、Client Secret が表示されます。
2. **アプリケーションの種類** は **Regular Web Application** に設定し、**Token Endpoint Authentication Method** は **Post** に設定する必要があります
3. **Allowed Callback URLs** までスクロールし、WordPress サイトの URL の末尾に `?auth0=1` を付けて入力します。

<Warning>
  ここで指定する Callback URL は**絶対に**キャッシュしないでください。キャッシュされると、login 時に "Invalid state" エラーが発生することがあります。詳しくは、[WordPress Plugin の Invalid State Errors のトラブルシューティング](/docs/ja-jp/customize/integrations/cms/wordpress-plugin/troubleshoot-wordpress-plugin-invalid-state-errors) を参照してください。
</Warning>

1. **Allowed Web Origins** フィールドに、WordPress サイトの **WordPress Address (URL)** (サイトが公開される URL) と、異なる場合は **Site Address (URL)** (wp-admin が提供される URL) を入力します。これらの値はどちらも、WordPress サイトの一般設定画面で確認できます。
2. **Allowed Logout URLs** フィールドに、WordPress サイトの login URL を入力します
3. **Allowed Origins (CORS)** フィールドは空欄のままにします (上記の **Allowed Callback URLs** の値が使用されます)

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  上記のすべての URL フィールドでは、サイトのプロトコル (http または https) を一致させ、**wp-admin > Settings > General > WordPress Address (URL)** にあるホーム URL をベースとして使用してください。
</Callout>

1. 下にスクロールして **Show Advanced Settings** を選択し、**OAuth** view を選択して、**JsonWebToken Signature Algorithm** が RS256 に設定されていることを確認します。後でこれを変更する必要がある場合は、ここだけでなく wp-admin 側でも変更する必要があります (以下の Settings > Basic を参照) 。
2. **OIDC Conformant** をオンにします。
3. **Grant Types** タブをクリックし、少なくとも **認可コード** と **Client Credentials** を選択します。
4. **変更を保存** をクリックします。

<div id="authorize-the-application-for-the-management-api">
  ### Management API のためにアプリケーションを認可する
</div>

WordPress サイトが Auth0 テナントに代わって特定の操作を実行するには、上で作成したアプリケーションに <Tooltip tip="Management API: 管理タスクを実行できるようにする製品。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Management+API">Management API</Tooltip> へのアクセスを認可する必要があります。必須ではありませんが、これを有効にすると、ログイン時に完全なユーザーデータ (`user_metadata` と `app_metadata` を含む) を取得できるほか、ユーザーのメールアドレスやパスワードの変更、確認済みメールアドレスが必要な場合のメール確認の再送も可能になります。

1. アプリケーションでクライアントクレデンシャルグラントが許可されていることを確認します (上のセクションのステップ 10) 。
2. [Auth0 Dashboard > アプリケーション > APIs](https://manage.auth0.com/#/apis) に移動します。
3. **Auth0 Management API** を選択し、次に **Machine to Machine Applications** ビューを選択します。
4. WordPress アプリケーションを見つけ、アクセスを許可するには **Unauthorized** を選択します。
5. 表示されたパネルで、`read:users` と `update:users` のスコープだけを選択し、**Update** を選択します (**Filter scopes** フィールドを使って検索できます) 。

<div id="database-connection-setup">
  ### データベース接続の設定
</div>

Database 接続を使用すると、Auth0 に保存されたユーザーレコードを使って、ユーザー名とパスワードによるログインを有効にできます。この種類の接続は必須ではないため、<Tooltip tip="パスワードレス: 第1の認証要素としてパスワードに依存しない認証方式。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=passwordless">パスワードレス</Tooltip>、ソーシャルログイン、またはエンタープライズログインのみを使用する場合は省略できます。

1. 設定時にウィザードを使用した場合は、[Auth0 Dashboard > Authentication > Database](https://manage.auth0.com/#/connections/database) に移動し、上記で設定したアプリケーションと似た名前の接続を探します。それ以外の場合は、新しい接続を作成するか、既存の接続を使用するか、デフォルトの **Username-Password-Authentication** を使用できます。設定を表示するには既存の接続名を選択するか、**Create DB Connection** を選択して手順に従ってください。
2. **アプリケーション** ビューを選択し、上で作成したアプリケーションを有効化します。

<div id="social-connection-setup">
  ### Social 接続 の設定
</div>

このログイン方法の有効化と設定の方法については、[ソーシャル ID プロバイダー](/docs/ja-jp/authenticate/identity-providers/social-identity-providers)を参照してください。

<div id="enterprise-connection-setup">
  ### エンタープライズ接続の設定
</div>

このログイン方法を有効化して設定する方法については、[エンタープライズアイデンティティプロバイダー](/docs/ja-jp/authenticate/identity-providers/enterprise-identity-providers)をご覧ください。

<div id="wordpress-configuration">
  ## WordPress の設定
</div>

1. [Auth0 Dashboard > アプリケーション > アプリケーション](https://manage.auth0.com/#/applications) に移動し、先ほど作成したアプリケーションを選択します。
2. 新しいタブまたはウィンドウで WordPress サイトの wp-admin にログインし、**wp-admin > Auth0 > 設定** に移動します。
3. 各フィールドの横にある **Copy to Clipboard** ボタンを使って、Auth0 アプリケーションのページから **Domain**、**Client ID**、**Client Secret** を WordPress の設定にコピーします。
4. 下にスクロールして、**変更を保存** を選択します。

<div id="php-constant-setting-storage">
  ## PHP 定数による設定の保存
</div>

プラグインの設定は、データベースに保存することも (デフォルト) 、特定の名前の PHP 定数を使って設定することもできます。これにより、<Tooltip tip="Client Secret: クライアント（アプリケーション）が認可サーバーに対して認証するために使用するシークレットです。クライアントと認可サーバーだけが知っているべきであり、推測されないよう十分にランダムである必要があります。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=client+secret">クライアントシークレット</Tooltip>、API トークン、移行トークンのような機密データを、より安全に保存できます (それらを定義しているファイル自体が安全に保管されていることが前提です。詳しくは [Hardening WordPress on wordpress.org](https://developer.wordpress.org/advanced-administration/security/hardening/) をご覧ください) 。

この定数は、プラグインが読み込まれる前に**必ず**定義しておく必要があります。そうしないと使用されません。これは `wp-config.php` ファイル内、または must-use plugin で行ってください。詳しくは [Must Use Plugins on wordpress.org](https://developer.wordpress.org/advanced-administration/plugins/mu-plugins/) をご覧ください。定数をテーマの `functions.php` や、Auth0 の後で読み込まれるプラグイン内で定義した場合、その値は無視されます。

PHP 定数は次のように定義します。

デフォルトの定数名は `AUTH0_ENV_` に続けて、上書きするオプション名をすべて大文字にしたものです (接頭辞は `auth0_settings_constant_prefix` フィルターで変更できます。詳しくは [Extend Login by Auth0 WordPress Plugin](/docs/ja-jp/customize/integrations/cms/wordpress-plugin/extend-login-by-auth0) をご覧ください) 。すべてのプラグインオプションは上書き可能で、そのキーは `WP_Auth0_Options::defaults()` メソッドで確認できます。

**注:** `migration_token` の値は、ユーザー移行を有効にするとプラグインによって生成されます。管理画面にすでに値がある場合は、必ず同じ値を定数に設定してください。その値を変更する必要がある場合は、<Tooltip tip="Auth0 Dashboard: サービスを設定するための Auth0 の主要プロダクトです。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Auth0+dashboard">Auth0 Dashboard</Tooltip> で使用しているデータベース接続のカスタムスクリプト内でも変更する必要があります。

設定フィールドはこの新しい値に応じて表示内容が変わり、参照用に使用中の定数が表示されます。この値はプラグイン全体で自動的に使用されます。

**重要:** 定数値を設定したあとに設定ページを保存すると、定数で設定された値が検証され (ただし変更はされません) 、データベースに保存されるオプション配列から削除されます。この機能を試しているだけの場合は、その値を削除してもよい状態になるまで WordPress の管理画面で設定を保存しないでください。

WordPress のマルチサイトネットワーク内のすべてのサイトで同じ定数値が使われるため、これは単一のアプリケーションとデータベース接続を使うネットワークを簡単に設定する方法です。

<div id="plugin-settings">
  ## プラグインの設定
</div>

<div id="basic">
  ### 基本
</div>

* **Domain:** Auth0 Dashboard のアプリケーション設定からコピーした Domain です。オプション名は `domain` です。
* **<Tooltip tip="カスタムドメイン: 特別な名前やバニティ名を持つサードパーティのドメイン。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Custom+Domain">カスタムドメイン</Tooltip>:** 設定されている場合は、テナントのカスタムドメインです。詳しくは、[カスタムドメイン](/docs/ja-jp/customize/custom-domains) を参照してください。オプション名は `custom_domain` です。
* **<Tooltip tip="Client ID: Auth0 から登録済みリソースに付与される識別値。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Client+ID">Client ID</Tooltip>:** Auth0 Dashboard のアプリケーション設定からコピーした Client ID です。オプション名は `client_id` です。
* **Client Secret:** Auth0 Dashboard のアプリケーション設定からコピーした Client Secret です。オプション名は `client_secret` です。
* **<Tooltip tip="JSON Web Token (JWT): 2 者間でクレームを安全に表現するために使用される標準的な ID トークン形式（および多くの場合 access token 形式）。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=JWT">JWT</Tooltip> 署名アルゴリズム** Advanced のアプリケーション設定にある <Tooltip tip="OAuth 2.0: 認可プロトコルとワークフローを定義する認可フレームワーク。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=OAuth">OAuth</Tooltip> タブで設定する、トークンの署名に使用されるアルゴリズムです。デフォルトは RS256 です。オプション名は `client_signing_algorithm` です。
* **JWKS キャッシュ時間 (分) :** RS256 JWT 署名アルゴリズムを使用する場合に、JWKS 情報を保存する期間です。オプション名は `cache_expiration` です。
* **wp-login.php 上の元のログインフォーム:** WordPress のコアログインページへのアクセスを許可またはブロックするための方法を設定します。オプション名は `wordpress_login_enabled` です。ログインページコードのオプション名は `wle_code` です。

  * **Never** では、WordPress のコアログインフォームは表示されません。
  * **Auth0 フォームの下のリンク経由** では、`wp-login.php` 上の Auth0 の埋め込みフォームのすぐ下に、WordPress のコアログインフォームへのリンクが表示されます。ログイン URL に `?wle` を追加すると、ログインページに直接アクセスすることもできます。
  * **"wle" クエリパラメータが存在する場合** では、ログイン URL に `?wle` を追加すると、ログインページに直接アクセスできます。これにより Universal Login ページ へのリダイレクトを回避できます。
  * **"wle" クエリパラメータに特定のコードが含まれる場合** では、ログイン URL に `?wle=` とコードを追加すると、ログインページに直接アクセスできます。コードは自動的に生成され、この設定のコントロールの下に表示されます。これにより Universal Login ページ へのリダイレクトを回避できます。
* **サインアップを許可:** ユーザーの Signup は、WordPress の「だれでもユーザー登録ができるようにする」オプションが有効な場合にのみ利用できます。この設定は **設定 > 一般 > メンバーシップ** にあります.

<div id="features">
  ### 機能
</div>

* **<Tooltip tip="Universal Login: ユーザーのアイデンティティを確認するため、アプリケーションは Auth0 の認可サーバーでホストされている Universal Login にリダイレクトされます。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Universal+Login">Universal Login</Tooltip> ページ:** `wp-login.php` ページを Universal Login ページにリダイレクトし、このアプリケーションで有効なすべての接続を使用した <Tooltip tip="シングルサインオン (SSO): ユーザーが 1 つのアプリケーションにログインすると、他のアプリケーションにも自動的にログインできるようにするサービスです。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Single+Sign-on">シングルサインオン</Tooltip> (SSO) 認証を行います。オプション名は `auto_login` です。
* **自動ログイン方法:** **Universal Login Page** が有効な場合に、認証に使用する 1 つの有効な接続を指定します。Universal Login Page に有効な接続をすべて表示するには、ここを空欄のままにします。オプション名は `auto_login_method` です。
* **Auth0 ログアウト:** このオプションを有効にすると、WordPress からログアウトする際に Auth0 からもログアウトします。オプション名は `singlelogout` です。
* **WordPress アバターを上書き:** WordPress で Auth0 のアバターを使用するよう強制します。オプション名は `override_wp_avatars` です。

<div id="embedded">
  ### 埋め込み
</div>

ここでのオプションは Universal Login ページ には影響しません (カスタマイズオプションについては、[Auth0 Universal Login](/docs/ja-jp/authenticate/login/auth0-universal-login)をご覧ください) 。

* **パスワードレスログイン:** このオプションを有効にすると、埋め込み Auth0 ログインフォームすべてでパスワードレスログインが有効になります。パスワードレス接続は Auth0 Dashboard で管理されます。この機能を利用するには、このアプリケーションで少なくとも 1 つの接続がアクティブかつ有効になっている必要があります。オプション名は `passwordless_enabled` です。
* **アイコン URL:** 埋め込み Auth0 ログインフォームの上部に表示されるアイコンを設定します。オプション名は `icon_url` です。
* **フォームタイトル:** 埋め込み Auth0 ログインフォームのタイトルを設定します。オプション名は `form_title` です。
* **Gravatar 連携を有効にする:** ユーザーがメールアドレスを入力すると、そのメールアドレスに関連付けられた Gravatar のプロフィール画像が埋め込み Auth0 ログインフォームに表示されます。オプション名は `gravatar` です。
* **ログイン名のスタイル:** **Email** を選択すると、ユーザーはログイン時にメールアドレスの入力が必要になります。ユーザー名を有効なメールアドレスに限定したくない場合は、**Username** に設定してください。オプション名は `username_style` です。オプション名は `client_secret_b64_encoded` です。
* **プライマリカラー:** この設定の詳細については、[Lock Configuration Options](/docs/ja-jp/libraries/lock/lock-configuration)をご覧ください。オプション名は `primary_color` です。
* **追加設定:** Lock の呼び出し時に渡すオプションを含む、有効な JSON オブジェクトです。これにより、上記で設定した他のすべてのオプションが上書きされます。使用可能なオプションの一覧については、Lock: User configurable options を参照してください (例: `{"disableResetAction": true }`) 。オプション名は `extra_conf` です。
* **カスタム Lock JS URL を使用:** オフの場合、WordPress は最新のテスト済みバージョンの Lock (Auth0 埋め込みログインフォーム) を自動的に使用します。オンの場合、管理者は使用するカスタム Lock URL を指定できます。オプション名は `custom_cdn_url` です。
* **カスタム Lock JS URL:** Lock のバージョンを指す有効な URL です。**カスタム Lock JS URL を使用** がオフの場合、このフィールドは自動的に非表示になります。オプション名は `cdn_url` です。
* **表示する接続:** ユーザーにログインを許可したい各<Tooltip tip="アイデンティティプロバイダー (IdP): デジタルアイデンティティを保存・管理するサービス。" cta="用語集を表示" href="/docs/ja-jp/glossary?term=identity+providers">アイデンティティプロバイダー</Tooltip>をここに一覧表示してください。空欄のままにすると、有効になっているすべてのプロバイダーが許可されます。 (詳しくは、[Lock UI Customization](/docs/ja-jp/libraries/lock/lock-ui-customization)をご覧ください。) オプション名は `lock_connections` です。

  <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
    パスワードレスログインを有効にしている場合は、許可するすべてのソーシャルアイデンティティプロバイダーをここに一覧表示する必要があります。詳しくは、[GitHub repository の .social(options, callback)](https://github.com/auth0/lock-passwordless#socialoptions-callback)をご覧ください。
  </Callout>

<div id="advanced">
  ### Advanced
</div>

* **検証済みメールアドレスを必須にする:** これを設定すると、ユーザーは検証済みのメールアドレスがないとログインできなくなります。メールアドレスやユーザープロファイルデータ内の `email_verified` フラグを提供しない接続では、正しく動作しない場合があります。オプション名は `requires_verified_email` です。
* **スキップするストラテジー:** \[Require Verified Email] がオンの場合に、この設定が表示されます。このフィールドには、ログイン時およびアカウント関連付け時に検証済みメールアドレスの要件をスキップするストラテジー名を指定できます。これは `email_verified` フラグを提供しないストラテジーに**のみ**使用してください。
* **ユーザーセッションを記憶する:** デフォルトでは、ユーザーセッションの有効期間は 2 日間です。この設定を有効にすると、ユーザーセッションを 14 日間維持します。オプション名は `remember_users_session` です。

  * ユーザーのセッションを適切に維持するには、この設定をテナントの [Inactivity Timeout](/docs/ja-jp/manage-users/sessions/session-lifetime-limits)docs/manage-users/sessions/session-lifetime-limits 設定以下にする必要があります。
* **ログインリダイレクト URL:** 設定すると、ログイン後にユーザーを指定した URL にリダイレクトします。これは `[auth0]` ショートコード経由のログインには影響しません。オプション名は `default_login_redirection` です。ショートコードのリダイレクト先を変更するには、次のように `redirect_to` 属性を追加します。

  `[auth0 redirect_to="http://yourdomain.com/redirect-here"]`
* **HTTPS コールバックを強制する:** サイトで HTTPS は利用できるものの、強制していない場合は、このオプションを有効にします。これにより、ホーム URL が HTTPS に設定されていない場合でも、Auth0 のコールバックは HTTPS に強制されます。オプション名は `force_https_callback` です。
* **自動プロビジョニング:** 新規登録が許可されていない場合でも、Auth0 の新規ユーザーを WordPress データベースに保存するかどうかを指定します。これを有効にすると、Auth0 経由でログインしたときに存在しない WordPress ユーザーが作成されます (たとえば、Auth0 Dashboard でユーザーが作成された場合) 。オプション名は `auto_provisioning` です。

  <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
    WordPress で登録が許可されている場合は、この設定に関係なく新規ユーザーが作成されます。
  </Callout>
* **ユーザー移行:** このオプションを有効にすると、Auth0 の移行 Web サービスが公開されます。ただし、接続は [Auth0 Dashboard](https://manage.auth0.com/#) で手動設定する必要があります。移行プロセスの詳細については、[User Migration in Login by Auth0 WordPress Plugin](/docs/ja-jp/customize/integrations/cms/wordpress-plugin/user-migration-in-login-by-auth0) を参照してください。**Generate New Migration Token** ボタンを使用すると、保存済みのトークンを新しいものに置き換えられます。データベース接続の設定ページを **Custom Database** タブで開いた状態にして、両方のスクリプト内の既存トークンを新しいものに置き換えてください。オプション名は `migration_ws` です。移行トークンのオプション名は `migration_token` です。
* **Migration IPs AllowList:** 一覧に含まれる IP からのリクエストのみ、移行 Web サービスへのアクセスが許可されます。オプション名は `migration_ips_filter` です。
* **有効なプロキシ IP:** ログインおよび移行 Web サービスの IP チェックを有効にするには、プロキシまたはロードバランサーの IP アドレスを指定します。オプション名は `valid_proxy_ip` です。
* **Auth0 サーバーの Domain:** Auth0 のドメインです。Setup Wizard がアカウント情報を取得するために使用します。オプション名は `auth0_server_domain` です。

<div id="learn-more">
  ## 詳しくはこちら
</div>

* [WordPress と連携する](/docs/ja-jp/customize/integrations/cms/wordpress-plugin/integrate-with-wordpress)
* [Login by Auth0 をインストールする](/docs/ja-jp/customize/integrations/cms/wordpress-plugin/install-login-by-auth0)
* [Login by Auth0 WordPress Plugin のトラブルシューティング](/docs/ja-jp/customize/integrations/cms/wordpress-plugin/troubleshoot-login-by-auth0)
* [Login by Auth0 WordPress Plugin を拡張する](/docs/ja-jp/customize/integrations/cms/wordpress-plugin/extend-login-by-auth0)
