トークンの有効期間の計算ロジック

Authlete が発行するアクセス (リフレッシュ) トークンの有効期間秒数 (以下 duration と記述)の計算ロジックは、利用している Authlete のバージョンによって異なります。具体的には、以下のようになります。

Authlete 1.x


  • サービスに設定されたアクセス (リフレッシュ) トークンの有効期間秒数を取得し、これを duration の初期値とする。

Authlete 2.0 以降


Authlete 2.0 からはスコープ単位の有効期間設定をサポートしている。上記の Authlete 1.x の場合の処理に加え、以下の処理を行う。

  • クライアントがリクエストしているスコープを判別する
  • それら、リクエストされたスコープ群のいずれかに対して、アクセス (リフレッシュ) トークンの有効期間秒数が設定されている場合 (詳細はこちら)、以下の処理を行う
    •  当該スコープ群に設定されたアクセス (リフレッシュ) トークンの有効期間の中から、最小の値を取得する
    • 現在の duration の値と 2.1. で取得した値を比較し、より小さい方を duration の値として採用する

Authlete 2.1 以降


Authlete 2.1 からはクライアント単位の有効期間設定をサポートしている。上記の Authlete 1.x, 2.0 の場合の処理に加え、以下の処理を行う。

  • どのクライアントがリクエストを行なっているかを判別する
  • そのクライアントに対して、アクセス (リフレッシュ) トークンの有効期間秒数が設定されている場合 (詳細はこちら)、 当該クライアントに対して設定されたアクセス (リフレッシュ) トークンの有効期間秒数と現在の duration の値を比較し、より小さい方を duration の値として採用する

参考リンク


How did we do with this article?