【问题标题】:Browser Hangs when receive WWW-Authenticate: Negotiate浏览器在收到 WWW-Authenticate: Negotiate 时挂起
【发布时间】:2017-07-14 02:20:03
【问题描述】:

当 Windows7 上的 IE 或 Chrome 收到带有“WWW-Authenticate: Negotiate”标头的响应时,它会挂起几秒钟。

我假设它正在向 KDC 发出网络请求并且请求超时。不过这可能是错误的假设。

服务器keytab 确定浏览器查询哪个KDC?

有什么办法可以调试吗?

谢谢!

【问题讨论】:

    标签: kerberos spnego


    【解决方案1】:

    要回答您的第一个问题,请避免假设查找 KDC 超时 - 只有网络捕获才能告诉您这一点。虽然它实际上可能正在这样做,但它也可能会故障转移到使用 NTLM,然后因为 Kerberos 在某处被破坏而成功。

    要回答您的第二个问题,keytab 不会确定浏览器查询哪个 KDC。 keytab 里面没有任何东西可以做到这一点。我在此答案的底部为您放置了示例 keytab 的图像。现在,被查询的 KDC 由 DNS 控制。该过程只会被 C:\Windows\krb5.ini 中设置的值覆盖 - 如果该文件存在 - 默认情况下它在 Windows 上不存在。要回答您的最后一个问题,您可以使用 Wireshark 捕获进行调试,在 WireShark 搜索字段中过滤“kerberos”以查看 Kerberos 流量可能在做什么或不做什么。这将告诉你所有你需要知道的。

    【讨论】:

    • 非常感谢!浏览了您的所有建议,但 Wireshark 完成了这项工作。我发现 KRB5 发送了对错误用户名的请求,然后是大量使用相同错误名称的 LDAP 搜索。我曾经使用没有 krb 名称的 samba 连接到同一个应用服务器的共享驱动器,并且 Windows 以某种方式记住了它。反正问题已经解决了!
    • 干得好。谢谢你回来。
    猜你喜欢
    • 2012-12-20
    • 1970-01-01
    • 2013-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-03
    相关资源
    最近更新 更多