Configurando servidores vinculados para delegação
O SQL Server e o Windows podem ser configurados para permitir que um cliente conectado a uma instância do SQL Server se conecte a outra instância do SQL Server encaminhando as credenciais de um usuário autenticado do Windows. Isso é conhecido como delegação. Sob delegação, a instância do SQL Server à qual um usuário do Windows se conectou usando autenticação do Windows representa esse usuário ao se comunicar com outra instância. A delegação de conta de segurança é necessária para consultas distribuídas quando um mapeamento automático é usado para um logon específico em um determinado servidor vinculado.
Requisitos de delegação
Para ilustrar os requisitos para delegação, considere o seguinte cenário: um usuário efetua logon em um computador cliente que se conecta a um servidor que executa uma instância do SQL Server, SQLSERVER1. O usuário deseja executar uma consulta distribuída em um banco de dados em um servidor vinculado, SQLSERVER2. Este cenário, no qual um computador se conecta a outro para depois se conectar a um terceiro, é chamado de salto duplo.
Observação |
---|
Um servidor vinculado deve ser configurado para delegação mesmo quando um aplicativo cliente, incluindo o SQL Server Management Studio, que estabelece uma conexão com um servidor, está no mesmo computador da instância do SQL Server que está sendo consultada. |
Requisitos do cliente
O logon autenticado do usuário do Windows deve ter permissões de acesso para SQLSERVER1 e SQLSERVER2.
A propriedade Active Directory do usuário, A conta é sensível e não pode ser delegada, não deve ser selecionada.
O computador cliente deve estar usando a conectividade de rede TCP/IP ou pipes nomeados.
Requisitos do servidor primário ou intermediário (SQLSERVER1)
O servidor deve ter um SPN registrado pelo administrador de domínio.
Na conta na qual o SQL Server está sendo executado deve ser confiável para delegação.
O servidor deve estar usando a conectividade de rede TCP/IP ou pipes nomeados.
O segundo servidor, SQLSERVER2, deve ser adicionado como um servidor vinculado. Isso pode ser feito executando o procedimento armazenado sp_addlinkedserver. Por exemplo:
EXEC sp_addlinkedserver 'SQLSERVER2', N'SQL Server'
Os logons de servidor vinculado devem ser configurados para mapeamento automático. Isso pode ser feito executando o procedimento armazenado sp_addlinkedsrvlogin. Por exemplo:
EXEC sp_addlinkedsrvlogin 'SQLSERVER2', 'true'
Requisitos do segundo servidor (SQLSERVER2)
Se estiver usando a conectividade de rede TCP/IP, o servidor deverá ter um SPN registrado pelo administrador de domínio.
O servidor deve estar usando a conectividade de rede TCP/IP ou pipes nomeados.