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

# トークン無効化ポリシー

> トークン無効化ポリシーに関する技術情報です。

## 概要

Authlete では、[/auth/revocation](/api-reference/revocation-endpoint/process-revocation-request) API を使って特定のアクセストークン（またはリフレッシュトークン）を削除した場合、そのアクセストークンに紐づくリフレッシュトークン（またはそのリフレッシュトークンに紐づくアクセストークン）も同時に削除します。

## 詳細

クライアントからリボケーションリクエストを受け取った認可サーバーは、そのリクエストの内容を "parameters" パラメーターに格納し、Authlete の [/auth/revocation API](/api-reference/revocation-endpoint/process-revocation-request) を呼びだすことになります。

[RFC 7009](https://tools.ietf.org/html/rfc7009) で定義されているように、クライアントからのリボケーションリクエストは下記のパラメーターから構成されます。

| パラメーター            | 条件       | 値                                                        |
| ----------------- | -------- | -------------------------------------------------------- |
| token             | REQUIRED | 無効化しようとしているアクセストークンまたはリフレッシュトークンの値。                      |
| token\_type\_hint | OPTIONAL | 無効化しようとしているトークンの種類のヒント。access\_token または refresh\_token。 |

/auth/revocation API が呼び出されたとき、Authlete は token\_type\_hint の値からトークンの種類を推定し、最初にその種類を対象にトークンデータベースを検索します。もし見つからなかった場合には、次に別の種類についても検索を行います。

つまり Authlete は、**token\_type\_hint をレコードの検索順を決定するために利用**します。**アクセストークンまたはリフレッシュトークンの一方のみを削除する、といった動作にはなりません**。

以下に動作の詳細を示します。

| token\_type\_hint | 検索順                                                                       | 削除されるトークン             |
| ----------------- | ------------------------------------------------------------------------- | --------------------- |
| なし                | アクセストークンのレコードを検索した後、リフレッシュトークンのレコードを検索。token の値に一致するレコードがあった場合、当該トークンを削除。 | アクセストークンおよびリフレッシュトークン |
| access\_token     | 同上                                                                        | 同上                    |
| refresh\_token    | リフレッシュトークンのレコードを検索した後、アクセストークンのレコードを検索。token の値に一致するレコードがあった場合、当該トークンを削除。 | 同上                    |
