如何使用链接服务器执行可怕的双跳?

Sql*_*hes 5 sql-server-2008 ms-access

情况:我在 SERVER3 上有 SERVER1、SERVER2、ACCESSDB。

我已成功创建了从 SERVER1 到 SERVER3 的 ACCESSDB 的链接服务器连接。

我希望能够从 SERVER2(又名双跳)访问 SERVER1 上的链接服务器。

当我登录到 SERVER2 时,我得到了很好的 ol - 当我测试连接时“没有权限”问题。我检查了 SERVER3 日志,它说传入的连接是匿名的。我需要能够将一些(任何)凭据从 SERVER2 传递给 SERVER3。

不,我不能使用 SQL 帐户。我必须使用 Windows 身份验证。

是的,我需要使用 KERBEROS 并设置 SPN。这就是我的问题所在。如何正确设置 KERBEROS 和委派?

我希望能够跑步

select auth_scheme from sys.dm_exec_connections where session_id=@@SPID
Run Code Online (Sandbox Code Playgroud)

从 SERVER2 并让它返回“KERBEROS”而不是“NTLM”。

我需要运行哪些特定命令才能正确设置 KERBEROS/SPN?我如何创建这个“链”?

仅供参考 - 两个实例都是 SQL2008 R2 标准 (x64) 上的 NAMED 实例。

gbn*_*gbn 4

安全账户委托

对于SQL Server 2000但仍然有效

基本上

  • 在AD中配置服务器
  • 设置 SPN
  • 使用 sp_addlinkedsrvlogin 所以 useself = true