sp_addremotelogin (Transact-SQL)

Agrega un Id. de inicio de sesión remoto en el servidor local. Esto permite a los servidores remotos conectarse y ejecutar llamadas a procedimientos remotos.

Nota

Esta característica se quitará en la versión siguiente de Microsoft SQL Server. No utilice esta característica en nuevos trabajos de desarrollo y modifique lo antes posible las aplicaciones que actualmente la utilizan. En su lugar use servidores vinculados y procedimientos almacenados de servidores vinculados.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

sp_addremotelogin [ @remoteserver = ] 'remoteserver' 
     [ , [ @loginame = ] 'login' ] 
          [ , [ @remotename = ] 'remote_name' ]

Argumentos

  • [ @remoteserver = ] 'remoteserver'
    Es el nombre del servidor remoto al que se aplica el inicio de sesión remoto. remoteserver es de tipo sysname y no tiene valor predeterminado. Si sólo se especifica remoteserver, todos los usuarios de remoteserver se asignan a los inicios de sesión que tengan el mismo nombre existentes en el servidor local. El servidor debe ser un servidor conocido por el servidor local. Se agrega con sp_addserver. Cuando los usuarios de remoteserver conectan con el servidor SQL Server local para ejecutar un procedimiento almacenado remoto, conectan con el inicio de sesión local que coincide con su inicio de sesión en remoteserver. remoteserver es el servidor que inicia la llamada a procedimiento remoto.

  • [ @loginame = ] 'login'
    Es el Id. de inicio de sesión del usuario en la instancia local de SQL Server. login es de tipo sysname y su valor predeterminado es NULL. logindebe existir en la instancia local de SQL Server. Si se especifica login, todos los usuarios de remoteserver quedan asignados a dicho inicio de sesión específico. Cuando los usuarios de remoteserver conectan con el servidor SQL Server local para ejecutar un procedimiento almacenado remoto, se conectan como login.

  • [ @remotename = ] 'remote_name'
    Es el Id. de inicio de sesión del usuario en el servidor remoto. remote_name es de tipo sysname y su valor predeterminado es NULL. remote_name debe existir en remoteserver. Si se especifica remote_name, el nombre de usuario específico indicado en remote_name se asigna al inicio de sesión especificado en login en el servidor local. Cuando remote_name en remoteserver se conecta a la instancia local de SQL Server para ejecutar un procedimiento almacenado remoto, se conecta como login. El Id. de inicio de sesión de remote_name puede ser diferente del Id. de inicio de sesión del servidor remoto, login.

Valores de código de retorno

0 (correcto) o 1 (error)

Comentarios

Para ejecutar consultas distribuidas, utilice sp_addlinkedsrvlogin.

sp_addremotelogin no se puede utilizar en una transacción definida por el usuario.

Permisos

Sólo los miembros de las funciones fijas de servidor sysadmin y securityadmin pueden ejecutar sp_addremotelogin.

Ejemplos

A. Asignar uno a uno

En el siguiente ejemplo se asignan nombres remotos a nombres locales cuando el servidor remoto ACCOUNTS y el servidor local tienen los mismos inicios de sesión de usuario.

EXEC sp_addremotelogin 'ACCOUNTS';

B. Asignar varios a uno

En el siguiente ejemplo se crea una entrada que asigna todos los usuarios del servidor remoto ACCOUNTS al Id. de inicio de sesión local Albert.

EXEC sp_addremotelogin 'ACCOUNTS', 'Albert';

C. Usar una asignación uno a uno explícita

En el siguiente ejemplo se asigna un inicio de sesión remoto desde el usuario remoto Chris en el servidor remoto ACCOUNTS al usuario local salesmgr.

EXEC sp_addremotelogin 'ACCOUNTS', 'salesmgr', 'Chris';