Sql server IIS到SQL Server kerberos身份验证问题

Sql server IIS到SQL Server kerberos身份验证问题,sql-server,iis,kerberos,Sql Server,Iis,Kerberos,我们有一个第三方产品,允许我们的一些用户通过单独服务器(SvrWeb)上的网站操作数据库中的数据(我们称之为SvrSQL) 在SvrWeb上,我们为该应用程序设置了一个特定的、非默认的网站设置,因此我们不需要访问我们使用的网站,该网站解析为SvrWeb,主机头解析为正确的网站 还为此站点设置了一个特定的应用程序池,该应用程序池使用Active Directory帐户标识,我们称之为“company\SrvWeb_iis”。我们已设置为允许在此帐户上进行委派,并允许它模拟我们希望它执行的另一个登录

我们有一个第三方产品,允许我们的一些用户通过单独服务器(SvrWeb)上的网站操作数据库中的数据(我们称之为SvrSQL)

在SvrWeb上,我们为该应用程序设置了一个特定的、非默认的网站设置,因此我们不需要访问我们使用的网站,该网站解析为SvrWeb,主机头解析为正确的网站

还为此站点设置了一个特定的应用程序池,该应用程序池使用Active Directory帐户标识,我们称之为“company\SrvWeb_iis”。我们已设置为允许在此帐户上进行委派,并允许它模拟我们希望它执行的另一个登录。(我们希望此帐户将登录网站的人的广告凭据传递给SQL Server,而不是服务帐户

我们还通过以下命令为SrvWeb_iis帐户设置SPN: setspn-HTTP/SrvWeb.company.com SrvWeb_iis

网站会调出,但网站中调用数据库的部分会返回以下消息: 无法执行数据库查询。 用户“NT授权\匿名登录”登录失败

我认为我们已经正确设置了SPN信息,但当我检查SrvWeb上的安全事件日志时,我看到了我的登录条目,但它似乎使用的是NTLM而不是kerberos:

Logon Type: 3
Logon Process:  NtLmSsp 
Authentication Package: NTLM
如果您有任何详细介绍此设置的想法或文章,我们将不胜感激


如果有帮助的话,我们使用的是SQL Server 2005,web和SQL Server都是Windows 2003。

kerberos失败有几个可能的原因,包括缺少SPN和重复的SPN

如果SQL在自定义帐户下运行,则还需要为SQL添加SPN。
还要记住,您应该为FQDN添加SPN,FQDN是DNS中的主机(A)条目,而不是CNAME

检查nAuthenticationProviders的值

尝试DelegConfig,它将显示其SPN或其他内容丢失的内容。

您为web应用程序设置了集成Windows身份验证吗?是的,它只使用集成身份验证。让我澄清一下,它正在为网站使用集成身份验证,我不认为应用程序池为您提供了更改此设置的选项,是吗?我希望我了解更多关于我们的设置。是的,这是一种挑战。我我已经设置了需要在SQL安装后进行SPN设置的链接服务器,但IIS paththrough对我来说是另一个难题。从正面来看,我们可能已经发现了问题,如果/一旦我们确认,我将发布修复程序。您在SQL Server上正确设置了SPN吗?