> ## Documentation Index
> Fetch the complete documentation index at: https://auth0.generaltranslation.app/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">
  カスタムドメインで証明書を管理するには、エンタープライズサブスクリプションが必要です。詳細については、「[Auth0の価格設定](https://auth0.com/pricing/)」と「[ログイン](/docs/ja-JP/ja-jp/authenticate/login)」をお読みください。
</Callout>

Auth0からのサポートなしにカスタムドメインの証明書を管理する場合は、ドメイン上で複数のDNSレコードを必要とする受信接続の独自のプロキシと証明書を管理する方法を理解している必要があります。証明書を購入または提供し、更新をユーザー自身で管理しなければなりません。証明書がインストールされる場合はリバースプロキシも必要になります。ドメインが検証されたら、プロキシからトラフィックを受け取ります。

以下の操作を行うために、このオプションを選択してください。

* 証明書をより細かく制御する（独自の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. [［Dashboard］>［Settings（設定）］>［Custom Domains（カスタムドメイン）］](https://manage.auth0.com/#/tenant/custom_domains)または[［Dashboard］>［Branding（ブランディング）］>［Custom Domains（カスタムドメイン）］](https://manage.auth0.com/#/custom_domains)に移動します。カスタムドメインを指定されたボックスに入力し、ドロップダウンメニューから **［Self-managed Certificates（自己管理証明書）］** を選択します。
2. **［Add Domain（ドメインを追加）］** をクリックします。ドメインを追加した後でも **［Add Domain（ドメインを追加）］** ボタンは表示されたままですが、テナントごとに追加できるドメインは1つだけです。

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

Auth0でドメインを使用するには、先にドメインを所有していることを確認する必要があります。

1. [［Dashboard］>［Branding（ブランディング）］>［Custom Domains（カスタムドメイン）］](https://manage.auth0.com/#/branding/custom_domains)の順に移動します。

   <Frame>
     <img src="https://mintcdn.com/generaltranslationinc/TAtXfl0iCCUYtXZs/docs/images/ja-jp/cdy7uua7fh8z/4XhEmQwKfoqydOldfHnnud/7e7dfc2780545fc457592c7c3728da31/Custom_Domains_-_Self_-_Japanese.png?fit=max&auto=format&n=TAtXfl0iCCUYtXZs&q=85&s=1d3233dcedbb8a96dd08e49106e0192c" alt="Auth0 - ブランディング - カスタムドメイン - 自己管理証明書 - ドメインを検証する" width="1102" height="696" data-path="docs/images/ja-jp/cdy7uua7fh8z/4XhEmQwKfoqydOldfHnnud/7e7dfc2780545fc457592c7c3728da31/Custom_Domains_-_Self_-_Japanese.png" />
   </Frame>

2. TXT検証情報をドメインのDNSレコードに追加します。これらの手順は、お使いのドメインホストプロバイダーに応じて異なる場合があります。

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

      <table class="table">
        <thead>
          <tr>
            <th><b>パラメーター</b></th>
            <th><b>値</b></th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>Record type（レコードタイプ）</td>
            <td>TXT</td>
          </tr>

          <tr>
            <td>Name（名前）</td>
            <td>Auth0から取得したドメインの **［TXT Record（TXTレコード）］** の値をコピーして貼り付けます。</td>
          </tr>

          <tr>
            <td>Time to Live (TTL)（有効期限（TTL））</td>
            <td>デフォルト値を使用します。</td>
          </tr>

          <tr>
            <td>Value（値）</td>
            <td>Auth0から取得したドメインの **［TXT Content（TXTコンテンツ）］** の値をコピーして貼り付けます。</td>
          </tr>
        </tbody>
      </table>

3. 続行するには **［Verify（確認）］** をクリックします。

   DNS設定によっては、ドメインが確認されるまで数分かかることがあります。

   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/ja-jp/customize/custom-domains/self-managed-certificates/configure-cloudflare-for-use-as-reverse-proxy)、[Azure CDN](/docs/ja-JP/ja-jp/customize/custom-domains/self-managed-certificates/configure-azure-cdn-for-use-as-reverse-proxy)、[Google Cloud Platform](/docs/ja-JP/ja-jp/customize/custom-domains/self-managed-certificates/configure-gcp-as-reverse-proxy)、または[AWS Cloudfront](/docs/ja-JP/ja-jp/customize/custom-domains/self-managed-certificates/configure-aws-cloudfront-for-use-as-reverse-proxy)などのサービスを使用し、カスタムドメインの設定を構成することができます。新しいCNAME値を、ディストリビューション用リバースプロキシのサーバードメイン名をポイントするカスタムドメインのDNSに追加します。

1. サービス上でリバースプロキシ設定を作成したら、[［Auth0 Dashboard］>［Branding（ブランディング）］>［Custom Domains（カスタムドメイン）］](https://manage.auth0.com/#/branding/custom_domains)タブの順に移動します。
2. 新しいCNAMEレコードを、ディストリビューション用のサービスドメイン名をポイントするカスタムドメインのDNSに追加します。これを見つけるには、リバースプロキシのサーバー構成で **［Distribution ID（ディストリビューションID）］** を検索します。CNAMEレコードを追加したら、証明書の更新中に問題が発生するのを避けるために、このレコードは常時必要となります。
3. プロキシサーバーの構成方法は、使用するサービスごとに異なります。構成が必要となる可能性の高い設定タイプは以下のとおりです。

* [ディストリビューション](#distribution-settings)
* [Origin custom headers（オリジンのカスタムヘッダー）](#origin-custom-header-settings)
* [Origin hostname（オリジンのホスト名）](#origin-hostname-settings)
* [Default cache behavior（デフォルトのキャッシュ動作）](#default-cache-behavior-settings)

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

<table class="table">
  <thead>
    <tr>
      <th><b>設定</b></th>
      <th><b>値</b></th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>オリジンドメイン名</td>
      <td>カスタムドメイン設定プロセス中にAuth0 Dashboardから取得した<b>オリジンドメイン名</b>の値に設定します。</td>
    </tr>

    <tr>
      <td>オリジンID</td>
      <td>オリジンの説明。この値によって、同じディストリビューション内の複数のオリジンを見分けることができるため、この値は一意でなければなりません。</td>
    </tr>

    <tr>
      <td>オリジンプロトコルポリシー</td>
      <td>`HTTPS Only`に設定します。</td>
    </tr>

    <tr>
      <td>代替ドメイン名（CNAMEs）</td>
      <td>カスタムドメイン名（Auth0 Dashboardで設定したのと同じもの）に設定します。</td>
    </tr>
  </tbody>
</table>

<div id="origin-custom-header-settings">
  ### オリジンのカスタムヘッダー設定
</div>

<table class="table">
  <thead>
    <tr>
      <th><b>設定</b></th>
      <th><b>値</b></th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>Header Name（ヘッダー名）</td>
      <td>`cname-api-key`に設定します。</td>
    </tr>

    <tr>
      <td>Value（値）</td>
      <td>Auth0でドメイン名の所有権を確認した直後に提供されたCNAME APIキーの値に設定します。</td>
    </tr>
  </tbody>
</table>

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

<table class="table">
  <thead>
    <tr>
      <th><b>設定</b></th>
      <th><b>値</b></th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>Origin hostname（オリジンホスト名）</td>
      <td>`{yourTenant}-&lt;CUSTOM_DOMAIN_ID&gt;.edge.tenants.us.auth0.com`を入力します。`&lt;CUSTOM_DOMAIN_ID&gt;`を、新しいカスタムドメインをセットアップしたときにAuth0から受け取ったオリジンドメイン名（カスタムドメインID）の値に置き換えます。テナントがUS地域内でない場合は、以下の１つを使用します。<ul><li>EU： `{yourTenant}-&lt;CUSTOM_DOMAIN_ID&gt;.edge.tenants.eu.auth0.com`</li><li>AU: `{yourTenant}-&lt;CUSTOM_DOMAIN_ID&gt;.edge.tenants.au.auth0.com`</li><li>JP：`{yourTenant}-&lt;CUSTOM_DOMAIN_ID&gt;.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`</td>
    </tr>

    <tr>
      <td>Host header（ホストヘッダー）</td>
      <td>オリジンホスト名に指定した名前を使用します。</td>
    </tr>
  </tbody>
</table>

カスタムドメインの詳細を取得する方法については、「[カスタムドメイン構成を取得する](https://auth0.com/docs/api/management/v2/custom-domains/get-custom-domains)」をご覧ください。

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

<table class="table">
  <thead>
    <tr>
      <th><b>設定</b></th>
      <th><b>値</b></th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>［Viewer Protocol Policy（ビューワープロトコルポリシー）］</td>
      <td> **［Redirect HTTP to HTTPS（HTTPをHTTPSにリダイレクト）］** を選択します。</td>
    </tr>

    <tr>
      <td>［Allowed HTTP Methods（許可されたHTTPメソッド）］</td>
      <td> **［GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE］** を選択します。</td>
    </tr>

    <tr>
      <td>［Cache Based on Selected Request Headers（選択されたリクエストヘッダーに基づいたキャッシュ）］</td>
      <td> **［Allow list（許可リスト）］** を選択します。</td>
    </tr>

    <tr>
      <td>［Allow List Headers（許可リストヘッダー）］</td>
      <td>次のヘッダーを使用できます：`User-Agent`、`Origin`、`Referer`、`Authorization`、`Accept`、`Accept-Language`</td>
    </tr>

    <tr>
      <td>［Forward Cookies（クッキーの転送）］</td>
      <td> **［All（すべて）］** を選択します。</td>
    </tr>

    <tr>
      <td>［Query String Forwarding and Caching（クエリ文字列の転送とキャッシュ）］</td>
      <td> **［Forward all, cache based on all（すべて転送、すべてに基づいてキャッシュ）］** を選択します。</td>
    </tr>
  </tbody>
</table>

<div id="additional-steps-for-specific-auth0-features">
  ## 特定のAuth0機能で使用するその他の手順
</div>

使用しているAuth0機能に応じて、完了しなければならない手順がほかにもあります。詳細については、「[カスタムドメインを使用するために機能を構成する](/docs/ja-JP/ja-jp/customize/custom-domains/configure-features-to-use-custom-domains)」をお読みください。

Cloudflareでは、CNAME Flatteningと呼ばれる機能を使用します。この機能は、DNSレコードを処理する方法においてAuth0の検証と証明書更新に影響します。どうしても使用しなければならない場合を除き、CNAME Flattening機能はオフにすることを推奨します。詳細については、「[Cloudflareのドキュメント](https://support.cloudflare.com/hc/en-us/articles/200169056-Understand-and-configure-CNAME-Flattening)」をお読みください。

<div id="learn-more">
  ## もっと詳しく
</div>

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