我们的刷新令牌最大生命周期设置为 24 小时。在 24 小时不活动后,应要求用户再次登录其 Microsoft 帐户。
在 oidc 设置中,我们将 automaticSilentRenew 属性设置为 true。token
每 1 小时自动向端点发送一个请求。
端点因 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 登录页面。
相反,如果端点返回带有 invalid_grant 的 400 错误请求,是否有办法拦截令牌端点并自动将用户重定向到 Microsoft 登录屏幕。