Identityserver4 Identity Server 4访问令牌生存期将在其生存期之后过期
我已经为测试设置了访问和刷新令牌的生存期。现在,我想知道为什么访问令牌没有遵循其生存期,并且在刷新令牌生存期之前仍然有效?我不确定是否设置正确,但以下是如何配置令牌生存期:Identityserver4 Identity Server 4访问令牌生存期将在其生存期之后过期,identityserver4,Identityserver4,我已经为测试设置了访问和刷新令牌的生存期。现在,我想知道为什么访问令牌没有遵循其生存期,并且在刷新令牌生存期之前仍然有效?我不确定是否设置正确,但以下是如何配置令牌生存期: var accessTokenLifetime = 300; var absoluteRefreshTokenLifetime = 600; resultClient = new Client {
var accessTokenLifetime = 300;
var absoluteRefreshTokenLifetime = 600;
resultClient = new Client
{
AllowedGrantTypes = GrantTypes.ResourceOwnerPassword,
AllowOfflineAccess = true,
IdentityTokenLifetime = accessTokenLifetime,
AccessTokenLifetime = accessTokenLifetime,
UpdateAccessTokenClaimsOnRefresh = true,
RefreshTokenUsage = TokenUsage.OneTimeOnly,
RefreshTokenExpiration = TokenExpiration.Absolute,
AbsoluteRefreshTokenLifetime = absoluteRefreshTokenLifetime
};
注意:我删除了那里的一些属性
有什么想法吗?客户端默认包含5分钟的时钟偏移,以支持不同服务中的时钟不同的情况 您可以在客户端应用程序的Startup.ConfigureServices中设置它,如本例所示,以接受1分钟的倾斜。如果愿意,也可以将其设置为零
.AddMyJwtBearer(options =>
{
options.TokenValidationParameters.ClockSkew = TimeSpan.FromMinutes(1);
...
这对我来说很管用!非常感谢,@Tore:)