繁体   English   中英

在同一台服务器上具有Windows身份验证的IIS反向代理获得访问被拒绝

[英]IIS reverse proxy with windows authentication on same server getting access denied

我在这里查看了一些其他的带有Windows身份验证帖子的IIS反向代理,它们似乎不是我要尝试的。 希望有人能够帮助或发现我没有在做什么或做错了什么。

我有一台服务器,该服务器的网站在端口80上运行,我需要在该网站上展示许多其他Web应用程序。 我无法创建新的主机名,因此我在指向我的Web应用程序的站点中创建了一个虚拟目录,但是根站点正在使用.net2.0应用程序池,该池必须保持为.net2.0,而我的ASP.NET MVC应用程序都需要4.0个应用程序池。 根据web.config继承问题,这不起作用,并且我无法更改根目录中的web.config以忽略传播到子级web.configs-到目前为止,对于我来说? ;-)

简而言之,我现在在我的端口80站点中有一个虚拟目录,该目录充当对端口81上另一个站点的反向代理,对于匿名连接来说,这很好用。 我已经用一个简单的HTML页面对其进行了测试,并且可以访问它,并且URL重写正在HTML页面中的链接上进行,到目前为止一切正常。

现在,我需要在端口81站点上启用Windows身份验证,因此我按照与MSDN站点上这些链接类似的说明,为我正在使用的域帐户(DOMAIN \\ testaccount)和其他IIS配置的SPN进行配置:

链接1 链接2

问题是我现在得到的只是很好的旧错误消息:

访问被拒绝。 说明:访问服务于此请求所需的资源时发生错误。 可能未将服务器配置为访问请求的URL。

错误消息401.2 ::未经授权:由于服务器配置,登录失败。 根据您提供的凭据和Web服务器上启用的身份验证方法,验证您是否有权查看此目录或页面。 请与Web服务器的管理员联系以获取其他帮助。

-------------------------------------------------- ------------------------------版本信息:Microsoft .NET Framework版本:4.0.30319; ASP.NET版本:4.0.30319.34280

我尝试创建一个测试aspx页面,该页面仅将服务器变量输出到响应,但即使这样也不起作用。

我找不到其他尝试,起初我以为必须对Kerberos进行排序才能将详细信息从虚拟目录传递到端口81上的站点,但是MSDN帖子说这不是必需的,只是SPN。

有任何想法吗?

事实证明这很简单,我因为不检查而变得愚蠢! :-)

我花了几天的时间来弄清楚为什么它不起作用,不确定为什么我没有更早尝试,但是我更改了正在运行的应用程序池以使用.net2.0,然后我的测试aspx页面起作用了!

如果您在根服务器节点上单击“ ISAPI和CGI限制”功能设置下将.net4.0 DLL设置为“不允许”,但将.net2.0 DLL设置为“允许”的根服务器节点本身,则会在IIS管理器中出现! 我刚刚启用了.net4.0,将应用程序池改回了,然后它就起作用了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM