Windows集成身份验证不适用于首页加载

时间:2015-03-02 17:26:10

标签: c# asp.net asp.net-mvc-4 authentication windows-integrated-auth

我在IIS上部署了一个ASP.NET MVC4网站,启用了Windows身份验证。我的配置文件有以下设置:

<authentication mode="Windows" />
<authorization>
    <deny users="?" />
</authorization>

我的理解是,这将允许我进行身份验证,而无需输入凭据;即内联网站点。

除了第一页加载外,它按预期工作。当我第一次访问该网站时,我被引导到以下URL:

  

http://localhost/SandboxWebsite/login.aspx?ReturnUrl=%2fSandboxWebsite

这显然是一个要求凭据的页面。当我再次导航到http://localhost/SandboxWebsite/时,我会自动进行身份验证,而无需输入任何凭据。

为什么会发生这种情况,我该如何预防呢?

2 个答案:

答案 0 :(得分:3)

问题在于,虽然匿名访问被禁用为设置,但没有授权规则来拒绝匿名用户。为什么这会将我重定向到Login.aspx我不知道,但我通过添加以下规则来修复它。

IIS&gt;我的网站&gt; .NET授权规则

enter image description here

答案 1 :(得分:1)

约翰,

这是一个很长的镜头,但您是否尝试使用LocalHost以外的地址访问该网站?可能是您的ASP.NET MVC4网站由于其设置方式而需要特定的域名/计算机名称或IP地址。

您可以更改主机文件以对其进行测试。

希望这会有所帮助。 多吉