sp_addremotelogin (Transact-SQL)
在本機伺服器上加入新的遠端登入識別碼。此舉可讓遠端伺服器連接及執行遠端程序呼叫。
附註: |
---|
下一版的 Microsoft SQL Server 將不再提供此功能。請勿在新的開發工作中使用此功能,並且儘速修改使用此功能的應用程式。 請改用連結伺服器和連結伺服器預存程序。 |
語法
sp_addremotelogin [ @remoteserver = ] 'remoteserver'
[ , [ @loginame = ] 'login' ]
[ , [ @remotename = ] 'remote_name' ]
引數
- [ @remoteserver = ] 'remoteserver'
這是遠端登入所套用的遠端伺服器名稱。remoteserver 是 sysname,沒有預設值。只要指定 remoteserver,remoteserver 上所有的使用者,都會對應至本機伺服器上現有的同名登入。本機伺服器必須知道這部伺服器。它可以利用 sp_addserver 加入。當 remoteserver 上的使用者連接到執行 SQL Server 的本機伺服器,來執行遠端預存程序時,它們是利用與它們在 remoteserver 上登入相符的本機登入來連接。remoteserver 是起始遠端程序呼叫的伺服器。
- [ @loginame = ] 'login'
這是 SQL Server 本機執行個體上的使用者登入識別碼。login 是 sysname,預設值是 NULL。login 必須已存在於 SQL Server 的本機執行個體。如果有指定 login,則 remoteserver 上所有的使用者都會對應至該特定的本機登入。當 remoteserver 上的使用者連接到 SQL Server 的本機執行個體,來執行遠端預存程序時,它們是以 login 的身分連接。
- [ @remotename = ] 'remote_name'
這是遠端伺服器上的使用者登入識別碼。remote_name 是 sysname,預設值是 NULL。remote_name 必須已存在於 remoteserver。如果有指定 remote_name,特定的使用者 remote_name 便會對應至本機伺服器的 login。當 remoteserver 上的 remote_name 連接到 SQL Server 的本機執行個體,來執行遠端預存程序時,它是以 login 的身分連接。remote_name 的登入識別碼可能與遠端伺服器的登入識別碼 login 不同。
傳回碼值
0 (成功) 或 1 (失敗)
備註
若要執行分散式查詢,請使用 sp_addlinkedsrvlogin。
sp_addremotelogin 無法在使用者自訂交易內執行。
權限
只有系統管理員 (sysadmin) 和安全性管理員 (securityadmin) 固定伺服器角色的成員,才能夠執行 sp_addremotelogin。
範例
A. 一對一對應
下列範例是在遠端伺服器 ACCOUNTS
和本機伺服器具有相同的使用者登入時,將遠端名稱對應至本機名稱。
EXEC sp_addremotelogin 'ACCOUNTS';
B. 多對一對應
下列範例會建立一個項目,將遠端伺服器 ACCOUNTS
上所有的使用者,對應至本機登入識別碼 Albert
。
EXEC sp_addremotelogin 'ACCOUNTS', 'Albert';
C. 使用明確的一對一對應
下列範例會將來自遠端伺服器 ACCOUNTS
上遠端使用者 Chris
的遠端登入,對應至本機使用者 salesmgr
。
EXEC sp_addremotelogin 'ACCOUNTS', 'salesmgr', 'Chris';
請參閱
參考
sp_addlinkedsrvlogin (Transact-SQL)
sp_addlogin (Transact-SQL)
sp_addserver (Transact-SQL)
sp_dropremotelogin (Transact-SQL)
sp_grantlogin (Transact-SQL)
sp_helpremotelogin (Transact-SQL)
sp_helpserver (Transact-SQL)
sp_remoteoption (Transact-SQL)
sp_revokelogin (Transact-SQL)
系統預存程序 (Transact-SQL)