繁体   English   中英

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

[英]Testing that a website is using Kerberos authentication

您如何检查IIS网站是否成功使用Kerberos而不是退回NTLM?

Fiddler2将指示身份验证标头是否为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 ....¡...*

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

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

Negotiate TlRMTVNTUA

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

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

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

我使用事件查看器中的安全日志来检查已经提到过的人。 这是一个成功的路边认证:

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.

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM