sp_droplinkedsrvlogin (Transact-SQL)
Aplica-se a: SQL Server
Remove um mapeamento existente entre um logon no servidor local que executa o SQL Server e um logon no servidor vinculado.
Convenções de sintaxe de Transact-SQL
Sintaxe
sp_droplinkedsrvlogin
[ @rmtsrvname = ] N'rmtsrvname'
, [ @locallogin = ] N'locallogin'
[ ; ]
Argumentos
@rmtsrvname [ = ] N'rmtsrvname'
O nome de um servidor vinculado ao qual o mapeamento de logon do SQL Server se aplica. @rmtsrvname é sysname, sem padrão.
@locallogin [ = ] N'locallogin'
O logon do SQL Server no servidor local que é um mapeamento para o servidor vinculado @rmtsrvname. @locallogin é sysname, sem padrão. Um mapeamento de @locallogin para @rmtsrvname já deve existir. Se NULL
, o mapeamento padrão criado por sp_addlinkedserver
, que mapeia todos os logons no servidor local para logons no servidor vinculado, será excluído.
Valores do código de retorno
0
(sucesso) ou 1
(falha).
Comentários
Quando o mapeamento existente para um logon é excluído, o servidor local usa o mapeamento padrão criado por sp_addlinkedserver
quando ele se conecta ao servidor vinculado em nome desse logon. Para alterar o mapeamento padrão, use sp_addlinkedsrvlogin
.
Se o mapeamento padrão também for excluído, somente os logons que receberam explicitamente um mapeamento de logon para o servidor vinculado, usando sp_addlinkedsrvlogin
, poderão acessar o servidor vinculado.
sp_droplinkedsrvlogin
não pode ser executado de dentro de uma transação definida pelo usuário.
Permissões
Requer a permissão ALTER ANY LOGIN
no servidor.
Exemplos
R. Remover o mapeamento de login de um usuário existente
O exemplo a seguir remove o mapeamento para o logon Mary
do servidor local para o servidor vinculado Accounts
. Portanto, o logon Mary
usa o mapeamento de logon padrão.
EXEC sp_droplinkedsrvlogin 'Accounts', 'Mary';
B. Remover o mapeamento de login padrão
O exemplo a seguir remove o mapeamento de logon padrão originalmente criado executando sp_addlinkedserver
no servidor vinculado Accounts
.
EXEC sp_droplinkedsrvlogin 'Accounts', NULL;