サードパーティアプリケーションの問題を特定する
- クライアントIDのプレフィックス: サードパーティアプリケーションの
client_idはtpc_で始まります。 - テナントログ: Auth0 Dashboard > Monitoring > Logs でアプリケーションをフィルタリングし、エラーイベントを確認します。
よくあるエラー
/authorize エンドポイントに対して厳密なパラメーター検証が行われます。screen_hint、login_ticket、invitation、request (JAR) 、request_uri (PAR) などのパラメーターはサポートされていません。
解決策: 認可リクエストからサポート対象外のパラメーターを削除してください。使用できるパラメーターの一覧については、サードパーティアプリケーションのセキュリティ制御を参照してください。
unsupported_response_type (id_token または token を使用した場合)
response_type=token または response_type=id_token) は使用できません。
解決策: PKCE を使用し、response_type=code を指定します。
/oauth/token から IDトークンが返されない
openid、profile、email) も処理されません。トークンエンドポイントはアクセストークンを返しますが、id_token は返しません。
解決策: アプリケーションに必要な情報を取得するには、API をスコープとして指定したアクセストークンを使用します。サードパーティアプリケーション向けの OIDC サポートは、今後のリリースで提供される予定です。
サポートされていないグラントタイプ
authorization_code、refresh_token、client_credentials のみです。implicit、password、urn:ietf:params:oauth:grant-type:device_code などのグラントタイプは使用できません。
解決策: ユーザー向けフローでは、PKCE を使用する Authorization Code Flow を使用してください。マシン間アクセスでは、機密クライアント (token_endpoint_auth_method は none 以外である必要があります) で Client Credentials Flow を使用してください。
Classic Login が動作しない
クライアントIDが tpc_ で始まる
tpc_ プレフィックスが付与されます。これは作成時に割り当てられるもので、変更はできません。
解決策: これは想定どおりの動作です。より長いクライアントID形式に対応できるよう、クライアント側の検証やデータベース制約を更新してください。
is_first_party またはセキュリティモードは変更できません
メールアドレスの確認またはパスワードのリセットでエラーページが表示される
redirection_policy が open_redirect_protection に設定されているため、Auth0 はメールテンプレート内で application.callback_domain を公開しません。
解決策: サードパーティアプリケーション向けのフォールバックを提供する Liquid 条件式を追加するように、メールテンプレートを更新します。
redirection_policy を allow_always に設定します。詳細については、サードパーティアプリケーションのセキュリティ制御を参照してください。
DCRクライアントはどのAPIにもアクセスできない
/userinfo がエラーを返す
/userinfo エンドポイントはサードパーティアプリケーションでは利用できません。
解決策: アプリケーションに必要な情報を取得するには、API のスコープが付与されたアクセストークンを使用してください。/userinfo を含む OIDC サポートは、今後のリリースで提供される予定です。
/oauth/revoke は動作するが、ログアウトエンドポイントは利用できない
/v2/logout) はサードパーティアプリケーションでは利用できません。
解決策: POST /oauth/revoke を使用してリフレッシュトークンを失効させます。セッション状態のクリアはアプリケーション側で行う必要があります。