【问题标题】:why does IIS ignore web.config when it comes to <authentication mode="Windows"/>?当涉及到 <authentication mode="Windows"/> 时,为什么 IIS 会忽略 web.config?
【发布时间】:2011-04-20 23:24:18
【问题描述】:

我正在使用 IIS 并尝试部署需要身份验证模式="Windows" 的 Web 应用程序。

但是,在我尝试过的每台机器上,简单地部署 Web 应用程序是行不通的。 web.config 说

<authentication mode="Windows">

但在 IIS 管理器下它说

Windows Authentication Disabled

所以我保存了我的 web.config 的备份,然后我使用 IIS 来启用 Windows 身份验证。完成此操作后,我的应用程序工作正常但 web.config 文件未更改

我必须为每个客户端自动创建此 Web 应用程序的新实例。要求 IT 人员手动访问每个 web 应用程序并打开此功能是行不通的。我需要 web.config 文件才能工作,或者我需要知道我必须更改哪些配置文件才能使其工作。我花了几天时间试图解决这个问题,但没有成功。

非常感谢任何帮助。

【问题讨论】:

  • 你能说得更具体点吗? IIS6, IIS7 ?

标签: iis authentication


【解决方案1】:

我假设您正在针对某些 Windows 用户帐户对用户进行身份验证?我还假设您希望浏览器弹出用户名和密码挑战?

这里有两种不同的东西在起作用。

web.config 中的 &lt;authentication mode="Windows"/&gt; 设置只是告诉 ASP.NET 根据 IIS 提供的凭据而不是表单身份验证(或其他提供程序)提供的凭据来构造身份。它不是由 IIS 控制的设置,并且 IIS 无法查看此设置。在 web.config 中更改此设置也不会更改 IIS 的身份验证设置。

当您更改 IIS MMC 中的 Windows 身份验证设置时,您正在更改 IIS6 元数据库中的设置,或者如果您正在使用 IIS7,则在 system.webServer/security/authentication 部分(在您的 web.config 或可能在 applicationHost.config 中,具体取决于设置已更改)。

所以除非你(你知道这一点):

  • 在 IIS MMC 中从站点移除匿名身份验证,或移除匿名帐户对站点文件和文件夹的 NTFS 权限

  • 在 IIS MMC 中指定 Windows 身份验证

无论system.web/authentication 中的设置如何,您都不会在浏览器中收到用户名和密码质询。

【讨论】:

  • 这非常有帮助。只是关键字“applicationHost.config”是我最需要的。后人的其他一些 cmets:从这个链接我能够找到有关如何配置我认为应该在 web.config 中的东西的信息:iis.net/ConfigReference 但是起初看起来我没有任何这些配置文件,因为我使用 TotalCommander。显然,您需要具有管理员权限才能查看目录,并且只有在使用 64 位程序(如果在 64 位机器上)查看文件时才能查看文件,谢谢!
  • 我觉得奇怪的是,您可以在 IIS 管理器 GUI 中启用 Windows 身份验证并要求特定的 Windows 组(ASP.Net 授权规则),但似乎有 no 设置在 GUI 中设置 web.config 身份验证模式?如果我在这里错了,请有人纠正我。
  • @Mister_Tom 你是指system.web 还是system.webServer?如果您的意思是system.web,那么是的,正确的,这似乎是一个疏忽,但即便如此,并非所有 IIS 特定配置设置都有 IIS MMC 配置应用程序,并且有些不会显示所有配置选项。也就是说,您可以使用 IIS 管理包中提供的通用配置编辑器来配置这些 隐藏 功能/选项:iis.net/learn/web-hosting/web-server-for-shared-hosting/…
  • @Kev 是的,我的意思是 system.web - 奇怪的是 IIS 6 中的 ASP.Net GUI 配置工具允许更改身份验证模式,但从 IIS 7 开始,它似乎从 GUI 工具中消失了.我一定会查看配置编辑器 - 感谢您的提示。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-11-11
  • 2011-09-23
  • 2011-02-05
  • 2012-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多