asp.net-mvc – ASP.NET Core MVC:设置身份cookie的到期
|
在我的ASP.NET Core MVC应用程序中,身份验证cookie的生命周期设置为“Session”,因此它一直持续到关闭浏览器.
app.UseIdentity(); 如何延长Cookie的使用寿命? 解决方法您正在使用的ASP.NET身份中间件是对UseCookieAuthentication的一些调用,包括管道上的Cookie身份验证中间件.这可以在Identity中间件 here on GitHub的构建器扩展的源代码中看到.在这种情况下,配置底层Cookie身份验证应如何工作所需的选项将封装在IdentityOptions上,并在设置依赖注入时进行配置.实际上,查看我链接到的源代码,可以看到当您调用app.UseIdentity()时,会运行以下内容: var options = app.ApplicationServices.GetRequiredService<IOptions<IdentityOptions>>().Value; app.UseCookieAuthentication(options.Cookies.ExternalCookie); app.UseCookieAuthentication(options.Cookies.TwoFactorRememberMeCookie); app.UseCookieAuthentication(options.Cookies.TwoFactorUserIdCookie); app.UseCookieAuthentication(options.Cookies.ApplicationCookie); return app; 要设置IdentityOptions类,AddIdentity< TUser,TRole>方法有一个重载版本,允许使用一个lambda配置选项.因此,您只需传递一个lambda来配置选项.在这种情况下,您只需访问选项类的Cookie属性,并根据需要配置ApplicationCookie.要改变你做的事情的时间间隔 services.AddIdentity<ApplicationUser,IdentityRole>(options => {
options.Cookies.ApplicationCookie.ExpireTimeSpan = TimeSpan.FromHours(1);
});
编辑:ExpireTimeSpan属性仅在调用HttpContext.Authentication.SignInAsync时才会使用,我们将IsProperties设置为true的AuthenticationProperties实例中传递. 尝试使用Cookie认证中间件,事实证明这是有效的:如果我们刚刚登录没有这个选项,我们得到一个持续会话的cookie,如果我们一起发送,我们得到一个cookie,持续我们在配置时设置中间件 使用ASP.NET身份的方法是将值为true的PasswordSignInAsync的参数传递给参数.这最终是调用SignInAsync的HttpContext传递AuthenticationProperties中的IsPersistent设置为true.该通话最终是这样的: var result = await _signInManager.PasswordSignInAsync(model.Email,model.Password,model.RememberMe,lockoutOnFailure: false); 如果我们将IsPersistent设置为true或false,则RememberMe是哪些配置. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp-classic – 用于新的Web应用程序的经典ASP与PHP
- asp.net-mvc-3 – 实体框架,MVC 3,LINQ To Entities中的Ord
- .net – 强制ActionLinks呈现为小写
- asp.net-mvc-3 – 哪里和如何定义我的asp.net MVC 3 web应用
- asp.net – 由TaskScheduler和SynchronizationContext混淆同
- asp.net-mvc – 确保每个控制器方法都有一个ValidateAntiFo
- asp.net-mvc-3 – 在ASP.NET MVC3中的自定义授权属性中使用
- asp.net-mvc – 从asp.net mvc控制器返回一个js文件
- asp.net – 403禁止错误
- asp.net-mvc-3 – 默认模型绑定器没有绑定到字段的原因是什
- 可能的Bug与ASP.NET MVC 3路由?
- asp.net – 是否可以根据用户角色隐藏/显示Kendo
- asp.net-mvc – 使用AutoMapper的控制器上的单元
- asp.net-mvc-4 – 我应该如何使用ReturnUrl = Vi
- asp.net-mvc-3 – 使用构造方法参数过滤的Ninjec
- asp.net – 如何处理在IIS上运行的网站的计划任务
- asp.net – 路径’PROPFIND’被禁止?
- ASP.NET表单身份验证 – 在调试时使用测试帐户自
- 从ASP.NET Core连接到SQL Server的最佳实践?
- 如何通过Asp.net WebAPI中的异常过滤器传递内容?
