背景:
IIS位于One Server(7)
上SQL在另一台服务器上
Active Directory在另一台服务器上(这可能会有所不同,但可能与我所读到的不同)
我们有一个全新的MVC网站,它使用AD权限授予对网站的访问权限,然后在SQL中运行SP
网站访问工作正常,但我收到用户'NT AUTHORITY \ ANONYMOUS LOGON'登录失败的错误,我相信这意味着我已经陷入了双跳问题。
在IIS中,我有一个V4.0集成和应用程序池标识的应用程序池
在我的应用程序中我启用了ASP.net模拟设置并启用了Windows身份验证其他所有功能都已禁用
在SQL Server和IIS服务器的委派设置中,我设置了“信任此计算机以便委派任何服务(仅限Kerberos)”
如果我在SQL
中运行以下语句SELECT auth_scheme FROM sys.dm_exec_connections WHERE session_id = @@ SPID;
我得到KERBEROS。
我错过了什么?或做错了?感谢
答案 0 :(得分:0)
您可能需要检查多少内容,是否在SQL Box上设置了SPN,可以通过以下命令添加这些内容:
setspn -a "<SQL_SERVER_Server_Name>:1433" "<SQL_SERVER_Service_Account>"
您可能想要同时添加FQDN和短名称。完成后,您将需要重新启动SQL Server,而不仅仅是服务。
如果这不起作用,您可以运行以下命令:
setspn -l "<AppPool Account Name>"
和
setspn -l "<SQL Server Account Name>"