テナントのmTLS認証の構成

テナントのmTLS認証を構成する方法を説明します。

まず最初に、カスタムドメインを構成して検証する必要があります。

カスタムドメインを作成する

Management APIでmTLSヘッダーを受け入れるためのカスタムドメインをテナントレベルで構成する必要があります。カスタマーエッジはクライアント証明書を検証する責任を負うため、POST要求でtypeself_managed_certsに設定します。

curl --location --request POST 'https://$tenant/api/v2/custom-domains' \
  --header 'Authorization: Bearer $management_access_token' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "domain":"string",
  "type":"self_managed_certs",
  "verification_method":"txt", 
  "tls_policy":"recommended",
  "custom_client_ip_header":"true-client-ip"
}'

Was this helpful?

/

要求に成功すると、カスタムドメインを検証するために使われる識別子が返されます。詳しくは、APIドキュメントの「新規カスタムドメインの構成」をご覧ください。

既存のカスタムドメインをパッチする

Management APIでmTLSヘッダーを受け入れるための既存のカスタムドメインを構成できます。しかし、すでに存在するカスタムドメインのtypeは変更できません。

以下のPOST要求でmTLSヘッダーを受け入れるための既存のカスタムドメインを構成します。

curl --location --request POST 'https://$tenant/api/v2/custom-domains/:id' \
  --header 'Authorization: Bearer $management_access_token' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "tls_policy":"recommended",
  "custom_client_ip_header":"true-client-ip"
}'

Was this helpful?

/

詳しくは、APIドキュメントの「カスタムドメイン構成の更新」をご覧ください。

カスタムドメインを検証する

Auth0は、カスタムドメインの作成と更新要求を受け入れる前に、まずドメインを検証する必要があります。Management APIを使って以下のPOST要求を送り、カスタムドメインを検証します。

curl --location --request POST 'https://$tenant/api/v2/custom-domains/:id/verify'

Was this helpful?

/

statusフィールドで検証ステータスを確認します。検証が完了後、カスタムドメインが要求を受け入れ始めるまで最大10分かかる場合があります。

Auth0がこのカスタムドメインを初めて検証した場合、応答にはcname_api_keyが含まれます。これはエッジ/リバースプロキシを構成する際に必要です。このキーは秘密にしておく必要があり、転送された要求の検証に使われます。

詳しくは、APIドキュメントの「カスタムドメインの検証」をご覧ください。

mTLSエンドポイントエイリアスを有効にする

mTLSハンドシェイクでクライアントからのクライアント証明書が要求される場合、Webブラウザーはユーザーに証明書を選択するためのモーダルダイアログを表示します。これではユーザーエクスペリエンスに摩擦が生じるため、/authorizeエンドポイントのようにmTLSが不要なエンドポイントでは回避すべきです。結果として、異なるドメインでmTLSトラフィックと非mTLSトラフィックに対応するお客様は、mTLSエンドポイントエイリアスを有効にするべきです。

mTLSエンドポイントエイリアスは、クライアントがOIDCディスカバリードキュメントのmtls_endpoint_aliasesプロパティで指定するエンドポイントにmTLSトラフィックを送るべきであることを示します。クライアントは非mTLSトラフィックを通常のエンドポイントに送ります。mtls_endpoint_aliasesプロパティに関する詳細は、「リソースサーバーの呼び出し」をお読みください。

mTLSエンドポイントエイリアスは、Auth0 DashboardManagement APIで有効にすることができます。

Auth0 Dashboardを使用して、mTLSエンドポイントエイリアスを有効にする方法:

  1. [Auth0 Dashboard]に行き、サイドメニューの[Settings(設定)]を選択します。

  2. [Tenant Settings(テナント設定)]の下の、[Advanced(詳細設定)]タブを選択します。

  3. [Allow mTLS Endpoint Aliases(mTLSエンドポイントエイリアスを許可する)]を見つけ、有効にしますこれによりmtls.<your custom domain>というエンドポイントにmTLSトラフィックを定めます

もっと詳しく