绕过控制器MVC上的Windows身份验证

时间:2015-05-22 07:03:36

标签: c# asp.net asp.net-mvc asp.net-mvc-4 asp.net-mvc-5

我在我的mvc web应用程序上启用了Windows身份验证,但我需要在第一页上绕过它(所以任何人都可以访问HomeController \ Index)。如何实现?

这是我的身份验证逻辑:

<location path="~/DashboardController" />
  <system.web>
    <compilation debug="true" targetFramework="4.5" />
    <httpRuntime targetFramework="4.5" />
    <authentication mode="Windows" />
    <authorization>
      <allow users="Domain\MyUserName"/>
      <deny users="*" />
    </authorization>
  </system.web>

我尝试使用[Authorize][Authorize(Users="*")]修改默认仪表板控制器操作但是当我尝试访问主页时,浏览器会显示输入凭据的提示

1 个答案:

答案 0 :(得分:2)

base=${CMD#http://sub.domain.com/some/} 属性添加到Index方法

[AllowAnonymous]

或者如果你不想使用属性,你可以通过web.config来允许它。 (我尽可能避免使用web.config并使用属性。See this blog from Jon Galloway for more info

[AllowAnonymous]
public ActionResult Index()
{
    ViewBag.Message = "Welcome to ASP.NET MVC!";

    return View();
}