sys.sp_addremotelogin (Transact-SQL)

Van toepassing op:SQL Server

Voegt een nieuwe remote login ID toe op de lokale server. Dit stelt externe servers in staat om verbinding te maken en externe procedurecalls uit te voeren.

Important

Deze functie wordt verwijderd in een toekomstige versie van SQL Server. Vermijd het gebruik van deze functie in nieuwe ontwikkelwerkzaamheden en plan om toepassingen te wijzigen die momenteel gebruikmaken van deze functie. Gebruik in plaats daarvan opgeslagen procedures voor gekoppelde servers.

Transact-SQL syntaxis-conventies

Syntax

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

Arguments

[ @remoteserver = ] N'remoteserver'

De naam van de externe server waarop de externe login van toepassing is. @remoteserver is een systeemnaam, zonder standaard. Als er slechts @remoteserver wordt opgegeven, worden alle gebruikers op @remoteserver gekoppeld aan bestaande logins met dezelfde naam op de lokale server. De server moet bekend zijn bij de lokale server. Dit wordt toegevoegd door gebruik te maken van sp_addserver. Wanneer gebruikers op @remoteserver verbinding maken met de lokale server die SQL Server draait om een remote stored procedure uit te voeren, verbinden ze zich met de lokale login die overeenkomt met hun eigen login op @remoteserver. @remoteserver is de server die de aanroep van de remote procedure start.

[ @loginame = ] N'loginame'

De login-ID van de gebruiker op de lokale instantie van SQL Server. @loginame is sysname, met als standaard .NULL @loginame moet al bestaan op de lokale instantie van SQL Server. Als @loginame is gespecificeerd, worden alle gebruikers op @remoteserver gekoppeld aan die specifieke lokale login. Wanneer gebruikers op @remoteserver verbinding maken met de lokale instantie van SQL Server om een remote stored procedure uit te voeren, verbinden ze zich als @loginame.

[ @remotename = ] N'remotename'

De inlog-ID van de gebruiker op de externe server. @remotename is een systeemnaam, met als standaard .NULL @remotename moet op @remoteserver bestaan. Als @remotename wordt gespecificeerd, wordt de specifieke gebruiker @remotename toegewezen aan @loginame op de lokale server. Wanneer @remotename op @remoteserver verbinding maakt met de lokale instantie van SQL Server om een externe opgeslagen procedure uit te voeren, maakt hij verbinding als @loginame. De login-ID van @remotename kan verschillen van die op de externe server, @loginame.

Codewaarden retourneren

0 (geslaagd) of 1 (mislukt).

Remarks

Om gedistribueerde queries uit te voeren, gebruik sp_addlinkedsrvlogin.

sp_addremotelogin Kan niet worden gebruikt binnen een door de gebruiker gedefinieerde transactie.

Permissions

Alleen leden van de sysadmin- en securityadmin-vaste serverrollen kunnen uitvoeren sp_addremotelogin.

Examples

A. Kaart één op één

Het volgende voorbeeld koppelt externe namen aan lokale namen wanneer de externe server ACCOUNTS en lokale server dezelfde gebruikersinloggegevens hebben.

EXECUTE sp_addremotelogin 'ACCOUNTS';

B. Kaart van vele naar één

Het volgende voorbeeld creëert een vermelding die alle gebruikers van de externe server ACCOUNTS koppelt aan de lokale login-ID Albert.

EXECUTE sp_addremotelogin 'ACCOUNTS', 'Albert';

C. Gebruik expliciete één-op-één mapping

Het volgende voorbeeld beeldt een externe login van de externe gebruiker Chris op de externe server ACCOUNTS toe aan de lokale gebruiker salesmgr.

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