IE11无法知道某人何时使用表单身份验证登录。
此.NET命令在IE10中工作,在与IE11的兼容模式下工作:
FormsAuthentication.SetAuthCookie(“Test”,false);
IE11向User.Identity.IsAuthenticated返回false。它确实存储了身份验证cookie,但它没有从身份验证cookie中加载User.Identity。
有没有人知道IE11是否放弃了对User.Identity的支持,或者我是否需要更新IIS来识别IE11?
更新:问题仅出在.NET 4.0网站上。任何.NET 3.51或.NET 2.0站点都可以正常工作。
我的解决方案是在服务器上安装.NET 4.5 http://www.microsoft.com/en-us/download/details.aspx?id=30653
答案 0 :(得分:3)
我怀疑这个问题与ASP .NET v4如何处理IE11的cookie有关。 您是否尝试在web.config中的forms元素中设置cookieless =“UseCookies”属性?
请阅读此处了解更多信息:
http://gyorgybalassy.wordpress.com/2013/09/23/aspnet-40-forms-authentication-issues-with-ie11/
How did harmless crawler bypass WebForms authentication, and hijack a user's session?
答案 1 :(得分:1)
基于此问题找到了解决方案“Internet Explorer 11未在某些站点上进行身份验证” http://answers.microsoft.com/en-us/ie/forum/ie11_pr-windows8_1_pr/internet-explorer-11-does-not-authenticates-on/47382440-71e5-4a66-ab41-1c070abbd3e5
虽然确切的解决方案对我不起作用,但它让我朝着正确的方向前进。那就是在服务器上查看.NET。似乎有一些.NET更新跟上了IE11。
我的解决方案是在服务器上安装.NET 4.5 http://www.microsoft.com/en-us/download/details.aspx?id=30653