asp.net中的身份验证Cookie
发布时间:2020-12-16 09:48:05 所属栏目:asp.Net 来源:网络整理
导读:我在asp.net.i中使用表单身份验证已将我的Authenticate cookie过期设置为60分钟,在web.config中将会话时间设置为60分钟,在web.config中超时为60分钟以及在iis空闲时间中60分钟 authentication mode="Forms" forms loginUrl="~/Account/Login.aspx" timeout="
我在asp.net.i中使用表单身份验证已将我的Authenticate cookie过期设置为60分钟,在web.config中将会话时间设置为60分钟,在web.config中超时为60分钟以及在iis空闲时间中60分钟
<authentication mode="Forms"> <forms loginUrl="~/Account/Login.aspx" timeout="60" defaultUrl="~/Landing.aspx" slidingExpiration="true"/> </authentication> <system.web> <sessionState timeout="60" mode="InProc"/> FormsAuthenticationTicket ticket = new FormsAuthenticationTicket( 2,// Version number txtUserName.Text.Trim(),// Username DateTime.Now,// Issue date DateTime.Now.AddMinutes(60),// Expiration date false,// Persistent? userData // User data ); 因为我正在使用表单身份验证,如果用户空闲60分钟,用户应该在60分钟后被重定向到登录页面.但我需要知道如果用户没有空闲60分钟会发生什么.验证cookie是否会过期?尽管用户仍然经过身份验证? 编辑 我错过了另一件事我已经在IIS中将应用程序池标识设置为网络服务 解决方法
是的,用户仍将过期,并且他/她将无权使用服务器上的可用资源.您正在使用Forms Authentication Cookie,它是FormsAuthentication Ticket的简单容器.
由于您的票证是非持久性的,这将导致您的“cookie”到期,这会将用户重定向到LOGIN PAGE.请注意,这只处理“身份验证”,不要与Session混淆. 您可能会有会话“过期”,但用户仍然经过身份验证,这可能是一个问题. 因此,要直接回答您的问题,“用户身份验证”将过期,并且他/她将被重定向到登录页面,在登录页面上将创建一个新的cookie,这将创建另一个“会话”对象.超时前一个将过期. 建议:使“Web.config”中的表单超时小于Session.对于与Auth / Security相关的任何Auth / Security,不要建立对Session的依赖;这两个是不同的容器,应该这样对待. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- ASP.NET Core / MVC 6 ViewModel中的依赖注入(DI)
- ASP.NET新手:Webforms与MVC2
- asp.net – 如何使用iTextSharp打印网格视图
- asp.net-mvc – 如何避免重复授权代码逻辑
- asp.net-mvc – 为什么Nant不与TeamCity合作?
- 如何以编程方式找到一个ASP.NET App_Data文件夹路径
- asp.net-mvc – 应用程序池回收导致非常长的响应时间
- 在asp.net中删除字符串变量中的整数值
- asp.net-mvc – 需要使用Web应用程序和Web API进行双重身份
- asp.net – 在没有完全回发的情况下,在AJAX更新面板中上传文