【问题标题】:IE11 keeps asking for credentials on intranetIE11 不断在 Intranet 上要求凭据
【发布时间】:2014-12-01 13:31:32
【问题描述】:

我们正在创建一个 Intranet 站点并希望使用 SSO。然而问题是,Internet Explorer (11) 不断要求提供凭据。通过指定用户名和密码,我们可以访问它。然后可以毫无问题地使用 Intranet 应用程序。但是,当 Internet Explorer 关闭时,它会再次要求提供凭据。问题出现在测试机器(在域中运行)以及我也用来开发的家里的笔记本电脑上。我使用远程桌面访问测试服务器,然后在运行站点的同一台机器上测试站点,即运行 IIS 8.5 的 Windows 2012R2。

在测试服务器上,应用程序(带有 SignalR 和 WebAPI 的 ASP.NET MVC)正在使用一个不会被自动识别为 Intranet 站点的 URL,尽管它位于相同的 IP 范围内。因此,我已在 IE 的设置中将该站点明确添加到 Intranet 区域。

当我然后右键单击该站点并请求属性时,我可以看到它位于 Intranet 区域中。这是我在这些情况下能找到的解决方案,但对我们来说还有其他事情要做。

这是 web.config 的 system.web 部分:

<system.web>
  <compilation debug="true" targetFramework="4.5.1" />
  <httpRuntime targetFramework="4.5" />
  <authentication mode="Windows" />
  <authorization>
    <deny users="?" />
  </authorization>
</system.web>

在 IIS 中,我尝试启用 Windows 身份验证和摘要,也只是其中之一。其他身份验证选项被禁用,包括匿名身份验证。

我还将该站点添加到没有帮助的受信任区域。还更改了区域设置(对于 Intranet 和受信任)以执行“使用当前用户名和密码自动登录”,但这也无济于事(我不明白设置自动登录仅在 Intranet 区域中,因为它似乎上述设置的区域特定重复设置,但可以)。我还检查了高级设置以确保启用了集成 Windows 安全性。

目前我们完全没有想法。

【问题讨论】:

    标签: asp.net asp.net-mvc authentication single-sign-on windows-authentication


    【解决方案1】:

    你的清单还有两个:

    • 确保您已禁用匿名身份验证
    • 确保可以从客户端 PC 和托管 Web 应用程序的 IIS 访问域控制器。域控制器可能无法将应用程序服务器识别为来自同一域。

    http://www.wiktorzychla.com/2012/06/iis-75-integrated-security-with-no.html

    【讨论】:

    • 是否需要域控制器,因为我的开发家用笔记本电脑上没有在域中运行,也有同样的问题。 IIS 中也禁用了匿名访问。
    • 我怀疑客户端机器实现了 NTLM/Kerberos 的服务器部分。我相信域控制器是必须的。
    • @RonDeijkers 你能解决这个问题吗?我遇到了同样的问题,还没有找到解决办法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-11
    • 1970-01-01
    • 2019-09-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多