刚将一个站点从Windows 2003移到Windows 2012,并且很难限制对管理目录的访问。在旧版本的IIS中,我所需要做的就是禁用对该文件夹的anon访问。在IIS8中,我有:
这给了我一个警报,上面写着:
基于挑战的认证和基于登录重定向的身份验证不能同时使用.
我觉得完全合理。但是,我试图禁用“表单身份验证”,下一个警报说:
此功能已锁定,且为只读功能。
如何强制ASP.NET站点的管理目录(只有该目录)需要?
发布于 2014-08-05 20:05:10
如果您的文件夹位于同一个IIS web应用程序下(显然是这样),则不能使用两种不同的身份验证。您需要有两个独立的IIS应用程序或子应用程序(我认为这也意味着虚拟目录)。
换句话说,在IIS 7+中,不能同时为同一个IIS应用程序启用with和Forms,托管管道模式设置为Integrated
在搜索我的书签之后更新:
我尝试了本文中的想法,但我无法让它发挥作用:然而,http://mvolo.com/iis-70-twolevel-authentication-with-forms-authentication-and-windows-authentication/可能会给您提供更多的洞察力或想法。
我的场景更简单,我需要Windows并为整个应用程序编制表单。
我也有一个管理部分,我最终把管理放在一个完全独立的网络应用程序,运行在一个子域。这两个应用程序都是在IIS7.5中以集成模式运行的(启用了管理windows auth,其余的应用程序都启用了Forms )。
发布于 2014-08-12 15:14:50
我相信你只需要使你的管理文件夹是自己的应用程序根,然后你可以做你想做的。
一个图片,其中管理员不是它自己的应用程序:

制作自己的应用程序:

https://stackoverflow.com/questions/25084471
复制相似问题