Table of Contents
Authlete は発行済トークンの情報(有効期間やスコープなど)を更新するための API を 2 種類提供しています。これらの API はそれぞれ、更新対象の指定方法と、更新可能な項目が異なります。用途に応じて使い分けてください。
ある 1 つのトークンを更新 | あるクライアントとユーザーに関連するトークンを更新 | |
---|---|---|
API | /auth/token/update | /client/authorization/update |
対象の指定方法 | ある 1 つのアクセストークン(“accessToken”) | クライアント (“clientId”) とユーザー (“subject”) の組 |
対象の個数 | 1 | 1 以上複数 |
更新可能な項目 |
|
|
2 つの方法についてそれぞれ以下にまとめます。
/auth/token/update API を用います。ある発行済のアクセストークン(accessToken) について、新たな有効期間 (accessTokenExpiresAt) やスコープ (scopes) を設定することが可能です。
また OAuth 2.0 関連のパラメーター以外にも、任意の key/value を「プロパティ (properties)」として追加することができます。これにより、そのアクセストークンにひもづく情報を Authlete のデータベースに格納することが可能となります。
/client/authorization/update API を用います。対象範囲は、あるクライアント (clientId) に対して発行されているトークンのうち、さらにそのクライアントに対して許可を与えたユーザー (subject) に関連するものというかたちになります。
この API は、あるユーザーがあるクライアントに対して行った認可をすべて更新する場合に有用です。たとえば以下のようなユースケースが想定されます。
認可サーバーは 3. の処理を実装するにあたり、この /client/authorization/update API を用いることによって、そのクライアントに与えている個々のトークンに対してではなく、そのユーザーが許可したトークン全てについて、一括して write スコープを外す(read スコープのみにする)ことが可能となります。
実行例については別記事(ユーザー単位での発行済トークン管理)の「あるユーザーが認可しているクライアントのうち、特定のクライアントに与えた認可範囲の変更」をご参照ください。