更新トークンの最大有効期間は 24 時間に設定されています。非アクティブ状態が 24 時間続くと、ユーザーは Microsoft アカウントに再度ログインするよう求められます。
oidc 設定では、automaticSilentRenew プロパティを true に設定しています。1 時間ごとに、token
エンドポイントへのリクエストが自動的に送信されます。
エンドポイントは 400 の不正な要求で失敗し、token
24 時間後に以下の応答が返されます
{"error":"invalid_grant","error_description":"AADSTS700081: The refresh token has expired due to maximum lifetime. The token was issued on 2021-07-20T05:09:24.0754582+00:00 and the maximum allowed lifetime for this application is 1.00:00:00.\r\nTrace ID: 21e2b7bd-d40e-4a24-afb5-9c4881345801\r\nCorrelation ID: 7a5aeb31-2a37-4fbf-bc26-02b457d5d249\r\nTimestamp: 2021-07-21 12:26:56Z","error_codes":[700081],"timestamp":"2021-07-21 12:26:56Z","trace_id":"21e2b7bd-d40e-4a24-afb5-9c4881345801","correlation_id":"7a5aeb31-2a37-4fbf-bc26-02b457d5d249","error_uri":"https://login.microsoftonline.com/error?code=700081"}
そのため、24 時間後にユーザー アクティビティが原因でエンドポイントが呼び出された場合、サーバーは 401 を無許可で送信し、catch ブロックでユーザーを Microsoft ログイン ページにリダイレクトするコードを記述しました。
代わりに、トークン エンドポイントをインターセプトし、エンドポイントが無効な許可で 400 の不正な要求を返した場合に、ユーザーを Microsoft ログイン画面に自動的にリダイレクトする方法はありますか。