为委托配置链接服务器

更新日期: 2006 年 12 月 12 日

可以对 SQL Server 和 Windows 进行配置,从而通过转发经过身份验证的 Windows 用户的凭据来使得连接到 SQL Server 实例的客户端能够连接到其他 SQL Server 实例。此安排称为“委托**”。在委托下,Windows 用户使用 Windows 身份验证连接到的 SQL Server 实例在与另一个实例进行通信时将“模拟**”该用户。当特定登录名使用自映射登录特定链接服务器时,分布式查询需使用安全帐户委托。

委托要求

为说明委托要求,请考虑下列情况:用户登录到一台客户机,而该客户机与运行 SQL Server、SQLSERVER1 实例的服务器相连接。用户希望在链接服务器 SQLSERVER2 上对数据库运行分布式查询。这种情况称为“双跃点**”,在这种情况下,一台计算机连接到另一台计算机,目的是为了连接到第三台计算机。

ms189580.note(zh-cn,SQL.90).gif注意:
即便与服务器建立连接的客户端应用程序(包括 SQL Server Management Studio)与正被查询的 SQL Server 实例同在一台计算机上,也必须对链接服务器进行委托配置。

客户端的要求

  • 经过 Windows 身份验证的用户登录名必须具有对 SQLSERVER1SQLSERVER2 进行访问的权限。
  • 不能选择用户 Active Directory 属性,不得选择帐户是敏感帐户,不能被委托
  • 客户机必须使用 TCP/IP 或命名管道网络连接。

第一个/中间服务器 (SQLSERVER1) 的要求

  • 服务器必须具有域管理员注册的 SPN。

  • 必须托付运行 SQL Server 的帐户进行委托。

  • 服务器必须使用 TCP/IP 或命名管道网络连接。

  • 必须将第二个服务器 (SQLSERVER2) 添加为链接服务器。这可以通过运行 sp_addlinkedserver 存储过程来完成。例如:

    EXEC sp_addlinkedserver 'SQLSERVER2', N'SQL Server'
    
  • 必须对链接服务器登录名进行配置,以便进行自映射。这可以通过运行 sp_addlinkedsrvlogin 存储过程来完成。例如:

    EXEC sp_addlinkedsrvlogin 'SQLSERVER2', 'true'
    

第二个服务器 (SQLSERVER2) 的要求

  • 如果使用 TCP/IP 网络连接,则服务器必须具有由域管理员注册的 SPN。
  • 服务器必须使用 TCP/IP 或命名管道网络连接。

请参阅

概念

链接服务器

其他资源

sp_addlinkedserver (Transact-SQL)

帮助和信息

获取 SQL Server 2005 帮助

更改历史记录

发布日期 历史记录

2006 年 7 月 17 日

更改的内容:
  • 添加了也可以使用命名管道网络连接为委托配置链接服务器的内容。

2006 年 7 月 17 日

新增内容:
  • 添加了一条“注释”,指出:即便与服务器建立连接的客户端应用程序与正被查询的 SQL Server 实例同在一台计算机上,也必须对链接服务器进行委托配置。