Share via


sp_addlinkedsrvlogin (Transact-SQL)

Yerel bir kopyası üzerinde bir oturum arasında bir eşleme güncelleştirir veya oluşturur SQL Server ve bir uzak sunucuda bir güvenlik hesabı.

Topic link iconTransact-SQL sözdizimi kuralları

sp_addlinkedsrvlogin [ @rmtsrvname = ] 'rmtsrvname' 
     [ , [ @useself = ] 'TRUE' | 'FALSE' | 'NULL'] 
     [ , [ @locallogin = ] 'locallogin' ] 
     [ , [ @rmtuser = ] 'rmtuser' ] 
     [ , [ @rmtpassword = ] 'rmtpassword' ] 

Bağımsız değişkenler

  • [ @rmtsrvname = ] 'rmtsrvname'
    Is the name of a linked server that the login mapping applies to.rmtsrvname is sysname, with no default.

  • [ @useself = ] 'TRUE' | 'FALSE' | 'NULL'
    Bağlanmak belirler rmtsrvname yerel oturum açma kimliğine bürünüyor veya açık olarak, bir oturum açma adı ve parola gönderme. Veri türü varchar(8), varsayılan True.

    TRUE değeri oturumların bağlanmak için kendi kimlik bilgileri bilgilerini kullandığını belirtir. rmtsrvname, ile rmtuser ve rmtpassword bağımsız değişkenler sayılır. YANLıŞ belirleyen rmtuser ve rmtpassword bağımsız değişkenler, bağlanmak için kullanılır rmtsrvname Belirtilen için locallogin. If rmtuser ve rmtpassword Ayrıca, null, hiçbir oturum açma veya parola bağlanmak için kullanılan olan bağlantılı sunucu.

  • [ @locallogin = ] 'locallogin'
    Is a login on the local server.locallogin is sysname, with a default of NULL.NULL, bu girişin bağlandığı tüm yerel oturumlarının uygulanacağını belirtir rmtsrvname. NULL, yoksa locallogin olabilir bir SQL Server oturum açma veya Windows oturumu açma. Windows oturum açma erişimi almış olmanız gerekir SQL Server ya da doğrudan veya bir Windows grubunda üyeliği yoluyla erişim izni.

  • [ @rmtuser = ] 'rmtuser'
    Oturumu uzaktan bağlanmak için kullanılır rmtsrvname @ useself YANLıŞ olduğunda. When the remote server is an instance of SQL Server that does not use Windows Authentication, rmtuser is a SQL Server login.rmtuser is sysname, with a default of NULL.

  • [ @rmtpassword = ] 'rmtpassword'
    Is the password associated with rmtuser.rmtpassword is sysname, with a default of NULL.

Dönüş Kodu Değerleri

0 (başarılı) veya 1 (hata)

Remarks

Bir kullanıcı oturum açtığında yerel sunucuya tablo bağlantılı bir sunucu üzerinde eriştiği için dağıtılmış sorgu yürütür, yerel sunucunun o tabloyu erişmek için kullanıcı adına bir bağlantılı sunucu için oturum açmalısınız.Oturum açmak için yerel sunucunun kullandığı oturum açma kimlik bilgileri belirtmek için sp_addlinkedsrvlogin kullanmak bağlantılı sunucu.

Not

bağlantılı sunucu üzerinde bir tablo kullanıyorsanız, en iyi sorgu planları oluşturmak için , query processor veri dağılım istatistiklerini bağlantılı sunucu olması gerekir.Sütun tablonun izinleri sınırlı olan kullanıcıların, tüm yararlı istatistikler elde verimli bir sorgu planını almak ve düşük performans karşılaşıyorsunuz, yeterli izinlere sahip olmayabilirsiniz.Bağlantılı sunucu ise, bir örnek, SQL Server, tüm kullanılabilir istatistikler elde etmek için , kullanıcı tablo sahip veya sysadmin sabit sunucu rolü üyesi olması, sabit db_owner veritabanı rolü veya bağlantılı bir sunucu üzerinde db_ddladmin sabit veritabanı rolü.

