测试网站是否使用 Kerberos 身份验证

发布于 2024-07-09 12:51:48 字数 45 浏览 8 评论 0原文

如何检查 IIS 网站是否成功使用 Kerberos 并且不依赖 NTLM?

How do you go about checking that an IIS website is successfully using Kerberos and not falling back on NTLM?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

装纯掩盖桑 2024-07-16 12:51:49

好吧,Negotiate 也可以是 Kerberos,因为它是 Kerberos 和 NTLM 的包装。 正如其他人所说,Wireshark(或网络监视器)和安全事件日志不会欺骗您。

Well, Negotiate can also be Kerberos, because it is a wrapper over Kerberos and NTLM. Like other guys said, Wireshark (or Network Monitor) and Security event log will not cheat you.

掐死时间 2024-07-16 12:51:48

我发现在使用 Kerberos 的代码中测试的一种方法是 NTLM 的 HTTP_AUTHORIZATION 标头始终以以下内容开头:

Negotiate TlRMTVNTUA

如果标头不以文本开头,则浏览器将使用 Kerberos 进行身份验证。

One way I found to test in code that you are using Kerberos is that that the HTTP_AUTHORIZATION header for NTLM always starts with the following:

Negotiate TlRMTVNTUA

If the header doesn't start with text then the browser is authenticating using Kerberos.

半步萧音过轻尘 2024-07-16 12:51:48

Fiddler2 将指示身份验证标头是 NTLM 还是 Kerberos。

    Authorization Header (Negotiate) appears to contain a Kerberos ticket:
60 82 13 7B 06 06 2B 06 01 05 05 02 A0 82 13 6F  `.{..+..... .o

    WWW-Authenticate Header (Negotiate) appears to be a Kerberos reply:
A1 81 A0 30 81 9D A0 03 0A 01 00 A1 0B 06 09 2A  ¡ 0 ....¡...*

Fiddler2 will indicate if the authentication header is NTLM vs Kerberos.

    Authorization Header (Negotiate) appears to contain a Kerberos ticket:
60 82 13 7B 06 06 2B 06 01 05 05 02 A0 82 13 6F  `.{..+..... .o

    WWW-Authenticate Header (Negotiate) appears to be a Kerberos reply:
A1 81 A0 30 81 9D A0 03 0A 01 00 A1 0B 06 09 2A  ¡ 0 ....¡...*
遗忘曾经 2024-07-16 12:51:48

我能想到的最简单的方法是使用wireshark 来监视网络数据包并验证您的IIS 服务器是否正在从您的DC 请求Kerberos 票证。

The easiest way that I can think of is to use wireshark to watch the network packets and verify that your IIS server is requesting Kerberos Tickets from your DC.

遗失的美好 2024-07-16 12:51:48

您可以在 Web 服务器的事件查看器中检查安全日志。

您还可以在客户端计算机上启动 KerbTray 并检查它是否使用正确的 SPN。 Kerbtray 可在此处(别担心,这不仅仅是Win2000)。

You can check the security log in the event viewer of the web server.

You can also launch KerbTray on the client machine and check if it's using the correct SPN. Kerbtray is available here (don't worry, it's not Win2000 only).

寄风 2024-07-16 12:51:48

我使用事件查看器中的安全日志来检查,就像有人已经提到的那样。 这是一个成功的遏制身份验证:

Successful Network Logon:
User Name:  {Username here}
Domain:     {Domain name here}
Logon ID:   (0x0,0x########)
Logon Type: 3
Logon Process:  Kerberos
Authentication Package: Kerberos
Workstation Name:   
Logon GUID: {########-####-####-####-############}
Caller User Name:   -
Caller Domain:  -
Caller Logon ID:    -
Caller Process ID: -
Transited Services: -
Source Network Address: -
Source Port:    -


For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

I use the security log in the event viewer to check like someone already mentioned. Here is a successful kerb auth:

Successful Network Logon:
User Name:  {Username here}
Domain:     {Domain name here}
Logon ID:   (0x0,0x########)
Logon Type: 3
Logon Process:  Kerberos
Authentication Package: Kerberos
Workstation Name:   
Logon GUID: {########-####-####-####-############}
Caller User Name:   -
Caller Domain:  -
Caller Logon ID:    -
Caller Process ID: -
Transited Services: -
Source Network Address: -
Source Port:    -


For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文