sp_addremotelogin (Transact-SQL)
ローカル サーバーに新しいリモート ログイン ID を追加します。 これにより、リモート サーバーがリモート プロシージャ呼び出しに接続して、これを実行できるようになります。
重要 |
---|
この機能は、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 のローカル インスタンス上のユーザーのログイン ID を指定します。 login のデータ型は sysname で、既定値は NULL です。 login は、SQL Server のローカル インスタンス上に既に存在している必要があります。 login を指定した場合、remoteserver のすべてのユーザーが特定のローカル ログインにマップされます。 remoteserver のユーザーが SQL Server のローカル インスタンスに接続して、リモート ストアド プロシージャを実行する場合は、login として接続されます。[ @remotename = ] 'remote_name'
リモート サーバーにおけるユーザーのログイン ID を指定します。 remote_name のデータ型は sysname で、既定値は NULL です。 remote_name は remoteserver 上に存在している必要があります。 remote_name を指定した場合、特定のユーザー remote_name がローカル サーバー上での login にマップされます。 remoteserver の remote_name が SQL Server のローカル インスタンスに接続して、リモート ストアド プロシージャを実行する場合は、login として接続されます。 remote_name のログイン ID は、リモート サーバー上でのログイン ID (login) と異なっていてもかまいません。
戻り値
0 (成功) または 1 (失敗)
説明
分散クエリを実行するには、sp_addlinkedsrvlogin を使用します。
ユーザーが定義したトランザクション内では、sp_addremotelogin は実行できません。
権限
sp_addremotelogin を実行できるのは、固定サーバー ロール sysadmin および securityadmin のメンバーだけです。
使用例
A. 一対一でマップする
次の例では、リモート サーバー ACCOUNTS とローカル サーバーが同じユーザー ログインを持つ場合、リモート名をローカル名にマップします。
EXEC sp_addremotelogin 'ACCOUNTS';
B. 多対一でマップする
次の例では、リモート サーバー ACCOUNTS のすべてのユーザーを、ローカル ID 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)