微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Win Server 2008 r2上的IIS 7.5使用AppPoolCredentials

我正在尝试为IIS 7.5中的新网站设置 Windows身份验证.
我为站点启用了Windows身份验证模块,并禁用了所有其他身份验证类型(如匿名,基本等).
站点的应用程序池在自定义标识下运行,已为其正确设置了SPN和主机标头.
在尝试通过浏览器访问网站下托管的任何内容(如文本文件)时,出现401.2错误.
我按照 this suggestion并将useAppPoolCredentials属性添加到applicationHost.config,我可以使用Windows身份验证访问该资源.

然后我删除属性并再次保存了applicationHost.config,有效地撤消了我的更改,我仍然能够访问资源.这给了什么?
有人可以帮我理解这种行为吗?

此外,在Win Server 2008R2上的IIS 7.5的一个特定安装中,我注意到对站点(或应用程序)的认配置的任何更改都会导致IIS在站点/应用程序的根目录下自动生成Web.config文件.是否有设置启用此项而不必直接更新applicationHost.config

编辑浏览器正在缓存响应,因此撤消更改和保存文件似乎没有任何区别.所以我现在唯一的问题是与Web.config生成有关

关于如何确保将配置更改持久保存到站点的web.config而不是applicationHost.config的第二个问题,可以通过功能委派来控制.

如果导航到IIS管理器的计算机节点,您将看到一个名为“功能委派”的图标:

启动此IIS“applet”,您将看到一系列可以将其配置委派给web.config功能.

标记为“读/写”的设置通常会将其设置写入web.config文件.标记为“只读”的设置通常将其设置写入applicationHost.config,并且无法在web.config文件中覆盖.

正如它发生的那样< windowsAuthentication>配置可以委托给web.config文件.

小问题:

并非所有小程序都可以显示您可以配置的所有设置.正如它所发生的那样一个很好的例子是< windowsAuthentication> useAppPoolCredentials属性.它在认证小程序中无处可见,即使在高级设置下也是如此.

但是,您可以通过配置编辑器获取此值(以及其他所有内容).如果您导航到IIS管理器左侧窗格中的网站节点,您将在管理下看到此图标:

如果启动配置编辑器,您将看到一个包含各种设置树的下拉列表:

如果我们选择/system.webServer/security/authentication/windowsAuthentication节点,我们将看到可以更改的全部设置.在这里,我们可以看到我们感兴趣的设置(useAppPoolCredentials):

您可以从config部分树下拉列表旁边的From:下拉列表中选择是在web.config中还是在applicationHost.config中配置网站的值:

如果某个部分尚未在web.config中委托为读/写,那么您将看到以下内容

我们收到警告,说明此特定功能已锁定,所有设置都显示为灰色并已禁用,并且有一个挂锁表示此功能的子设置也已锁定.

最后,并非所有设置都可以委派,例如站点绑定,应用程序池,虚拟目录.

原文地址:https://www.jb51.cc/windows/368260.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