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_dropremotelogin (Transact-SQL)
sp_helpremotelogin (Transact-SQL)