アクセストークンの自動更新の仕組みについて
現在LINE WORKS API 2.0(Beta)を用いて、LINE WORKS Botを作成しています。
このLINE WORKS Botにおいて、「アクセストークンをDBに保存し、DBから取り出したトークンが有効であれば返信を返し、トークンが有効でない場合(期限切れとなっている場合)に自動的に更新を行い更新後のトークンを用いて返信を行う」といった仕組みを実装しようと考えています。
そこでドキュメントのトークン発行の箇所を呼んでいると、「Access Tokenの有効期限が満了した場合、Refresh Tokenを使用してAccess Tokenを再発行することが可能です。」とありました。
そこでリフレッシュトークンでの再発行のAPIの説明をみてみるとレスポンスにはアクセストークンが返ってきており、リフレッシュトークンのリフレッシュトークンは返ってこないようでした。
これでは再発行したアクセストークンについての再発行(再々発行)ができないように思われます。このようなトークンの再々発行以降にはどのようなプロセスをとればいいのでしょうか?
(ちなみに現状では以下のような案を考えています)
<リフレッシュトークンが一回限りの使い捨てだと仮定した場合>
トークン情報を保存するDBに`IsInit`(初回発行かどうか)のようなフラグ項目を加えて、このフラグを用いて通常の発行→(24h後)リフレッシュトークンでの再発行→(24h後)通常の発行→(24h後)リフレッシュトークンでの再発行、、のように繰り返す方法をとる
<リフレッシュトークンが有効期限90日の間であれば何度でも使えると仮定した場合>
上記のプロセスの期間を延ばして、
通常の発行→(24h後)リフレッシュトークンでの再発行→(90days後)通常の発行→(24h後)リフレッシュトークンでの再発行、、のように繰り返す方法をとる
二つの方法とも通常の発行とリフレッシュトークンでの再発行を繰り返すという方法を考えています。
投稿に新しいコメントが追加されましたら通知を送信します。
コメント1
업데이트 된 답글입니다.
Nick
こちらの認識で間違いないと思われます。
2022.02.17
まだ、解決できませんか?
今すぐ実際に使用しているLINE WORKSユーザーに質問してみましょう。