[英]Set authentication token expiry in ASP.NET Core 6.0 MVC
我有一个直接来自 Microsoft 的 ASP.NET Core 6.0 MVC Web 应用程序模板的网站,其中“身份验证类型”设置为“个人帐户”。
如何设置身份验证令牌的到期时间,最好使用滚动值?
根据docs ,您将在以下内容中添加以下内容:
builder.Services.ConfigureApplicationCookie(options =>
{
// Cookie settings
options.Cookie.HttpOnly = true;
options.ExpireTimeSpan = TimeSpan.FromMinutes(5);
options.LoginPath = "/Identity/Account/Login";
options.AccessDeniedPath = "/Identity/Account/AccessDenied";
options.SlidingExpiration = true;
});
来自有关ExpireTimeSpan
的文档:
控制存储在 cookie 中的身份验证票证从创建之日起保持有效的时间。过期信息存储在受保护的 cookie 票证中。 因此,即使在浏览器应该清除它之后将过期的 cookie 传递给服务器,它也会被忽略。
这与
Microsoft.AspNetCore.Http.CookieOptions.Expires
的值不同,后者指定浏览器保留 cookie 的时间。
换句话说,虽然它没有为 cookie 本身设置过期值,但ExpireTimeSpan
和SlidingExpiration
设置将导致应用程序在大约每 5 分钟的响应中提供一个新值,并在受保护的 cookie 值内更新新的过期值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.