Identity Server 4 刷新令牌过期不起作用
Identity Server 4 Refresh Token Expiration Not Working
我在 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 天。
以下是令牌和刷新令牌请求的选择:
您没有请求刷新令牌,但是您使用刷新令牌来请求访问令牌.
由于您配置了 TokenUsage.OneTimeOnly
,每个成功的响应将 return 两个标记:
- 访问令牌
- 刷新令牌
我不确定您希望将哪个令牌设置为 15 天,但在本例中,访问令牌的生命周期应始终为两个小时。
我在 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 天。
以下是令牌和刷新令牌请求的选择:
您没有请求刷新令牌,但是您使用刷新令牌来请求访问令牌.
由于您配置了 TokenUsage.OneTimeOnly
,每个成功的响应将 return 两个标记:
- 访问令牌
- 刷新令牌
我不确定您希望将哪个令牌设置为 15 天,但在本例中,访问令牌的生命周期应始终为两个小时。