我已经在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天。
答案 0 :(得分:1)
您不请求刷新令牌,但是您使用刷新令牌请求访问令牌。
自从您配置了TokenUsage.OneTimeOnly
以来,每个成功的响应都将返回两个令牌:
我不确定您希望将哪个令牌设置为15天,但在这种情况下,访问令牌的寿命应始终为2小时。