如何在 ASP.NET Core 中设置 cookie validateInterval?
How to set the cookie validateInterval in ASP.NET Core?
我正在尝试为使用 ASP.NET Identity 3
的 ASP.NET 5 RC1 应用程序设置 validateInterval
我正在尝试实现 答案中的代码。
有很多类似 的代码示例,但它似乎在 ASP.NET 5 RC1
中无效
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
Provider = new CookieAuthenticationProvider
{
OnValidateIdentity = SecurityStampValidator.OnValidateIdentity<ApplicationUserManager, ApplicationUser>(
validateInterval: TimeSpan.FromMinutes(15))
},
ExpireTimeSpan = TimeSpan.FromMinutes(30)
});
如果我尝试在 ASP.NET 5 RC1
中使用上面的代码示例,我不能,因为
Provider
不是 CookieAuthenticationOptions
的 属性
Visual studio 无法通过其灯泡选项在任何名称空间中找到 CookieAuthenticationProvider
。
如何在 ASP.NET 5 RC1
中设置 validateInterval
?
验证间隔在 IdentityOptions 中设置:
services.AddIdentity<AppUser, AppRole>(options =>
{
options.SecurityStampValidationInterval = TimeSpan.FromMinutes(15);
}
您可以使用 CookieAuthenticationEvents 附加到验证事件:
app.UseCookieAuthentication(new CookieAuthenticationOptions()
{
Events = new CookieAuthenticationEvents()
{
OnValidatePrincipal = context =>
{
Microsoft.AspNet.Identity.SecurityStampValidator.ValidatePrincipalAsync(context);
return Task.FromResult(0);
},
},
ExpireTimeSpan = TimeSpan.FromMinutes(30)
});
从 ASP.NET Core 2.0 开始,您将无法在 AddIdentity
时设置 SecurityStampValidationInterval
。
您将能够通过 SecurityStampValidatorOptions
设置 ValidationInterval
:
services.Configure<SecurityStampValidatorOptions>(options =>
{
options.ValidationInterval = TimeSpan.FromSeconds(10);
});
P.S:您必须先 AddIdentity
,然后 ConfigureApplicationCookie
。
我正在尝试为使用 ASP.NET Identity 3
validateInterval
我正在尝试实现
有很多类似
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
Provider = new CookieAuthenticationProvider
{
OnValidateIdentity = SecurityStampValidator.OnValidateIdentity<ApplicationUserManager, ApplicationUser>(
validateInterval: TimeSpan.FromMinutes(15))
},
ExpireTimeSpan = TimeSpan.FromMinutes(30)
});
如果我尝试在 ASP.NET 5 RC1
中使用上面的代码示例,我不能,因为
Provider
不是 CookieAuthenticationOptions
的 属性
Visual studio 无法通过其灯泡选项在任何名称空间中找到 CookieAuthenticationProvider
。
如何在 ASP.NET 5 RC1
中设置 validateInterval
?
验证间隔在 IdentityOptions 中设置:
services.AddIdentity<AppUser, AppRole>(options =>
{
options.SecurityStampValidationInterval = TimeSpan.FromMinutes(15);
}
您可以使用 CookieAuthenticationEvents 附加到验证事件:
app.UseCookieAuthentication(new CookieAuthenticationOptions()
{
Events = new CookieAuthenticationEvents()
{
OnValidatePrincipal = context =>
{
Microsoft.AspNet.Identity.SecurityStampValidator.ValidatePrincipalAsync(context);
return Task.FromResult(0);
},
},
ExpireTimeSpan = TimeSpan.FromMinutes(30)
});
从 ASP.NET Core 2.0 开始,您将无法在 AddIdentity
时设置 SecurityStampValidationInterval
。
您将能够通过 SecurityStampValidatorOptions
设置 ValidationInterval
:
services.Configure<SecurityStampValidatorOptions>(options =>
{
options.ValidationInterval = TimeSpan.FromSeconds(10);
});
P.S:您必须先 AddIdentity
,然后 ConfigureApplicationCookie
。