SQL Server 2008 Windows Kimlik Doğrulama Oturum Açma Hatası: Oturum açma, güvenilmeyen bir etki alanından geliyor


110

Management Studio kullanarak bir SQL Server 2008 Örneğine bağlanmaya çalışırken aşağıdaki hatayı alıyorum:

Giriş başarısız. Oturum açma, güvenilmeyen bir etki alanındandır ve Windows kimlik doğrulaması ile kullanılamaz. (Microsoft SQL Server, Hata: 18452)

SQL Kimlik Doğrulaması kullanarak sorunsuz oturum açabilirim. Bu hatayı birden bire alıyorum. Karışık Mod Kimlik Doğrulamasını açtım.

Bu konuda tecrübesi olan var mı?

Ek Bilgi: Windows 2003 Server'da SQL Enterprise Edition'ın 64-bit sürümü


1
sql sunucusuna bağlanmak için kullanılan windows oturum açma hesabı nedir?
Gulzar Nazim

1
sonsuza dek kullandığım alan hesabım
jinsungy

2
Son zamanlarda şifre değişikliği gibi herhangi bir değişiklik var mı? bazen kimlik bilgileri önbelleğe alınır ..
Gulzar Nazım

1
yakın zamanda değişiklik yok .. olan tek şey sunucularımızın yeniden başlatılmasıydı ..
jinsungy

Yanıtlar:


49

Bunun olmasının başka bir nedeni de (bana oldu) ... kullanıcının şifresinin süresinin dolması. Gerçek sunucuya uzaktan erişmeyi deneyene ve parolamı değiştirmem istenene kadar bunu fark etmemiştim.


Sadece bu sorunu yaşadım. Şaşırtıcı bir şekilde Analiz Sunucusuna hala bağlanabildim: O
GôTô

Doğrulayabilirim..bu benim için de aynı soruna neden oluyordu. Şifreyi güncellemek bağlantı sorununu anında çözdü!
wjhguitarman

1
Sadece benim için oldu (Win 10), parolamın süresi dolmamışken, 'Ctrl-Alt-Del' ile değiştirdim. Yeniden başlattım ve yine iyiydi. Son derece can sıkıcı olan parolanın değiştirilmesi, Outlook ve OneDrive'ın çalışma yeteneğini de etkiledi.
aSystemOverload

Teşekkürler, Hayatımı
kurtardı

Şifremi Ctrl-Alt-Del, (Win10) ile değiştirdim ve bu hatayı almaya başladım. Yeniden başlatmak sorunu çözmedi.
Ymagine First

38

Benim için bu, boş bir drivers/etc/hostsdosyayı düzenlediğimde ve yerel bir web sitesi için bir girdi eklediğimde, ancak eklemeyi ihmal ettiğimde oldu127.0.0.1 localhost


1
Benim için de çalıştı. Her nasılsa hosts dosyasında orada olmaması gereken bazı girdilerim oldu (oraya kendim koymadım ve bunu yapabilecek herhangi bir yazılım kurduğumu hatırlamıyorum). Kaldırmak sorunu çözdü
LazyOne

2
Windows için, rackspace.com/knowledge_center/article/… 'i yaparak bu dosyayı güncelleyebilirsiniz
oaamados

1
Günümü kurtardın! Teşekkürler
Houari

29

Sorun, elbette Windows hesabının kimliğini doğrulayamayan bir Active Directory Sunucusunun çökmesinden kaynaklanıyordu. Yardımınız için teşekkürler.


18

Bununla karşılaşan diğer herkes için, bunu ana bilgisayar dosyamda buldum:

127.0.0.1   localhost
127.0.0.1   customname

ve bunun şu olmasına ihtiyacım vardı:

127.0.0.1   localhost
127.0.0.1   localhost   customname

16

"Sorun, elbette Windows hesabının kimliğini doğrulayamayan kapalı bir Active Directory Sunucusundan kaynaklanıyordu"

Tabii ki "değil - çünkü AD mevcut değilse, Kerberos kimlik doğrulaması NTLM'ye geri döner (etki alanı hesabı kimlik bilgileri yerel olarak önbelleğe alınır, AD / Kerberos mevcut olmasa bile onunla oturum açılabilir). bu başarısızlığın gerçekleşmesi için eşzamanlı koşullar:

  • SQL Server yerel değil (başka bir makinede)
  • Güven "yalnızca Kerberos" olarak yapılandırılmıştır

veya diğer özel güvenlik ağı / sunucu / AD / makine yapılandırmaları


2
Bu sorunu yerel bir makine FWTW'de AD adlı sunucularda da gördüm
Keith Hoffman

