Asp.net IIS 7.5中的Windows身份验证问题
我是IIS7.5新手,我正在尝试创建一个使用Windows身份验证的站点。它是一个ASP.NET 4.0应用程序,设置为默认网站下的应用程序,并运行ASP.NET 4应用程序池。应用程序是在禁用匿名身份验证和启用Windows身份验证的情况下设置的 站点未正确验证-我可以在事件日志中看到错误(这是一个Asp.net IIS 7.5中的Windows身份验证问题,asp.net,iis-7,iis-7.5,windows-authentication,Asp.net,Iis 7,Iis 7.5,Windows Authentication,我是IIS7.5新手,我正在尝试创建一个使用Windows身份验证的站点。它是一个ASP.NET 4.0应用程序,设置为默认网站下的应用程序,并运行ASP.NET 4应用程序池。应用程序是在禁用匿名身份验证和启用Windows身份验证的情况下设置的 站点未正确验证-我可以在事件日志中看到错误(这是一个空引用错误,与使用上下文的某些代码有关。用户),详细信息显示IsAuthenticated=False,而用户为空 我在我的Web.config中的下设置了Authentication Mode=W
空引用
错误,与使用上下文的某些代码有关。用户
),详细信息显示IsAuthenticated=False
,而用户
为空
我在我的Web.config中的
下设置了Authentication Mode=Windows
,并尝试了各种其他配置设置,但都没有成功
我尝试使用ASP.NET经典应用程序池,但出现错误
处理程序“ExtensionlessUrl-ISAPI-4.0_64位”的模块不正确
其模块列表中的“IsapiModule”
如果可能的话,我更愿意使用ASP.NET 4应用程序池让它工作。有人能告诉我需要做什么吗?看看
唯一的区别是,IIS 7.5
applicationhost.config
文件位于%systemroot%\System32\inetsrv\config\applicationhost.config
对不起,我找到答案时忘记发布了。事实上,身份验证配置并没有什么问题,这与我在Global.asax中引用Context.User太早有关
在新的集成模式下,身份验证的工作方式与经典模式不同,在Global.asax中的应用程序_AuthenticateRequest事件中,身份验证尚未在上下文中发生。用户为空,因此我得到了异常,日志显示IsAuthenticated为false。我将调用Context.User的代码行移动到应用程序\u PostAuthenticateRequest中,它现在正在工作。您应该将此标记为答案,并阅读本文以了解有关IIS集成管道更改的更多信息,