Active directory Kerberos:kvno是';1';在客户票据中

Active directory Kerberos:kvno是';1';在客户票据中,active-directory,kerberos,Active Directory,Kerberos,我们正在为客户的web应用程序配置SSO,但不幸的是,我们没有访问域控制器的权限(这也是为什么我们不进行更多实验来检查我们的假设的另一个原因)。因此,我们要求运行ktpass.exe并准备.ktpass文件以用于服务器配置 我们面临的问题是“指定版本的密钥不可用” 我查找了keytab文件(knvo=5),并在我们的web服务器上查看了Wireshark的流量: 如您所见,在AP-REQticket中kvno=1。我想这是检查kvno版本的正确方法 我知道Windows 2000域存在兼容性问

我们正在为客户的web应用程序配置SSO,但不幸的是,我们没有访问域控制器的权限(这也是为什么我们不进行更多实验来检查我们的假设的另一个原因)。因此,我们要求运行
ktpass.exe
并准备
.ktpass
文件以用于服务器配置

我们面临的问题是“指定版本的密钥不可用”

我查找了keytab文件(knvo=5),并在我们的web服务器上查看了Wireshark的流量:

如您所见,在
AP-REQ
ticket中kvno=1。我想这是检查kvno版本的正确方法

我知道Windows 2000域存在兼容性问题(
/kvno 1
必须用于Windows 2000域兼容性),但据说我们要处理Windows 2008R2服务器(我可以看到与2008R2匹配的域控制器的值
msDS Behavior Version=4

我们面临的是W2K域模式吗

显式kvno=1是否有助于解决问题?即,
ktpass.exe[…]/kvno 1

编辑#1
问题与错误指定的SPN有关。它是HTTP/computer_name@DOMAIN.COM而不是使用完全限定的域名。这只会在WINS启用时起作用,但事实证明并非如此

使用正确的SPN生成keytab后,一切正常,kvno根据实际帐户值发送


请接受解释我观察到的影响的答案。

问题与错误指定的SPN有关。它是HTTP/computer_name@DOMAIN.COM而不是使用完全限定的域名。这只会在WINS启用时起作用,但事实证明并非如此

使用正确的SPN生成keytab后,一切正常,kvno根据实际帐户值发送


请接受解释我观察到的效果的答案。

我不太了解内部结构,但MIT Kerberos客户端将规范化主机名。根据我的经验,如果名称不解析,它会影响Kerberos身份验证。当我为SQL Server设置服务帐户以执行Kerberos时,我始终必须使用主机名和完全限定域名注册SPN,因为不同的SQL组件似乎使用不同的解析方法


在非常基本的网络拓扑中,WINS将能够解析名称。即使没有WINS,NetBIOS服务也能够解析主机名。WINS和NetBIOS严重依赖广播,因此如果您的Web服务器位于不同的子网上,NetBIOS名称解析将失败,如果配置不正确,WINS也会失败。Windows还需要使用TCP/IP NetBIOS帮助程序服务

+1&接受有关名称解析的更多详细信息;然而,在我看来,我希望得到更多关于一切发生的方式和原因的细节,也许还有一些关于故障排除的提示。