> ## 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.

> TLS（SSL）証明書、SSL 終端を処理するリバースプロキシ、Auth0 へのリクエスト転送をお客様が管理するカスタムドメインの設定方法を説明します。

# 自己管理証明書を使用してカスタムドメインを設定する

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  カスタムドメインで証明書を管理するには、Enterprise サブスクリプションが必要です。詳細については、[Auth0 Pricing](https://auth0.com/pricing) と [Login](/docs/ja-jp/authenticate/login) をご覧ください。
</Callout>

Auth0 の支援を受けずに <Tooltip tip="カスタムドメイン: 専用名や vanity 名を使用するサードパーティのドメイン。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=custom+domains">カスタムドメイン</Tooltip> の証明書を自分で管理する場合は、そのドメイン上で複数の DNS レコードを必要とする受信接続に対応できるよう、自身のプロキシと証明書の管理方法を把握しておく必要があります。証明書は自分で購入または用意し、更新も自分で管理しなければなりません。また、証明書をインストールするリバースプロキシも必要です。ドメインの検証が完了すると、Auth0 はそのプロキシからのトラフィックを受け入れます。

このオプションを選ぶ理由は次のとおりです。

* 証明書をより細かく制御できる (たとえば、独自の CA や証明書の有効期限を選択できる) 。
* Auth0 への API 呼び出しに対する監視を強化できる。

自己管理証明書を使用してカスタムドメインを設定するには、ドメイン名を Auth0 に提供し、そのドメインの所有権を確認したうえで、リバースプロキシを設定する必要があります。カスタムドメインの設定が完了したら、Auth0 の各機能でもカスタムドメインを使用するよう設定する必要があります。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Auth0 へのプロキシでは、TLS (SSL) バージョン 1.2 以降を使用する必要があります。
</Callout>

<div id="provide-your-domain-name-to-auth0">
  ## Auth0 にドメイン名を登録する
</div>

1. [Auth0 Dashboard > Settings > カスタムドメイン](https://manage.auth0.com/#/tenant/custom_domains) または [Auth0 Dashboard > Branding > カスタムドメイン](https://manage.auth0.com/#/custom_domains) に移動します。表示されたボックスにカスタムドメインを入力し、ドロップダウンメニューから **自己管理証明書** を選択します。
2. **Add Domain** を選択します。
   ドメインを追加した後も **Add Domain** ボタンは表示されますが、1 つのテナントに追加できるドメインは 1 つだけです。

<div id="verify-ownership">
  ## 所有権を確認する
</div>

Auth0 でこのドメインを使用する前に、そのドメインの所有権を確認する必要があります。

1. [Auth0 Dashboard > ブランディング > カスタムドメイン](https://manage.auth0.com/#/branding/custom_domains) に移動します。

   <Frame>
     <img src="https://mintcdn.com/translations/pvjQqAy3EB2TK6NP/docs/images/cdy7uua7fh8z/4XhEmQwKfoqydOldfHnnud/c63a58c72f79b4d19cd417f70ba262cc/Custom_Domains_-_Self_-_English.png?fit=max&auto=format&n=pvjQqAy3EB2TK6NP&q=85&s=63aabccf5611fc634b5d468f0f6424de" alt="Auth0 Branding Custom Domains Self-Managed Certificate Verify Domain" width="1102" height="693" data-path="docs/images/cdy7uua7fh8z/4XhEmQwKfoqydOldfHnnud/c63a58c72f79b4d19cd417f70ba262cc/Custom_Domains_-_Self_-_English.png" />
   </Frame>

2. TXT 検証情報をドメインの DNS レコードに追加します。
   手順は、ドメインホスティングプロバイダーによって異なる場合があります。

   1. 値をコピーできるように、ブラウザーで Auth0 のカスタムドメインのページを開いたままにします。
   2. ドメイン管理サービスにログインします。
   3. 新しいレコードを作成し、次の設定で保存します。

      | パラメーター             | 値                                                 |
      | ------------------ | ------------------------------------------------- |
      | レコードタイプ            | TXT                                               |
      | 名前                 | Auth0 に表示されるドメインの **TXT Record** の値をコピーして貼り付けます。  |
      | Time to Live (TTL) | デフォルト値を使用します。                                     |
      | 値                  | Auth0 に表示されるドメインの **TXT Content** の値をコピーして貼り付けます。 |

3. **Verify** をクリックして続行します。

   DNS 設定によっては、Auth0 がドメインを検証できるようになるまで数分かかる場合があります。

   Auth0 によるドメイン名の検証が成功すると、確認ウィンドウが表示されます。
   このウィンドウに表示される情報、特に `cname-api-key` の値は保存してください。この値を確認できるのは **このときだけ** です。

   <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
     セキュリティ上の理由により、この値は保存時にハッシュ化されるため、復元できません。この時点で `cname-api-key` を控えなかった場合は、カスタムドメインを再作成する必要があります。
   </Callout>

   これで検証プロセスは完了です。1〜2 分以内にカスタムドメインを使用できるようになります。3 日以内に検証プロセスを完了できない場合は、これらの手順をもう一度実行してください。

<div id="configure-reverse-proxy">
  ## リバースプロキシを設定する
</div>

リバースプロキシサーバーは、アプリケーションの代わりに 1 つ以上のサーバーからリソースを取得します。取得したリソースはアプリケーションに返され、あたかもリバースプロキシサーバー自体から送られてきたかのように見えます。

[Cloudflare](/docs/ja-jp/customize/custom-domains/self-managed-certificates/configure-cloudflare-for-use-as-reverse-proxy)、[Azure CDN](/docs/ja-jp/customize/custom-domains/self-managed-certificates/configure-azure-cdn-for-use-as-reverse-proxy)、[Google Cloud Platform](/docs/ja-jp/customize/custom-domains/self-managed-certificates/configure-gcp-as-reverse-proxy)、[AWS Cloudfront](/docs/ja-jp/customize/custom-domains/self-managed-certificates/configure-aws-cloudfront-for-use-as-reverse-proxy) などのサービスを使用して、カスタムドメイン用の設定を行えます。配信用に、リバースプロキシサーバーのドメイン名を指す新しい CNAME 値を、カスタムドメインの DNS に追加します。

1. サービス側でリバースプロキシの設定を作成したら、[Auth0 Dashboard > Branding > カスタムドメイン](https://manage.auth0.com/#/branding/custom_domains) タブに移動します。
2. 配信用のサービスドメイン名を指す新しい CNAME レコードを、カスタムドメインの DNS に追加します。これは、リバースプロキシサーバーの設定で **Distribution ID** を確認すると見つかります。
   追加後は、証明書更新時の問題を避けるため、CNAME レコードを常に維持しておく必要があります。
3. プロキシサーバーの設定方法は、使用するサービスによって異なります。通常は、次の種類の設定が必要になります。

* [ディストリビューション](#distribution-settings)
* [オリジンホスト名](#origin-hostname-settings)
* [HTTP ヘッダー](#http-headers)
* [デフォルトのキャッシュ動作](#default-cache-behavior-settings)

<div id="distribution-settings">
  ### ディストリビューションの設定
</div>

| 設定                              | 値                                                                    |
| ------------------------------- | -------------------------------------------------------------------- |
| Origin Domain Name              | カスタムドメインの設定時に Auth0 Dashboard で取得した **Origin Domain Name** の値を設定します。 |
| Origin ID                       | オリジンの説明です。同じディストリビューション内の複数のオリジンを区別するため、この値は一意である必要があります。            |
| Origin Protocol Policy          | `HTTPS Only` に設定します。                                                 |
| Alternate Domain Names (CNAMEs) | カスタムドメイン名 (Auth0 Dashboard で設定したものと同じもの) を設定します。                     |

<div id="origin-hostname-settings">
  ### オリジンホスト名の設定
</div>

| 設定                           | 値                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| オリジンホスト名                     | `{yourTenant}-<CUSTOM_DOMAIN_ID>.edge.tenants.us.auth0.com` を入力し、`<CUSTOM_DOMAIN_ID>` は、新しいカスタムドメインの設定時に Auth0 から提供された Origin Domain Name (カスタムドメイン ID) の値に置き換えてください。テナントが US リージョンにない場合は、以下のいずれかを使用します。 <ul><li>EU: `{yourTenant}-<CUSTOM_DOMAIN_ID>.edge.tenants.eu.auth0.com`</li><li>AU: `{yourTenant}-<CUSTOM_DOMAIN_ID>.edge.tenants.au.auth0.com`</li><li>JP: `{yourTenant}-<CUSTOM_DOMAIN_ID>.edge.tenants.jp.auth0.com`</li></ul> たとえば、CUSTOM\_DOMAIN\_ID が次の値の場合:<br /><br />`cd_TXIdNgQ07HrAFVmz`<br /><br />US リージョンのテナントでは、オリジンホスト名は次のようになります。<br /><br />`US: {yourTenant}-cd-txIdngq07hrafvmz.edge.tenants.us.auth0.com` |
| Server Name Indication (SNI) | オリジンホスト名に指定した名前を使用します。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |

カスタムドメインの詳細の取得方法について詳しくは、[Get custom domain configurations](https://auth0.com/docs/api/management/v2/custom-domains/get-custom-domains) を参照してください。

<div id="http-headers">
  ### HTTP ヘッダー
</div>

| ヘッダー名             | 値                                                                                                                                                                                                                                                   |
| ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Host`            | [オリジンホスト名](#origin-hostname-settings)。                                                                                                                                                                                                              |
| `cname-api-key`   | Auth0 でドメイン名の所有権を確認した直後に提供される CNAME API Key の値。Auth0 がプロキシからのトラフィックを受け入れるには、このヘッダーを設定する必要があります。                                                                                                                                                     |
| `X-Forwarded-For` | エンドユーザーの IP アドレス。複数の IP アドレスは指定しないでください。 <br /><br /> ユーザーの IP アドレスに別のヘッダーを指定するには、Management API の [新しい custom domain を設定するエンドポイント](/docs/ja-jp/api/management/v2/custom-domains/post-custom-domains) を使用して、`custom_client_ip_header` プロパティを設定できます。 |

Auth0 は、異常検知、レート制限、MFA などの機能でエンドユーザーの IP アドレスを使用します。プロキシがエンドユーザーの IP アドレスを転送しない場合、Auth0 はプロキシの IP アドレスをクライアントの IP アドレスとして扱うため、これらの機能が正しく動作しない可能性があります。

<div id="default-cache-behavior-settings">
  ### デフォルトのキャッシュ動作設定
</div>

| 設定                                      | 値                                                                                        |
| --------------------------------------- | ---------------------------------------------------------------------------------------- |
| Viewer Protocol Policy                  | **Redirect HTTP to HTTPS** を選択します。                                                       |
| Allowed HTTP Methods                    | **GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE** を選択します。                                 |
| Cache Based on Selected Request Headers | **Allow list** を選択します。                                                                   |
| Allow List Headers                      | `User-Agent`、`Origin`、`Referer`、`Authorization`、`Accept`、`Accept-Language` の各ヘッダーを許可します。 |
| Forward Cookies                         | **All** を選択します。                                                                          |
| Query String Forwarding and Caching     | **Forward all, cache based on all** を選択します。                                              |

<div id="additional-steps-for-specific-auth0-features">
  ## 特定の Auth0 機能に関する追加手順
</div>

利用している Auth0 の機能によっては、追加で設定が必要になる場合があります。詳しくは、[カスタムドメインを使用する機能を設定する](/docs/ja-jp/customize/custom-domains/configure-features-to-use-custom-domains)を参照してください。

Cloudflare では、[CNAME flattening](https://developers.cloudflare.com/dns/cname-flattening/) という機能が使用されており、DNS レコードの処理方法により、Auth0 の検証や証明書の更新に影響します。特別な必要がない限り、CNAME flattening は無効にすることをお勧めします。

この機能では証明書を自分で管理することになるため、攻撃を受けた際にリクエストを遮断するための対策 (Web アプリケーションファイアウォールなど) を検討する必要があります。詳しくは、ボット対策の今後について解説した[ブログ記事](https://auth0.com/blog/the-future-of-bot-protection-smarter-attacks-demand-a-layered-approach/)をご覧ください。

<div id="learn-more">
  ## 詳細情報
</div>

* [カスタムドメインを使用する機能を設定する](/docs/ja-jp/customize/custom-domains/configure-features-to-use-custom-domains)
* [Google Cloud Platform を、ロード バランシングを使用するリバースプロキシとして設定する](/docs/ja-jp/customize/custom-domains/self-managed-certificates/configure-gcp-as-reverse-proxy)
* [Cloudflare をリバースプロキシとして設定する](/docs/ja-jp/customize/custom-domains/self-managed-certificates/configure-cloudflare-for-use-as-reverse-proxy)
* [AWS CloudFront をリバースプロキシとして設定する](/docs/ja-jp/customize/custom-domains/self-managed-certificates/configure-aws-cloudfront-for-use-as-reverse-proxy)
* [Azure CDN をリバースプロキシとして設定する](/docs/ja-jp/customize/custom-domains/self-managed-certificates/configure-azure-cdn-for-use-as-reverse-proxy)
* [Akamai をリバースプロキシとして設定する](/docs/ja-jp/customize/custom-domains/self-managed-certificates/configure-akamai-for-use-as-reverse-proxy)
