仕組み
- ユーザーがアプリケーションでログアウトを開始します。
- アプリケーションがユーザーを Auth0 Authentication API の OIDC Logout エンドポイントにリダイレクトします。
- Auth0 は、指定された OIDC Logout エンドポイントパラメーター に基づいて、ユーザーを適切な宛先にリダイレクトします。
RP-Initiated Logout を設定する
end_session_endpoint パラメーターを確認でき、必要なパラメーターを指定して OIDC Logout エンドポイントを呼び出せるようにする必要があります。
エンドポイントの検出を有効にする
2023年11月14日以降に作成されたAuth0テナントでは、RP-Initiated Logout End Session Endpoint Discovery はデフォルトで有効です。
- Dashboard
- Management API
Dashboard で RP-Initiated Logout End Session Endpoint Discovery を有効にするには、次の手順を実行します。
- Dashboard > Settings > Advanced に移動します。
- Login and Logout セクションを探します。
- RP-Initiated Logout End Session Endpoint Discovery のトグルを有効にします。
OIDC Logout エンドポイントを呼び出す
Auth0 の SDK ライブラリ のほとんどは OIDC に準拠しており、RP-Initiated Logout を標準でサポートしています。
id_token_hint パラメーターを指定することを推奨しています。
アプリケーションで を安全に保存できない場合は、代わりに logout_hint パラメーターと client_id パラメーターを指定できます。
OIDC Logout エンドポイントは、重複する情報を含めて呼び出すこともできます。たとえば、
id_token_hint パラメーターと logout_hint パラメーター、または id_token_hint パラメーターと client_id パラメーターを送信できます。いずれの場合も、Auth0 はユーザーとセッションのデータに整合性があるかを確認し、不一致がある場合はエラーを返します。OIDC Logout エンドポイントのパラメーター
id_token_hint パラメーター
Auth0 では、OIDC Logout エンドポイントを呼び出す際に
id_token_hint パラメーターを使用することを推奨しています。id_token_hint パラメーターの値には、ユーザーの認証後に Auth0 が発行した IDトークン を指定する必要があります。
IDトークン には、検証に使用される登録済みクレームの発行者 (iss) 、 (aud) 、および Auth0 セッション ID (sid) が含まれます。IDトークン のクレームの詳細については、ID Token Structure を参照してください。
例
logout_hint パラメーター
logout_hint パラメーターの値には、ユーザーの現在の Auth0 セッションのセッション ID (sid) を指定する必要があります。
セッション ID (sid) は、ユーザーの認証後に Auth0 が発行した IDトークンに、登録済みクレームとして含まれています。
例
post_logout_redirect_uri パラメーター
post_logout_redirect_uri パラメーターの値は、有効でエンコード済みの URL であり、次のいずれかの Allowed Logout URLs リストに登録されている必要があります。
- Application settings:
id_token_hintパラメーター、またはlogout_hintパラメーターとclient_idパラメーターを指定する場合。 - Tenant settings:
logout_hintパラメーターのみを指定する場合。
例
アプリケーションの Allowed Logout URLs を更新
- Dashboard
- Management API
Dashboard でアプリケーションの Allowed Logout URLs 一覧に URL を登録するには、次の手順に従います。
- Dashboard > Applications > Applications に移動します。
- 対象のアプリケーションを選択します。
- Application URIs セクションを見つけます。
- ガイドラインに従って、Allowed Logout URLs を更新します。
テナントの Allowed Logout URLs を更新する
- Dashboard
- Management API
Auth0 Dashboard でテナントの Allowed Logout URLs リストに URL を登録するには、次の手順に従います。
- Dashboard > Settings > Advanced に移動します。
- Login and Logout セクションを見つけます。
- ガイドライン に従って Allowed Logout URLs を更新します。
Allowed Logout URLs のガイドライン
- 複数の URL 値はコンマ (
,) で区切ります。 - URL スキーム (たとえば
https://) を含めます。
*) を使用できます (例: https://*.example.com) 。ただし、本番環境ではワイルドカードを使用しないことを推奨します。詳細については、Subdomain URL Placeholders を参照してください。
post_logout_redirect_uri にクエリ文字列パラメーターを追加する
post_logout_redirect_uri パラメーターで指定された URL に含まれるクエリ文字列パラメーターを解析します。
Allowed Logout URLs には、クエリ文字列パラメーターを含む完全一致の URL を追加する必要があります。追加しない場合、ログアウトリクエストは拒否されます。URL は、すべてのクエリパラメーター名と値を含めて完全に一致している必要があります。
たとえば、post_logout_redirect_uri パラメーターに https://example.com/logout?myParam=1234 (https%3A%2F%2Fexample.com%2Flogout%3FmyParam%3D1234 としてエンコード) を渡す場合は、完全な URL https://example.com/logout?myParam=1234 を Allowed Logout URLs に追加する必要があります。
ui_locales パラメーター
ui_locales パラメーターの値は、サポートされているロケールをスペース区切りで並べたリストである必要があります。
リストの先頭に指定する値は、テナントの Default Language 設定と一致している必要があります。
federated パラメーター
federated パラメーターに値は必要ありません。
OIDC Logout エンドポイントの呼び出し時に federated パラメーターを含めると、Auth0 はユーザーをその IDプロバイダーからログアウトさせることを試みます。
ログアウト同意プロンプト
id_token_hintパラメーターとlogout_hintパラメーターのどちらも指定されていない。- IDトークンの
sidクレームが、リクエスト内のブラウザーセッションに対応していない。 logout_hintパラメーターの値が、現在のセッションデータと一致しない。

ログアウト同意プロンプトを無効にする
- Dashboard > Settings > Advanced に移動します。
-
Show RP-Initiated Logout End-User Confirmation トグルを無効にします。
