从不同的 SQL Server 连接时,用户“NT AUTHORITY\ANONYMOUS LOGON”登录失败
Posted
技术标签:
【中文标题】从不同的 SQL Server 连接时,用户“NT AUTHORITY\\ANONYMOUS LOGON”登录失败【英文标题】:Login Failed for user 'NT AUTHORITY\ANONYMOUS LOGON' when connecting from a different SQL Server从不同的 SQL Server 连接时,用户“NT AUTHORITY\ANONYMOUS LOGON”登录失败 【发布时间】:2017-02-27 10:08:31 【问题描述】:我有 3 台服务器:
server1:安装了 Management Studio 的服务器
server2:数据库服务器,数据库database2运行在实例server2上
server3:数据库服务器,数据库database3运行在实例server3上
我在 server2 上创建了一个链接服务器,指向 server3。当我使用链接服务器执行脚本时,它可以工作。 但是,当我在 server1 上登录时,当我在 Management Studio 中连接到 server2 并尝试使用链接服务器执行查询时,出现错误:
用户“NT AUTHORITY\ANONYMOUS LOGON”登录失败
为什么这不起作用,而当我在 server2 上打开 Management Studio 时它起作用?
server2 和 server3 的 SQL Server 服务和 SQL Server Agent 在同一个帐户下运行,该帐户是域帐户。
【问题讨论】:
你解决了吗? 很遗憾没有。我们刚刚解决了这个问题。 如果您愿意用一些额外的细节来编辑您的问题,我可以帮助您解决这个问题。最重要的是,我需要以下命令的输出:setspn -l 【参考方案1】:好像是Kerberos Double Hop 问题。
您可以尝试通过包含 IP 地址重新创建链接服务器。例如,在 server2 中,链接服务器与 [ServerName], [PortNumber]
(Server2, 1433)。
【讨论】:
【参考方案2】:有趣的是,您在两个不同的数据库服务器(实例)上配置了相同的服务帐户,我建议为每个数据库服务器设置单独的服务帐户并设置正确的 SPN(命令:SETSPN,参考https://technet.microsoft.com/en-us/library/cc731241(v=ws.11).aspx)
【讨论】:
以上是关于从不同的 SQL Server 连接时,用户“NT AUTHORITY\ANONYMOUS LOGON”登录失败的主要内容,如果未能解决你的问题,请参考以下文章
SQL Server中的用户'NT AUTHORITY ANONYMOUS LOGON登录失败
“用户'NT AUTHORITY ANONYMOUS LOGON'登录失败。”到SQL Server 2005