我正在使用IIS,并试图部署一个需要身份验证mode="Windows“的web应用程序。
然而,在我试用的每台机器上,简单地部署web应用程序都不起作用。web.config说
<authentication mode="Windows">但在IIS管理器下面写着
Windows Authentication Disabled因此,我保存了web.config的备份,然后使用IIS启用windows身份验证。在我这样做之后,我的应用程序可以很好地工作,但是web.config文件没有改变。
我必须为每个客户自动创建这个web应用程序的新实例。要求IT人员手动转到每个guy应用程序并打开这个功能是不可能的。我需要web.config文件才能工作,或者我需要知道我必须更改哪个配置文件才能工作。我花了好几天的时间试图解决这个问题,但没有成功。
任何帮助都是非常感谢的。
发布于 2011-04-21 11:46:40
我假定您是在根据某些windows用户帐户对用户进行身份验证?我还假设您希望浏览器弹出用户名和密码挑战?
这里有两种不同的工作方式。
<authentication mode="Windows"/>设置在web.config中只是告诉ASP.NET根据IIS提供的凭据而不是表单身份验证(或其他提供程序)来构造身份。它不是IIS控制的设置,IIS没有此设置的可见性。此外,在web.config中更改此设置不会更改IIS的身份验证设置。
当您在IIS7中更改Windows身份验证设置时,您正在更改IIS6元数据库中的设置,或者如果您正在使用IIS7,则更改system.webServer/security/authentication部分(在web.config中或可能在applicationHost.config中,这取决于该设置是如何更改的)。
所以除非你(你知道):
folders
上的匿名帐户和IIS中的
无论system.web/authentication中的设置是什么,您都不会在浏览器中获得用户名和密码的挑战。
https://stackoverflow.com/questions/5737772
复制相似问题