IE11一直要求在Intranet上提供凭据

时间:2014-10-07 07:22:58

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

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

在测试服务器上,应用程序(带有SignalR和WebAPI的ASP.NET MVC)使用的URL虽然位于相同的IP范围内,但不会自动识别为Intranet站点。因此,我已将该网站明确地添加到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安全性。

目前我们完全没有想法。

1 个答案:

答案 0 :(得分:0)

另外两份清单:

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

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