ASP.Net Forms身份验证在10分钟后注销用户
|
我遇到了一个非常糟糕的问题,无论我尝试什么,用户都会在10分钟后退出. 我正在使用运行在作为虚拟服务器的Server 2003 R2 Standard Edition上的IIS 6.0上运行的ASP.Net 2.0以及所有适用的更新和.Net 3.5 SP1. 客户端是Internet Explorer 7.0 以下是web.config设置: <!-- Authentication Mode --> <authentication mode="Forms"> <forms name=".RecipeViewer" timeout="240" /> </authentication> 以下是用于设置授权cookie的代码: Private Sub SetCookie(userName)
' Use security system to set the UserID within a client-side Cookie
Dim ticket As New FormsAuthenticationTicket(1,userName,DateTime.Now,DateTime.Now.Add(Me.GetFormsAuthSettings.Forms.Timeout),True,String.Empty,FormsAuthentication.FormsCookiePath)
Dim hash As String = FormsAuthentication.Encrypt(ticket)
Dim cookie As New HttpCookie(FormsAuthentication.FormsCookieName,hash)
cookie.HttpOnly = True
If (ticket.IsPersistent) Then
cookie.Expires = ticket.Expiration
End If
Response.Cookies.Add(cookie)
' Redirect browser back to originating page
Response.Redirect(Request.ApplicationPath)
End Sub
Private Function GetFormsAuthSettings() As System.Web.Configuration.AuthenticationSection
Return DirectCast(System.Configuration.ConfigurationManager.GetSection("system.web/authentication"),System.Web.Configuration.AuthenticationSection)
End Function
我之前使用的是FormsAuthentication.SetAuthCookie,甚至尝试使用FormsAuthentication.RedirectFromLoginPage方法,但这些方法都有相同的结果,这就是为什么我最终做了内部完成的硬cookie实现(通过在Reflector中查看) FormsAuthentication类可以. 该问题无法在Visual Studio 2008 asp.net托管环境或IIS 7.0中重现. 编辑:启用Cookie,即使托管网站已添加为可信站点. 编辑:谷歌Chrome和Firefox没有这个问题. 编辑:已验证目标计算机上的Cookie设置为根据设置4小时后过期(超时= 240分钟). 编辑:众议院说,每个人都撒谎.用户实际上没有测试新的代码库,并且正在进行预先设想的概念,即该软件仍然被破坏.感谢所有在本主题中回复的人. 没有关闭它不再相关,但保持它可以帮助人们解决问题,因为在这个问题中有一些非常好的故障排除技术. 解决方法它也可能(已经)机床密钥未设置,因此每次初始化应用程序时都会随机生成(这意味着加密的身份验证票证将使用新密钥加密).我使用一个站点为我的应用程序生成一个新的机器密钥并将其粘贴到web.config中: http://www.orcsweb.com/articles/aspnetmachinekey.aspx <?xml version="1.0"?>
<configuration>
<appSettings/>
<connectionStrings/>
<system.web>
<machineKey validationKey='FED01BCB246D3477F5854D60388A701508AD1DF9099BD3CAC3CA4DAF55F7524B8DD3FA03133BBCA381BC1CD639730445968DFA633A97911187EF187456D692F4' decryptionKey='861E7DF7C2D04297EEFAD47FF3B95F54E87CF28D6C2753D8' validation='SHA1'/>
</system.web>
</configuration> (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 制作打印机友好的ASP.NET页面的最佳方法?
- asp.net-core – 从与xproj相同的解决方案引用csproj
- Asp.Net Mvc突出显示当前页面链接技术?
- asp.net vb用户控件在调用页面上引发一个事件
- asp.net-mvc – 我如何编写一个MVC3 / 4应用程序,它既可以作
- asp.net-mvc – 将Elmah与WebApi一起使用时会记录两次错误
- 如何获取基于PhoneGap的应用程序来对ASP.NET Forms身份验证
- asp.net-mvc – TempData:安全吗?
- 使用HtmlAnchor或ASP.NET HyperLink作为导航页内命名锚点的
- asp.net – 为什么有2个web.config文件
- asp.net-mvc-3 – 检查ViewBag是否具有属性,以有
- C# 中的委托和事件 [转载]
- ASP.NET SQL成员资格表
- asp.net – 在没有Global.asax的情况下处理应用程
- asp.net-core – .Net CORE Dapper连接字符串?
- asp.net-mvc – 如何阻止URL.Action包含参数?
- asp.net-mvc – Rotativa / Wkhtmltopdf图像无法
- asp.net – FormsAuthentication.GetRedirectUrl
- asp.net-mvc – EF映射对象不兼容的数据读取器异
- asp.net-mvc – 如何删除MVC网站中的所有当前域名
