リフレッシュトークンとは?SaaS自動化における意味をわかりやすく解説

リフレッシュトークンとは(SaaS自動化における意味)

リフレッシュトークンは、アクセストークンの有効期限が切れたときに新しいアクセストークンを取得するための認可情報です。

要するに、長期間動かす連携で毎回ユーザーにログインしてもらう手間を減らすための仕組みです。対応しているサービスでは、ユーザーの再ログインなしで新しいアクセストークンを取得できます。

アクセストークンとは役割が異なります。アクセストークンはAPIなどへのアクセスに使い、リフレッシュトークンは新しいアクセストークンを取得するときに使います。ただし、トークンの有効期限や更新方法はサービスによって異なります。

自動化フローの中での役割

自動化フローでは、サービスのAPIなどへアクセスするときにアクセストークンを使います。アクセストークンには有効期限が設定されていることがあり、期限が切れた場合は新しいトークンを取得する必要があります。リフレッシュトークンに対応していれば、ユーザーが毎回ログインし直さなくても更新できる場合があります。

iPaaSなどの連携基盤では、OAuthなどを使った接続設定の一部としてリフレッシュトークンが管理されることがあります。通常は利用者がトークンそのものを操作する必要はなく、連携基盤が必要に応じて新しいアクセストークンを取得します。

特に定期実行する連携や長期間運用するワークフローでは重要になります。一方で、APIキーを使うサービスやリフレッシュトークンを使わない認証方式では、この仕組みは必要ありません。

よくある利用シーン

例1:顧客管理SaaSのデータを毎晩取得して請求や会計システムへ連携するフローです。アクセストークンの期限が切れても、リフレッシュトークンを使って新しいアクセストークンを取得できれば、担当者が毎回ログインし直す必要がありません。ただし、リフレッシュトークン自体が失効した場合などは再認可が必要になります。

例2:人事システムから入社情報を取得して別のSaaSへ連携するワークフローです。実行頻度が低い場合でも、前回の実行から時間が空くことがあります。リフレッシュトークンに対応していれば、ユーザーが操作していない期間でもアクセストークンを更新できる場合があります。

運用上の注意点

機密情報として扱う:リフレッシュトークンが第三者に渡ると、不正にアクセストークンを取得されるおそれがあります。平文で保存したり不要な人へ共有したりせず、連携基盤などが提供する安全な保管方法を利用しましょう。

更新失敗を監視する:リフレッシュトークンが失効したり、認可が取り消されたりするとアクセストークンを更新できなくなることがあります。エラー通知や再認可の手順をあらかじめ決めておくと、連携停止に気付きやすくなります。

権限は最小限に:スコープは必要な範囲だけに限定します。リフレッシュトークンを安全に管理するだけでなく、取得できるデータや実行できる操作そのものを必要最小限にしておくことが大切です。

有効期限や失効条件を確認する:リフレッシュトークンの有効期間や更新方法はサービスによって異なります。一定期間利用しないと失効するものや、管理者による設定変更などで利用できなくなる場合もあるため、公式ドキュメントで仕様を確認しておきましょう。

関連用語

  • アクセストークン:APIなどへアクセスするときに使う認可情報です。リフレッシュトークンを使って新しいものを取得できる場合があります。
  • OAuth 2.0:ユーザーのパスワードをサービス間で共有せずに、別のアプリケーションへアクセス権を委任するための認可フレームワークです。リフレッシュトークンはOAuthの仕組みで使われる代表的なトークンの一つです。
  • スコープ:アプリケーションに許可する操作やデータの範囲を示すものです。必要以上の権限を与えないことが安全な運用につながります。
  • 再認可(リコンセント):ユーザーがアプリケーションなどに対して改めてアクセスを許可する操作です。リフレッシュトークンが失効した場合などに必要になることがあります。
  • トークン失効(取り消し):発行済みのトークンを利用できない状態にすることです。ユーザーによる連携解除や管理者による設定変更などで発生する場合があります。

よくある質問

リフレッシュトークンがなくても自動化はできますか?

できます。APIキーを使う認証方式や、実行のたびに別の認証処理を行う方式などではリフレッシュトークンを使わないことがあります。一方、OAuthなどで短期間のアクセストークンを使う連携を長期間運用する場合は、リフレッシュトークンによる更新が利用されることがあります。

どのくらいの頻度で更新されますか?

一般的には、アクセストークンの期限が切れたときや期限切れが近いときに新しいアクセストークンを取得します。ただし、実際の更新タイミングやトークンの有効期間はサービスや連携基盤によって異なります。利用しているサービスの仕様を確認しましょう。

漏えいした場合の影響は大きいですか?

リフレッシュトークンが第三者に渡ると、新しいアクセストークンを取得されて不正利用につながるおそれがあります。漏えいが疑われる場合は、対象のトークンや連携を速やかに無効化し、必要に応じて再認可を行います。利用するスコープを必要最小限にし、トークンを安全に保管することも重要です。