sys.sp_addremotelogin (Transact-SQL)

Aplica-se a: SQL Server

Adiciona um novo ID de login remoto no servidor local. Isto permite que servidores remotos se conectem e executem chamadas de procedimentos remotos.

Importante

Esse recurso será removido em uma versão futura do SQL Server. Evite usar esse recurso em novos trabalhos de desenvolvimento e planeje modificar aplicativos que atualmente usam esse recurso. Em vez disso, use servidores vinculados e procedimentos armazenados de servidores vinculados.

Transact-SQL convenções de sintaxe

Syntax

sys.sp_addremotelogin
    [ @remoteserver = ] N'remoteserver'
    [ , [ @loginame = ] N'loginame' ]
    [ , [ @remotename = ] N'remotename' ]
[ ; ]

Arguments

[ @remoteserver = ] N'servidor remoto'

O nome do servidor remoto ao qual se aplica o login remoto. @remoteserver é sysname, sem padrão. Se apenas @remoteserver for especificado, todos os utilizadores na @remoteserver são mapeados para logins existentes com o mesmo nome no servidor local. O servidor deve ser conhecido pelo servidor local. Isto é adicionado usando sp_addserver. Quando os utilizadores em @remoteserver se ligam ao servidor local que está a correr SQL Server para executar um procedimento armazenado remotamente, ligam-se como o login local que corresponde ao seu próprio login em @remoteserver. @remoteserver é o servidor que inicia a chamada ao procedimento remoto.

[ @loginame = ] N'loginame'

O ID de login do utilizador na instância local do SQL Server. @loginame é sysname, com um padrão de NULL. @loginame já deve existir na instância local de SQL Server. Se @loginame for especificado, todos os utilizadores na @remoteserver são mapeados para esse login local específico. Quando os utilizadores em @remoteserver se ligam à instância local de SQL Server para executar um procedimento armazenado remotamente, conectam-se como @loginame.

[ @remotename = ] N'nome remoto'

O ID de login do utilizador no servidor remoto. @remotename é sysname, com um padrão de NULL. @remotename tem de existir em @remoteserver. Se @remotename for especificado, a @remotename específica do utilizador é mapeada para @loginame no servidor local. Quando @remotenameem @remoteserver se liga à instância local de SQL Server para executar um procedimento armazenado remotamente, liga-se como @loginame. O ID de login do @remotename pode ser diferente do ID de login no servidor remoto, @loginame.

Valores de código de retorno

0 (sucesso) ou 1 (fracasso).

Remarks

Para executar consultas distribuídas, use sp_addlinkedsrvlogin.

sp_addremotelogin Não pode ser usado dentro de uma transação definida pelo utilizador.

Permissions

Apenas os membros dos servidores fixos sysadmin e securityadmin podem executar sp_addremotelogin.

Examples

A. Mapa um para um

O exemplo seguinte mapeia nomes remotos para nomes locais quando o servidor ACCOUNTS remoto e o servidor local têm os mesmos logins de utilizador.

EXECUTE sp_addremotelogin 'ACCOUNTS';

B. Mapear muitos para um

O exemplo seguinte cria uma entrada que mapeia todos os utilizadores do servidor ACCOUNTS remoto para o ID Albertde login local .

EXECUTE sp_addremotelogin 'ACCOUNTS', 'Albert';

C. Use mapeamento explícito um-para-um

O exemplo seguinte mapeia um login remoto do utilizador Chris remoto no servidor ACCOUNTS remoto para o utilizador salesmgrlocal .

EXECUTE sp_addremotelogin 'ACCOUNTS', 'salesmgr', 'Chris';