asp.net – HttpContext.Current.User为空,即使Windows身份验证
发布时间:2020-12-15 23:39:46 所属栏目:asp.Net 来源:网络整理
导读:在Windows Server 2008中的IIS7中,我有一个虚拟目录,具有匿名访问权限和Windows身份验证.在我的web.config中,我有: authentication mode="Windows"/authorization allow roles="MYGROUP"/ deny users="*"//authorization 和 system.webServer !-- IIS7 secu
在Windows Server 2008中的IIS7中,我有一个虚拟目录,具有匿名访问权限和Windows身份验证.在我的web.config中,我有:
<authentication mode="Windows"/> <authorization> <allow roles="MYGROUP"/> <deny users="*"/> </authorization> 和 <system.webServer> <!-- IIS7 security settings --> <security> <authorization> <add accessType="Deny" users="*"/> <add accessType="Allow" roles="MYGROUP"/> </authorization> </security> </system.webServer> 然而当我从IE访问default.aspx并在Global.asax.vb Application_AuthenticateRequest()中设置一个断点时,我得到一个null HttpContext.Current.User,我希望自己的身份.几乎就像匿名访问一样? 我可以如何解决这个问题?一切似乎都在IIS6中运行. 解决方法
将应用程序池移回古典的答案只是拖延问题.
而是将应用程序池单独放置,并将您的验证检查从Application_AuthenticateRequest()移动到管道中的下一个函数: Application_AuthorizeRequest(object sender,EventArgs e) 到那时,集成的应用程序池已经完成了Windows身份验证,允许您不从HttpContext.Current.User接收null. 可以在标题Runtime Fidelity(向下))找到流水线here(由CarlosAg提供的链接). 管道的可视化可以在asp website message lifecycle page找到.在控制器部分检查两个绿色框“认证过滤器”和“授权过滤器”.这些是你正在搞乱的地方. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- ASP.NET Web App和ASP.NET MVC 3 Empty Web App之
- asp.net mvc c#随机生成相同的数字
- asp.net-mvc – RazorEngine:不能使用Html.Raw
- asp.net – 找不到aspnet_regiis部分
- asp.net – 如何获取当前页面的HTML?
- Asp.net UserControl LoadControl问题
- 一步一步创建ASP.NET MVC5程序[Repository+Autof
- asp.net – 如何在加载/性能测试期间找到IIS要模
- asp.net-mvc-3 – 为mvc创建一个html帮助器
- asp.net-mvc – MVC 4:强制ScriptBundle返回Jav
热点阅读