MVC3多区域不同的认证方法

时间:2012-11-13 15:28:12

标签: asp.net-mvc-3 iis-7.5 windows-authentication

我的Web应用程序具有以下结构:

enter image description here

在我的根网址配置中,而不是在Regions / Admin / Web.Config中,我有以下内容:

  <location path="Areas/Admin">
    <system.web>
      <authentication mode="Windows"></authentication>
      <authorization>
        <deny users="*"/>
      </authorization>
    </system.web>
  </location>

我有自己的身份验证工作在网站的主根上使用[Authorize]标记没有问题。

现在,对于区域/管理员,我想使用Windows身份验证。

在IIS(Server 2008 R2计算机)中,我将Admin文件夹配置为应用程序:

enter image description here

当我单击IIS中的区域/管理员时,在身份验证下,我禁用了匿名,并启用了Windows身份验证。

但是,当我尝试通过网站访问此文件夹时,它不会提示我输入我的域用户名/密码。它只是加载页面。

如果我访问www.website.com/Areas/Admin,它会提示我输入用户名/密码。但我需要它来使用AreaRegistration,并在我访问www.website.com/Admin时提示它。

我已经能够将整个网站配置为Windows身份验证,这就像魅力一样。

有什么想法让我朝着正确的方向前进?或者,如果您需要更多信息,请给我留言,我将非常乐意为您提供帮助。

1 个答案:

答案 0 :(得分:1)

通过研究,我发现实现这项工作的唯一方法是创建第二个“管理”网站,该网站作为主网站下的应用程序运行。这样做,允许我在该网站上设置权限。