Varsayılan tüm yerel sunucu üzerinde oturumları ve bağlantılı sunucu üzerinde uzaktan açılan oturumların eşleştirmesini sp_addlinkedserver yürütmek yoluyla otomatik olarak oluşturulur.Varsayılan eşleme bildiren SQL Server bağlanırken kullanıcı yerel oturum açma kimlik bilgileri bilgilerini kullanan bağlantılı sunucu oturum açma adına. Bu @ useself küme olan sp_addlinkedsrvlogin yürütülüyor eşdeğerdir true bağlantılı sunucu, yerel kullanıcı adı belirtmeden. Sp_addlinkedsrvlogin, yalnızca varsayılan eşlemeyi değiştirmek için veya belirli yerel oturum açma için yeni bir eşleme eklemek için kullanın.Varsayılan eşleme veya başka bir eşleştirme silmek için , sp_droplinkedsrvlogin Ek Yardım düğmesini kullanın.

Bir önceden belirlenmiş bir oturum açma eşleştirme sp_addlinkedsrvlogin kullanmak yerine SQL Server Windows güvenlik kimlik bilgileri bilgilerini (Windows oturum açma adı ve parola) sorgu veren kullanıcının otomatik olarak aşağıdaki koşulların tümü bulunduğunda, bağlantılı bir sunucuya bağlanmak için kullanabilirsiniz:

  • Bir kullanıcı bağlı SQL Server Windows kimlik doğrulaması modu kullanarak.

  • Güvenlik hesabını temsilci seçme, istemci gönderen sunucu üzerinde kullanılabilir.

  • Sağlayıcı, Windows kimlik doğrulaması modu destekler; örneğin, SQL Server Windows üzerinde çalışıyor.

Not

Temsilci seçme tek duraklı senaryoları için etkinleştirilmiş olması gerekmez, ancak birden çok atlama senaryoları için gereklidir.

Kimlik doğrulaması üzerinde yerel kopyası sp_addlinkedsrvlogin yürüterek tanımlanan eşleştirmeleri'ni kullanarak bağlantılı sunucu tarafından gerçekleştirildikten sonra SQL Server, bağlantılı sunucu tarafından yerel sunucunun uzak veritabanında tek tek nesneler üzerindeki izinleri belirler.

sp_addlinkedsrvlogin kullanıcı tanımlı bir işlem içinde yürütülemiyor.

İzinler

Sunucudaki ALTER ANY LOGIN iznine gerek duyar.

Örnekler

C.Tüm yerel oturum açma bağlanma bağlantılı sunucu kendi kullanıcı kimlik bilgileri bilgilerini kullanarak

Aşağıdaki örnek, yerel sunucu için tüm oturumların aracılığıyla bağlanmak, emin olmak için bir eşleme oluşturur bağlantılı sunucu Accounts kendi kullanıcı kimlik bilgileri bilgilerini kullanarak.

EXEC sp_addlinkedsrvlogin 'Accounts'

Or

EXEC sp_addlinkedsrvlogin 'Accounts', 'true'

Not

Açık eşlemeler, her oturum için oluşturulan varsa, bunlar varolabilir genel eşlemeler bağlantılı sunucu için önceliklidir.

b.Belirli bir oturum açma bağlanma bağlantılı sunucu farklı kullanıcı kimlik bilgileri bilgilerini kullanarak

Aşağıdaki örnek, emin olmak için bir eşleme oluşturur Windows kullanıcısı Domain\Mary ile bağlantılı sunucuya bağlanır. Accounts oturum açma kullanarak MaryP çalıştırılacak biçimde ayarlar d89q3w4u.

EXEC sp_addlinkedsrvlogin 'Accounts', 'false', 'Domain\Mary', 'MaryP', 'd89q3w4u'
Security noteSecurity Note:

Bu örnek, Windows kimlik doğrulaması kullanmaz.Parolaları şifresiz aktarılması.Parolaları veri kaynağı tanımları ve kaydedilen komut dosyalarını görünür diske yedekleme ve günlük dosyaları.Hiçbir zaman bu tür bir bağlantı, bir yönetici parolası'nı kullanın.Ortamınıza güvenlik kılavuzu için ağ yöneticinize başvurun.