> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# OIDC ログアウト

> OIDC 準拠のログアウト endpoint を使用してユーザーをログアウトし、必要に応じてログアウト後の URI にリダイレクトします。

<div id="endpoint">
  ## エンドポイント
</div>

`GET /oidc/logout`

このエンドポイントを使用して、ユーザーをログアウトできます。ログアウト後にユーザーを特定の URL に遷移させたい場合は、その URL を `post_logout_redirect_uri` パラメーターに設定します。この URL は、該当する `Allowed Logout URLs` の一覧に含まれている必要があります。

* `id_token_hint` パラメーターが含まれている場合:
  * `client_id` パラメーターが含まれている場合、サーバーは `id_token_hint` の `aud` クレーム内の URL を使用して、`client_id` で指定されたアプリケーションに設定されている `Allowed Logout URLs` のうち、どれを使用するかを選択します。
  * `client_id` パラメーターが含まれていない場合、サーバーは `id_token_hint` の `aud` クレーム内の URL を使用して、テナントレベルに設定されている `Allowed Logout URLs` のうち、どれを使用するかを選択します。
* `id_token_hint` パラメーターが含まれていない場合:
  * `client_id` パラメーターが含まれている場合、`post_logout_redirect_uri` の URL は、アプリケーションレベルで設定された `Allowed Logout URLs` の一覧に含まれている必要があります。
  * `client_id` パラメーターが含まれていない場合、`post_logout_redirect_uri` の URL は、テナントレベルで設定された `Allowed Logout URLs` の一覧に含まれている必要があります。
  * `client_id` パラメーターが含まれており、`post_logout_redirect_uri` の URL が設定されていない場合、サーバーはユーザーを Auth0 Dashboard で設定された最初の `Allowed Logout URLs` にリダイレクトします。

詳しくは、[OIDC エンドポイント を使用して Auth0 からユーザーをログアウトする](https://auth0.com/docs/authenticate/login/logout/log-users-out-of-auth0)を参照してください。

<div id="remarks">
  ### 注記
</div>

* ユーザーをソーシャル ID プロバイダーからログアウトさせることは一般的ではないため、ソーシャル ID プロバイダーで `federated` クエリ文字列パラメーターを使用する前に、ユーザーエクスペリエンスを十分に考慮してください。
* `id_token_hint` と `logout_hint` の両方を指定する場合、`logout_hint` の値は `id_token_hint` の `sid` クレームと一致している必要があります。
* `id_token_hint` と `client_id` の両方を指定する場合、`client_id` の値は `id_token_hint` の `aud` クレームと一致している必要があります。
* `id_token_hint` が指定されていない場合、ユーザーのセッション ID と一致する `logout_hint` が指定されていない限り、ユーザーに同意を求めるプロンプトが表示されます。
* このリクエストでは `POST` HTTP メソッドもサポートされています。`POST` を使用する場合、リクエストパラメーターはクエリ文字列ではなく、フォームパラメーターとしてリクエストボディで指定する必要があります。`federated` パラメーターには `true` または `false` を指定する必要があります。
* これは [OIDC RP-Initiated Logout 仕様](https://openid.net/specs/openid-connect-rpinitiated-1_0.html) に準拠しています。

<div id="learn-more">
  ### 詳しくはこちら
</div>

* [ログアウト](https://auth0.com/docs/authenticate/login/logout)
* [OIDC エンドポイントを使用して Auth0 からユーザーをログアウトする](https://auth0.com/docs/authenticate/login/logout/log-users-out-of-auth0)
* [OIDC RP-Initiated Logout 仕様](https://openid.net/specs/openid-connect-rpinitiated-1_0.html)

<div id="query-parameters">
  ## クエリパラメータ
</div>

<ParamField query="id_token_hint" type="string">
  \[推奨] ユーザーに以前発行された ID トークンです。どのユーザーをログアウトするかを示すために使用されます。
</ParamField>

<ParamField query="logout_hint" type="string">
  どのユーザーをログアウトするかを示すための、任意の `sid` (セッション ID) 値です。`id_token_hint` が利用できない場合に指定してください。
</ParamField>

<ParamField query="post_logout_redirect_uri" type="string">
  ログアウト後にユーザーをリダイレクトするための URL です。
</ParamField>

<ParamField query="client_id" type="string">
  アプリケーションの `client_id` です。
</ParamField>

<ParamField query="federated" type="string">
  ユーザーを ID プロバイダーからログアウトさせるには、このクエリ文字列パラメーターを追加します: `https://YOUR_DOMAIN/oidc/logout?federated`。
</ParamField>

<ParamField query="state" type="string">
  アプリケーションが最初のリクエストに追加する不透明な値で、認可サーバーは `post_logout_redirect_uri` へのリダイレクト時にこの値を含めます。
</ParamField>

<ParamField query="ui_locales" type="string">
  リクエストで使用する言語リストを制限するための、スペース区切りのロケール一覧です。一覧の先頭のロケールは、テナントで有効になっているロケールと一致している必要があります。
</ParamField>

<div id="response-messages">
  ## レスポンスメッセージ
</div>

| ステータス | 説明                              |
| ----- | ------------------------------- |
| 200   | 正常にログアウトしました                    |
| 400   | 不正なリクエスト。必須パラメータが不足している可能性があります |
