通过Internet进行Kerberos身份验证

时间:2015-01-27 10:21:58

标签: windows iis kerberos delegation

我们目前面临一个有关Kerberos身份验证的有趣问题。

目标是通过互联网发布网站。需要在Active Directory环境中由Kerberos端到端地处理身份验证。但是,客户端PC可能会或可能不会加入域。网站的文件位于文件共享上,应使用模拟访问。 Web服务器本身是主域控制器。

景观的示意图如下所示:

问题:

IIS设置为仅允许协商:kerberos Windows身份验证。当客户端PC位于本地网络之外时,这将在浏览器中提示凭证对话框。域名凭证不会通过互联网接受,客户端的事件查看器显示

  

Kerberos客户端找不到域的域控制器   domain.tld:0xC000005E。 Kerberos身份验证需要通信   使用域控制器。

这是正确的,因为无法通过互联网访问域名的KDC。据我们所知,Kerberos身份验证应该可以通过直接客户端访问KDC,因为Web服务器被委派为代表最终用户进行身份验证。

我们的主要假设:

  • Kerberos可用作身份验证方法,无需从客户端PC直接访问KDC。

我们尝试和/或相关的事情:

  • Sub.domain.tld位于Internet Explorer的可信站点
  • 几个SPN配置
  • 不同的应用程序池标识(域帐户,默认帐户,系统,网络)
  • 禁用loopbackcheck
  • 同一时区/同一时间的机器
  • 为Web服务器启用委派
  • 使用不同的计算机在不同的域上重现(此域具有用于Web服务器和域控制器的单独计算机)

作为一个注释,NTLM是不可能的,因为它缺乏对模拟的支持,并且不需要基本身份验证,因为它将用户凭据存储在Web服务器上。

参考文献:

  • www.adopenstatic.com/cs/blogs/ken/archive/2007/07/19/8460.aspx
  • www.adopenstatic.com/cs/blogs/ken/archive/2007/01/27/1282.aspx
  • windowsitpro.com/security/kerberos-delegation-and-troubleshooting
  • technet.microsoft.com/en-us/library/cc995228.aspx
  • community.dynamics.com/ax/b/axsolutionsmonkey/archive/2009/05/20/kerberos-configuration-for-clients-accessing-role-center-from-outside-of-intranet.aspx
  • dirteam.com/sander/2012/09/05/new-features-in-active-directory-domain-services-in-windows-server-2012-part-10-improved-kcd /

0 个答案:

没有答案