1
Öyleyse, SQL sunucusu yerel değilse ne yapmalıyım?
Behnam Heydari

Şu anda "yalnızca Kerberos" olan "güven" yapılandırması nerede ve nasıl değiştirilir?
TPAKTOPA

10

Yerel makinemdeki bir sunucu örneği için bu sorunu yaşadım ve bunun, ana bilgisayar dosyamda "localhost" dışında bir şeyle 127.0.0.1'e işaret ettiğim için olduğunu gördüm. Benim durumumda bu sorunu çözmenin iki yolu var:

  1. Hosts dosyasında 127.0.0.1'e işaret eden rahatsız edici girişi temizleyin
  2. Ana bilgisayar dosyasında 127.0.0.1'e işaret eden diğer ad yerine "localhost" kullanın

* Bu sadece yerel kutumda sql sunucu örneğini çalıştırdığımda ve ona aynı makineden erişmeye çalışırken benim için çalıştı.


10

Başka bir etki alanında \ kullanıcı üzerinde bir VPN'e bağlı olmadığınızdan emin olun . Ya da tam tersine emin olun vardır o gerekenleri ise bağladı.


Vay canına, asla düşünmezdim !! Teşekkürler! (VMWare üzerinde SSMS kullanarak
MBP'de şirket VPN'sine bağlandım

Bu benim durumumda yardımcı oldu. VPN bağlantısında alan adını kullanmak zorunda kaldım.
arni

Bu benim sorunumdu. Cevap olarak bırakmak üzereydim ama seninkini ilk buldum. Gördüğümde çok mantıklı geldi. teşekkürler
billpennock

4

Geri döngü denetimi ayarını devre dışı bırakan makinede bu sorunu düzelttim:

  1. Windows kayıt defterini düzenleyin: Başlat -> Çalıştır> Regedit
  2. Şuraya gidin: HKLM \ System \ CurrentControlSet \ Control \ LSA
  3. "DisableLoopbackCheck" adlı bir DWORD değeri ekleyin
  4. Bu değeri 1 olarak ayarlayın

3

RUNAS komutunu kullanarak farklı bir geçerli giriş kullanmayı deneyin

runas /user:domain\user C:\Program Files\Microsoft SQL Server\90\Tools\Binn\VSShell\Common7\IDE\ssmsee.exe 

runas /user:domain\user C:\WINDOWS\system32\mmc.exe /s \”C:\Program Files\Microsoft SQL Server\80\Tools\BINN\SQL Server Enterprise Manager.MSC\”" 

runas /user:domain\user isqlw 

Bunu aynı etki alanındaki başka bir Windows hesabıyla denedim ve aynı hatayı aldım.
jinsungy

sunucu ve istemci olay günlüklerini almaya çalışın. sanırım daha fazla detaya ihtiyacımız var.
Gulzar Nazim

3

Benim için bunun nedeni, kullanmak istediğim rollere sahip hesabı SQL Veritabanına eklemememdi. Ve ayrıca kopyalama yapıştırma sorunu kilitleme hesabı yoluyla kötü bir şifre girişimleri nedeniyle.


3

Tamam, benden tamamen dışarıda cevap. Bu hatayı VM VirtualBox üzerinde barındırılan bir geliştirme ortamından alıyordum. Üç sunucu; SharePoint, SQL DB ve Etki Alanı Denetleyicisi. SharePoint sunucusu yapılandırma veritabanına bağlanamadı. SA hesabını kullanarak Sql kimlik doğrulaması için ODBC aracılığıyla hala bağlanabiliyordum ancak Windows kimlik doğrulamasını kullanamıyorum. Ancak bu kullanıcı, SQL sunucusunun kendisinde SSMS'de mutlu bir şekilde oturum açacaktır. ODBC'den de daha iyi bir hata mesajı aldım ve ayrıca sql sunucusundaki başarısız oturum açma mesajlarını kontrol ederek:

select text from sys.messages where message_id = '18452' and language_id = 1033

Bunun için kredi alamıyorum çünkü Kurumsal Sistem Yöneticilerimizden birinden yardım istedim ve ona gönderdiğim birkaç ekran görüntüsüne bakarak yaklaşık 5 dakika içinde teşhis koydu. Sorun, Etki Alanı Denetleyicisi'nin saatinin yanlış ayarlanmış olmasıydı! İnanamadım. Sunucular, Yalnızca Ana Bilgisayar ağı için ayarlanmıştır, bu nedenle saati senkronize etmek için internetiniz yoktur. Bu aynı zamanda sistemin çalıştığını bildiğim halde daha önceki bir anlık görüntüye dönmenin neden sorunu çözmediğini de açıklıyor.

Düzenleme: Konuk Eklemelerini sunucuya yüklemek, konuk saatini ana bilgisayarla senkronize eder.


Ayrıca bu yıl, Etki Alanı Denetleyicilerimizden birinde kötü saat ayarlarına kadar izlenen AD kimlik doğrulama sorunları yaşadım. BT departmanımıza bunun bir ağ sorunu olduğunu kanıtlamak için Wireshark'ı kullanmak zorunda kaldım, ancak onlara bakmalarını sağladıktan sonra ... saati düzelttiler ve her şey yolundaydı.
Ty H.

3

JTDS sürücüsünde USENTLMV2 adlı ve varsayılan olarak false değerine ayarlanmış bir ayar vardır. Bunu db yazılımımda (DBVisualizer) 'true' olarak ayarlamak sorunu çözdü.


3

Bunu görebileceğiniz başka bir senaryo, parolanızı değiştirirken zaten oturum açmış olan bir SSMS oturumundan başka bir SQL sunucusuna bağlanmaya çalıştığınız zamandır. Olay dizisi aşağıdaki gibi olabilir:

  1. RDP'den Sunucu-A'ya (SQL Sunucunuz), SSMS'yi açın ve oturum açın
  2. Aynı etki alanında Sunucu-B'ye RDP ve parolanızı değiştirin
  3. Sunucu-A'da RDP oturumuna dönün ve SSMS aracılığıyla mevcut bir AlwaysOn kullanılabilirlik grubuna başka bir DB eklemeyi deneyin. Eşlemelere bağlanırken "güvenilmeyen etki alanı" -login hatası alıyorsunuz

Çözmek için oturumu kapatın ve tekrar oturum açın


3

Yerel olarak kullandığınız kullanıcı adı konusunda yanıltıcı olabilirsiniz . Windows 10 Home'daki durumum buydu. Denetim masasında kullanıcılara baktığımda usrpc01 adını görüyorum . Ancak yazdığımda net config workstation, kullanıcının adının spc01 olduğu anlaşılıyor . Birisi kullanıcıyı yeniden adlandırmış gibi görünüyor, ancak dahili ad değişmeden kaldı.

Windows kullanıcı adını (ve altındaki klasör adını C:\Users, orijinal dahili adı da ifade eder) nasıl düzelteceğimi bilmeden , db sunucuma yeni bir kullanıcı hesabı ekledim.


1

Bir etki alanı hesabından bir SQL Server 2008'e giriş yapmaya çalışıyorum. SQL Server 2008, etki alanının parçası olmayan farklı bir çalışma grubu bilgisayarında barındırılır. Kulağa garip gelse de, SQL Server 2008'in çalıştığı çalışma grubu sunucusunda, Sistem Özellikleri | Bilgisayar Adı (sekme) | Değiştir (düğme) | Bilgisayar Adı Değişikliği | Daha fazla ... (düğme) ve "Bu bilgisayarın Birincil DNS son ekini" girin (boştu, bu nedenle ağınız için istediğiniz son eki girin) ve "Etki alanı üyeliği değiştiğinde birincil DNS son ekini değiştir" kutusunu işaretleyin. Bu, SQL Server 2008'de oturum açarken Windows Kimlik Doğrulama işleminin tamamlanmasına izin verdi.


1

Bunu modern Windows'ta çalıştırmak için netonly'yi kullanmak zorunda kaldım:

runas /netonly /user:domain\user "C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\ssms.exe"


1

Başka bir neden> birisi varsayılan SQL kullanıcısının parolasını değiştirdi

Bu, birkaç dakika önce yeni bir etki alanı denetleyicisine geçerek başıma geldi ...


Sadece bana oldu. Şifremi bir süre önce değiştirdim ve unuttum (kimlik bilgileri kaydedildi)
yumuşak bir şekilde

1

Altında ana bilgisayar dosyasında yanlış giriş yaptım C:\Windows\System32\drivers\etc

[Microsoft][SQL Server Native Client 11.0][SQL Server]Login failed. The login is from an untrusted domain and cannot be used with Windows authentication.

Aşağıdaki gibi giriş yaptığınızdan emin olun

127.0.0.1   localhost
127.0.0.1   localhost   servername

1

Bir SQL Server örneği için "127.0.0.1" i gösteren bir takma ad kullanıyordum. Bunun yerine "localhost" olarak değiştirmek hile yaptı.


1

Sql Sunucunuz bir etki alanının parçası olmayan bir sunucuda çalışıyorsa ve bağlantı dizesinde Integrated Security = True ile tam olarak nitelendirilmiş bir etki alanı adı (örn. Xyz.mypc.com) kullanıyorsanız, ikisinden birini kullanmaya geçmeniz gerekebilir. IP adresi, MakineAdı (SERVER01) veya yerel olarak barındırılması durumunda nokta (.).

Bu benim için çalıştı, fqdn'yi kullanmak yukarıdaki hataya neden oldu.


0

Windows kimlik doğrulamasını etkinleştirmek için her iki bilgisayarın da aynı etki alanında olması gerekir. yönetim stüdyolarının mevcut kimlik bilgilerini geçmesine ve sql kutusunda kimlik doğrulamasına izin vermek için


3
Bu yanlıştır. Aynı etki alanında olmaları gerekmez. Her iki alanda da aynı ada ve parolaya sahip bir hesap oluşturulmuşsa, bunlar farklı etki alanlarında olabilir.
Cody Schouten

0

Benim için, Etki Alanından bağlantıyı kesmem (çalışma grubunu / etki alanını değiştirmem) ve yeniden bağlanmam gerekiyor.


Çalışma grubundaki uzak SQL Server'a yerel hesap kullanarak bağlanmak mı istiyorsunuz? Bu, yalnızca aynı parolaya sahip Konuk (veya diğer bazı ortak) hesaplar hem SQL Server makinesinde, hem bağlanan makinede hem de oturum açma olarak SQL Server'ın kendisinde etkinleştirilirse çalışır.
Gennady Vanin Геннадий Ванин

Demek istediğim, bağlantıyı kestikten sonra etki alanı grubuyla yeniden etkileşim kurmak. Ardından, uzak MSSQL'de Windows kimlik doğrulaması (Etki alanı kimlik bilgileri) kullanarak oturum açmayı yeniden deneyin.
f01

0

Ve başka bir olası neden: DB Sunucusunda yeni oluşturulan yerel Hesap, "Kullanıcı bir sonraki Oturum Açmada Parolayı değiştirmelidir" Bayrak ayarına sahipti.


0

Benim için sorunu şu şekilde çözdü: Ağ bağlantısının özellikleri: "İnternet Protokolü Sürüm 4 (TCT / IPv4)" seçeneğine tıklayın. "Özellikler" düğmesini tıklayın. "Gelişmiş" düğmesini tıklayın. "DNS" sekmesini seçin. "Bu bağlantı için DNS son ekindeki" metni silin.


0

Ben de SQL sunucusuna uzaktan bağlanamadım. Aynı etki alanında hem SQL sunucusu hem de uzak sunucu. Ve birkaç gün önce benden şifre değişikliği talep edilmişti. Hem SQL sunucusunu hem de SQL sunucusuna erişmeye çalıştığım uzak sunucuyu yeniden başlatmak benim için hile yaptı.


0

Bizim durumumuzda, geliştiricinin uygulama havuzunu kendi hesabı altında çalıştırdığı ve şifresini sıfırladığı ancak uygulama havuzunda değiştirmeyi unuttuğu gerçeğiydi. Yaa ...


0

Benim durumumda, sunucu etki alanı denetleyicisinde devre dışı bırakılmıştı. Active Directory'deki COMPUTERS OU'ya girdim, sunucuya sağ tıkladım, etkinleştirdim, ardından SQL sunucusundan bir gpupdate / force yaptım. Biraz zaman aldı ama sonunda işe yaradı.


0

Benim durumumda, ana bilgisayar dosyasında, makine adı eski IP ile sabit kodlanmıştır. Eski IP'yi yenisiyle değiştiriyorum, sorun çözüldü.

Ana bilgisayar dosyası konumu

WindowsDrive: \ Windows \ System32 \ drivers \ etc \ hosts

Yapılan değişiklikler 159.xx.xx.xxx MachineName


0

Yukarıdakilerin hiçbiri benim için işe yaramadı. Yapmam gereken şuydu: Oturum açma ekranında SQL Server Management Studio'da, Seçenekler >> öğesini seçin Ağ bölümünde Ağ protokolünü Named Pipes olarak değiştirin.

Ayrıca, <default>ayarın çalışmasını sağlamak için yapmam gereken şey kablosuz ağı devre dışı bırakmaktı (makine aynı zamanda kablolu lan'a da bağlıydı).


0

Benim düzeltmem, web.config dosyasını SQL Bağlantısı için yeni sunucu adıma uygun olacak şekilde değiştirmekti (BT Güvenliği, geliştirme kutumda bir netdom yeniden adlandırması yapmıştı.

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.