Identity Server 4刷新令牌过期不起作用

时间:2019-03-08 20:11:11

标签: jwt identityserver4 refresh-token

我已经在Identity Server 4身份验证服务器中创建了一个客户端,并设置了以下令牌属性:

 var idsClient = new Client
                {
                    ClientName = parsedResult.Name,
                    ClientId = parsedResult.ClientId,
                    RequireConsent = false,
                    RequirePkce = false,
                    AllowOfflineAccess = true,
                    AllowAccessTokensViaBrowser = true,
                    RefreshTokenUsage = TokenUsage.OneTimeOnly,
                    RefreshTokenExpiration = TokenExpiration.Sliding,
                    AccessTokenLifetime = 7200, //2 hours
                    AbsoluteRefreshTokenLifetime = 2592000, //30 days
                    SlidingRefreshTokenLifetime = 1296000 //15 days
                };

当我请求访问令牌时,它的到期时间设置为2小时,并返回刷新令牌值。当我请求刷新令牌时,到期时间仍设置为2小时而不是15天。

以下是令牌和刷新令牌请求的选择: enter image description here

enter image description here

1 个答案:

答案 0 :(得分:1)

您不请求刷新令牌,但是您使用刷新令牌请求访问令牌

自从您配置了TokenUsage.OneTimeOnly以来,每个成功的响应都将返回两个令牌:

  • 访问令牌
  • 刷新令牌

我不确定您希望将哪个令牌设置为15天,但在这种情况下,访问令牌的寿命应始终为2小时。