我正在尝试在MVC 2.0应用上设置Windows身份验证。一切都在配置中,现在我基本上只想允许经过身份验证的用户并拒绝匿名用户:
<authentication mode="Windows" />
<authorization>
<deny users="?"/>
<allow users="*"/>
</authorization>
在IIS网站上,我已禁用所有其他身份验证类型,但Windows身份验证。
现在问题是: 当我将其设置为IIS中“默认网站”下的应用程序时,一切都按预期工作;系统会提示用户输入凭据,并根据Web服务器上的帐户进行身份验证。
但当我在同一个IIS根目录上创建新网站时,身份验证不再有效。应用程序和网站都在同一个应用程序池中的同一个框上运行,并且引用磁盘上的相同物理位置。
我真的没有想法,非常感谢任何建议。
答案 0 :(得分:6)
如果您在hosts文件中使用虚拟主机名进行设置,则IIS的安全功能将阻止身份验证成功。
您可能需要查阅以下网址,其中包含将主机名添加到白名单的说明,或禁用该特定安全功能的说明: