2

我有可以使用域用户凭据连接到的 SQL Server 2008。网络中有许多计算机,如果我以该域用户登录,我可以成功连接到 SQL Server(使用 Windows 身份验证)。

问题是当我使用 PowerShell 远程处理并建立从计算机 A 到计算机 B 的远程会话时。当我运行我们dbtool的尝试连接到 SqlServer(在远程会话中)login failed for NT AUTHORITY\ANONYMOUS LOGON时,会发生“”错误。

这很奇怪,因为我在同一个域用户下建立了远程会话。为什么ANONYMOUS要传递给 SqlServer?

感谢帮助

4

2 回答 2

2

由于缺乏其他答案,我再次回答我自己的问题。

计算机通信链:A -> B -> C.

所以问题确实出在 Kerberos 授权委托功能上(更多信息: http: //alt.pluralsight.com/wiki/default.aspx/Keith.GuideBook/WhatIsDelegation.html)。A当我建立从计算机到计算机的远程会话时B,计算机会B发送到计算机C null session(因为不接受委托)。这就是为什么计算机上的 SQL ServerC将我视为NT AUTHORITY\ANONYMOUS LOGON.

我目前的解决方法是从计算机与 SQL Server 对话A(复制必要的实用程序),因为我无法启用委派。对于这种情况,计算机A将正确的授权令牌发送到计算机C

于 2011-02-10T19:53:15.683 回答
2

您是否尝试过启用 CredSSP(虽然 W2k3 不支持)?

## Client
Enable-WSManCredSSP -Role Client -DelegateComputer "*.domain.com"

## Server
Enable-WSManCredSSP -Role Server
于 2011-05-12T16:10:35.207 回答