メインコンテンツへスキップ
テナントでサードパーティアプリケーションを動的に登録できます。Dynamic Client Registration (DCR) は、OpenID Connect Dynamic Client Registration specification に基づいています。 Dynamic Client Registration で作成されるすべてのアプリケーションは、サードパーティアプリケーションであり、強化されたセキュリティ制御が適用されます。つまり、DCR クライアントには次の特性があります。
  • クライアントID には tpc_ プレフィックスが付与される
  • 認可コードフローでは PKCE が必須
  • authorization_code および refresh_token のグラントタイプのみをサポートする。client_credentials グラントタイプは DCR では使用できません。
  • API には、明示的なクライアントグラントを介してのみアクセスできる
  • 認証には、ドメインレベルの接続のみを使用できる

Dynamic Client Registration を有効にする

Auth0 は Open Dynamic Registration をサポートしています。これを有効にすると、トークンがなくても誰でもテナント内にアプリケーションを作成できるようになります。
デフォルトでは、すべてのテナントで Dynamic Client Registration は無効になっています。Dynamic Client Registration を有効にするには、Auth0 Dashboard または Management API を使用します。
  1. Dashboard > Settings > Advanced に移動し、Dynamic Client Registration (DCR) を有効にします。

DCR クライアントの API アクセスを設定する

DCR を有効にする前に、動的に登録されるクライアントがアクセスする API で、サードパーティアプリケーションのデフォルト権限を設定してください。デフォルト権限がない場合、DCR クライアントはいずれの API にもアクセスできません。 デフォルト権限では、すべてのサードパーティアプリケーションで自動的に利用できる API とスコープの基本セットを定義します。これは DCR では重要です。登録フロー中に、アプリケーションごとのクライアントグラントを設定できないためです。 デフォルト権限の設定方法については、Configure Third-Party Applicationsを参照してください。

アプリケーションを登録する

アプリケーションを動的に登録するには、/oidc/register エンドポイントに POST リクエストを送信します。Auth0 は Open Dynamic Registration をサポートしているため、/oidc/register エンドポイントではアクセストークンなしで登録リクエストを受け付けます。
パラメーター説明
client_name作成するアプリケーションの名前。
redirect_uris (required)認証フローの完了後に Auth0 が有効な callback URL として受け入れる URL の配列。
token_endpoint_auth_methodトークンエンドポイントの認証方法。パブリッククライアント (SPA、Native) には none、コンフィデンシャルクライアントには client_secret_post (デフォルト) を使用します。
grant_typesアプリケーションで使用するグラントタイプ。レスポンスでは、実際に使用が許可されるものだけが返されます。DCR で作成したアプリケーションでは、authorization_coderefresh_token がサポートされます。
response_typesアプリケーションで使用するレスポンスタイプ。認可コードフローには code を使用します。
成功すると、Auth0 はアプリケーションの認証情報を返します。
{
  "client_name": "My Dynamic Application",
  "client_id": "tpc_8SXWY6j3afl2CP5ntwEOpMdPxxy49Gt2",
  "client_secret": "Q5O...33P",
  "redirect_uris": [
    "https://application.example.com/callback"
  ],
  "client_secret_expires_at": 0,
  "grant_types": ["authorization_code", "refresh_token"],
  "token_endpoint_auth_method": "none"
}
フィールド説明
client_idtpc_ 接頭辞が付いた一意の Application ID。認証フローを開始する際に使用します。
client_secretコンフィデンシャルクライアント用のアプリケーションシークレット。token_endpoint_auth_methodnone の場合は返されません。
client_secret_expires_atクライアントシークレットの有効期限。Auth0 では常に 0 (無期限) です。
サードパーティの開発者は、登録後にアプリケーション設定を変更できません。変更が必要な場合は、テナントの所有者に連絡する必要があります。
登録後、アプリケーションは client_id と設定済みの redirect_uris を使用して PKCE を使用する認可コードフロー を開始できます。

テナントアクセス制御リスト (ACL)

Auth0 では、/oidc/register エンドポイントへのトラフィックを管理するために、テナントアクセス制御リスト (ACL) を提供しています。次の項目に基づいて ACL ルールを設定することで、DCR リクエストを送信できる対象を制限できます。
  • 送信元 IP アドレスと CIDR 範囲
  • 地理的位置情報
  • その他のリクエストシグナル
DCR の ACL ルールを設定するには、ACL ルールに dcr スコープを追加します。詳しくは、Tenant ACL Reference を参照してください。

レート制限

/oidc/register エンドポイントは、テナントごとに 1 秒あたり 5 リクエストに制限されています。レート制限の詳細については、Rate Limit Configuration を参照してください。

DCR のパーミッシブモード

2026 年 4 月より前からサードパーティアプリケーションを使用していた一部のお客様は、強化されたセキュリティ制御ではなく、従来の動作でアプリケーションが作成されるように DCR を設定できます。詳細については、パーミッシブモードでの動的クライアント登録 を参照してください。

関連情報