SQL Server Management Studio'da farklı 2005 Kullanıcılarını Bağlama (2005 veya üzeri)


333

SQL Server Management Studio 2005'te (veya üstü) Windows Kimlik Doğrulaması kullanıcısını değiştirmenin bir yolu var mı (SQL Server 2000 ve daha eski sürümlerde olduğu gibi)?

Bu genel bağlantı özellikleri iletişim kutusudur (Windows Kimlik Doğrulaması seçerken gri renkli UID / PWD'ye dikkat edin):

diyalog

Bir geçici çözüm kullanmaktır, runasancak birden çok sunucuda (ve birden çok etki alanında) birden çok Windows hesabıyla çalışmamı sağlayacak bir çözüm arıyorum.


2
Bildiğim kadarıyla, Run As ... bunu başarmanın tek yoludur. Neden Farklı Çalıştır ... kullanamıyorsunuz ve her kullanıcı için farklı bir yönetim stüdyosu oturumu başlatamıyorsunuz?
DCNYAM

4
RunAs yalnızca aynı etki alanında ve / veya ormandaysanız çalışır. Bir danışmansanız, asla aynı alanda ve / veya ormanda değilsiniz, bu yüzden bu sahip olmak güzel bir özellik olacaktır.
Eric

Seni hissediyorum, Eric. Bazen sanal makineyi istemcinin etki alanının / ormanın bir parçası olabilmek ve biraz daha sorunsuz çalışmama izin vermek için istemcilerle VM'ler kullanıyorum, ancak birden çok etki alanı ile aktif olarak çalışıyorsanız, bu sıkıcı olabilir.
Ed Altorfer

6
Birden fazla alan adı bir kullanım durumudur. Bir diğeri, kendi hizmet hesabı altında oturum açan Windows Hizmetleri ve SQL bağlantısını, izinleri vb. Doğrulamak isteyen bir geliştiricidir. Şansım yok gibi geliyor. . . en azından runalarımız var.
Matt P.

Yanıtlar:


418

Tek bir SSMS örneğinde birden çok sunucuya farklı kullanıcı olarak bağlanmanın bir yolu olmasa da, aradığınız şey aşağıdaki RUNAS sözdizimidir:

runas /netonly /user:domain\username program.exe

"/ Netonly" anahtarını kullandığınızda, şu anda üyesi olmadığınız bir etki alanında, güven ayarlanmış olmasa bile uzak kimlik bilgilerini kullanarak oturum açabilirsiniz. Yalnızca runas'a kimlik bilgilerinin uzak kaynaklara erişmek için kullanılacağını söyler - uygulama şu anda oturum açmış olan kullanıcı olarak yerel bilgisayarla etkileşime girer ve kimlik bilgilerini verdiğiniz kullanıcı olarak uzak bilgisayarlarla etkileşime girer.

Yine de birden fazla SSMS örneği çalıştırmanız gerekir, ancak en azından her birinde farklı Windows kullanıcıları olarak bağlanabilirsiniz.


Örneğin: runas /netonly /user:domain\username ssms.exe


28
Aynı etki alanını ancak farklı bir kullanıcı istiyorsanız / netonly anahtarını bırakın.
jimconstable

5
Netonly anahtarı ile ilgili olan şey kesinlikle altındır. O kadar çok senaryoya ihtiyacım vardı. Teşekkürler.
Jivko Petiov

7
Bunu şu anda yapmanın en uygun yolu için +1. MS hala bir MSTSC / uzak masaüstü tarzı giriş iletişim kutusunu SSMS'ye katlayamaz ve bağlantı başına yapılandıramaz.
Paul Smith

7
Vaov! netonly! Fantastik. Çalıştırıldıktan sonra, windows auth ile uzak bir sunucuya bağlanmaya çalıştığınızda, netonly kullanıcıyı değil, yerel kullanıcınızı görüntüler. Bağlandığında sihir gibi görünüyor ...
TTT

2
User175017'nin aşağıdaki yanıtı benim için çalıştı, çok daha kolay görünüyor ve bir SSMS oturumunda sunucuya özgü windows bağlantılarına izin veriyor. Kısacası, Win 7'de "Kimlik Bilgisi Yöneticisi" ni çalıştırın ve <servername>: 1433 için Windows Kimlik Bilgilerini ekleyin; burada <servername> SQL Server makinesidir (MyServer.MyCompany.Com gibi).
David Korn

161

shiftSQL Server Mangement çalışma simgesine basılı tutun . Diğer windows hesabı kullanıcısı olarak çalıştırabilirsiniz.


31
Maalesef, hesap başka bir alan / ağda olduğunda çalışmaz - geçersiz kullanıcı adı / şifre döndürür. Yukarıdaki komut, hesabın başka bir ağda olmasına bakılmaksızın çalışır.
Jerad Rose

1
Bu benim için çalıştı! Benim durumumda aynı alan adı altında iki hesabım var.
Tathagata

Windows 10'da çalışıyor
wrkwrk

Benim için farklı bir alanda çalıştı.
Tahir Hassan

1
Diğer Windows hesabı kullanıcısı ve yönetici olarak nasıl çalıştırılır ?
Kiquenet

116

Keşfettiğim diğer bir yol da "Başlat"> "Denetim Masası"> "Depolanmış Kullanıcı Adları ve parolalar" a (Yönetimsel Araçlar> Windows 7'de Kimlik Bilgisi Yöneticisi) gidip "runas" komutuyla kullanacağınız etki alanı hesabını eklemektir. .

Ardından, SQL Management Studio 2005'te, sadece "Windows Kimlik Doğrulaması" nı seçin ve bağlanmak istediğiniz sunucuyu girin (gri renkli gördüğünüz kullanıcı hala yerel kullanıcı olsa da) ... ve çalışıyor!

Bana nedenini sorma! :)

Düzenleme: Kimlik Bilgisi Yöneticisi'ndeki sunucu adından sonra ": 1433" eklediğinizden emin olun; aksi takdirde etki alanına güvenmediği için bağlantı kurulamayabilir.


10
Dürüst olmak gerekirse, bu cevap işaretlenmelidir. Runas çözümü benim için işe yaramadı ve smss'in konsolda başlamasını sevmediği bir baş ağrısı yarattı, bu da smss'de çağırdığınızda olur. Ve bu gerçekleşmeyi bıraktığında bile, hala işe yaramadı. Ancak Kimlik Yöneticisi> Windows kimlik bilgileri eklendi. Sunucu adını, DOMAIN \ kullanıcı kullanıcı adınızı ve şifreyi girin. Tıpkı söylediği gibi, hala yerel kullanıcıyı GÖSTERECEK, ancak yine de bağlanıyor.
Brian Arsuaga

16
Ağ adresi olarak sqlserver.domain.com:1433 adresini kullanmanız gerekebilir. Bkz. Stackoverflow.com/questions/6944933
Greg Bray

7
Aslında bu benim için çalıştı, çok daha kolay görünüyor ve bir SSMS oturumunda sunucuya özgü windows bağlantılarına izin veriyor. "Kimlik Bilgisi Yöneticisi" ni çalıştırdım ve <servername>: 1433 için Windows Credentials ekledim; burada <servername> SQL Server makinesidir (MyServer.MyCompany.Com gibi).
David Korn

1
runasYöntem benim için işe yaramadı, ama bunu yaptı. Başlangıçta Kimlik Bilgisi Yöneticisi'nde bağlantı noktası bilgileri olmadan denedim, ancak yine de giriş yapamadım. Kimlik Bilgisi Yöneticisi'ne bağlantı noktası bilgilerini eklediğimde, bir cazibe gibi çalıştı. Bunun için çok teşekkür ederim!
René

1
Bu en şık çözüm olabilir. Bir etki alanının parçası bile olmayan bir SQL 2012 bağımsız örneğine bağlanmak için Windows 8.1'de çalışır. <sunucuadı>: 1433
Tim Lehner

10

runas /netonly /user:domain\username program.exeKomut yalnızca benim için çalıştıWindows 10

  • toplu iş dosyası olarak kaydetme
  • yönetici olarak çalıştırmak,

komut toplu işini normal kullanıcı olarak çalıştırırken önceki yorumlarda bazı kullanıcılar tarafından belirtilen yanlış parola sorununu aldım.


Bu benim için de işe yaradı, alanlar arasında güven ilişkisi yok. SSMS'yi başlatabiliyor ve diğer etki alanları hesabını kullanarak bir SQL sunucusuna bağlanabiliyordum (kullanıcı arayüzünde yerel etki alanı hesabını kullanacağını söylüyor olsa bile
Neil

10

Bu cevapların hiçbiri ihtiyacım olanı yapmadı: Yerel makinemde oturum açtığımdan farklı bir etki alanı hesabı kullanarak uzak bir sunucuya giriş yapın ve bu bir vpn'de bir istemcinin etki alanıdır. Onların alanında olmak istemiyorum!

Bunun yerine, sunucuya bağlan iletişim kutusunda "Windows Kimlik Doğrulaması" nı seçin, Seçenekler düğmesini tıklatın ve ardından Ek Bağlantı Parametreleri sekmesinde şunu girin:

user id=domain\user;password=password

SSMS hatırlamaz, ancak bu hesaba bağlanır.


Bu benim için SQL Server Management Studio 2017'de çalıştı
natbob1

6

Biraz powershell büyüsü hile yapacak:

cmdkey /add:"SERVER:1433" /user:"DOMAIN\USERNAME" /pass:"PASSWORD"

Ardından Windows kimlik doğrulamasını seçin


1

Windows 10 için: Menüde Sql Management Studio Simgesine veya Kısayol'a gidin: Sağ Tık> Dosya Konumunu Aç'ı Seç

resim açıklamasını buraya girin

Shift tuşunu basılı tutun ve klasördeki kısayolu veya ssms.exe dosyasını tıklatın. Vardiyayı basılı tutmak size ek bir "Farklı kullanıcı olarak çalıştır" seçeneği sunar:

resim açıklamasını buraya girin

Bu bir giriş kutusu açar ve oturumunuzun altında çalışmasını istediğiniz kimlik bilgilerini yazabilirsiniz.


0

Birinin bu tür bir senaryoyu dağıtmak isteyebileceği birçok yer vardır, ancak tümleşik kimlik doğrulamanın çalışma şekli nedeniyle mümkün değildir.

Gbn'den bahsedildiği gibi, tümleşik kimlik doğrulaması Windows kimliğinize karşılık gelen özel bir simge kullanır. Etkinliği başka bir Windows kullanıcısı olarak etkin bir şekilde gerçekleştirmenize olanak tanıyan "kimliğe bürünme" (muhtemelen Farklı Çalıştır ... komutu tarafından kullanılır) adı verilen kodlama uygulamaları vardır, ancak keyfi olarak farklı bir kullanıcı olarak hareket etmenin bir yolu yoktur (à la Linux) Windows uygulamalarında.

Birkaç alanda gerçekten birden fazla sunucuyu yönetmeniz gerekiyorsa, aşağıdakilerden birini düşünebilirsiniz:

  1. Hesabınızın güvenen alandaki bilgisayarlara erişebilmesi için alanlarınız arasında Alan Adı Güvenini ayarlayın
  2. Bu şekilde giriş yapabilmeniz için yönetmeniz gereken tüm sunucular arasında bir SQL kullanıcısı (karışık kimlik doğrulaması kullanarak) yapılandırın; açıkçası, bu bazı güvenlik sorunlarını ortaya çıkarabilir ve bir noktada tüm şifreleri değiştirmek zorunda kalırsanız bir bakım kabusu yaratabilir.

Umarım bu yardımcı olur!


mümkün değil yanlış ... yukarıdaki runas / netonly / kullanıcı: domain \ username program.exe gayet iyi çalışıyor.
Chris Pierce

-3

İstediğinizi elde etmenin tek yolu, kısayolu sağ tıklayıp 'Farklı çalıştır' özelliğini kullanarak çeşitli SSMS örneklerini açmaktır.


3
Tek yol? Bir şey değil.
Michel de Ruiter
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.