ข้อผิดพลาดในการเข้าสู่ระบบ Windows Auth ของ SQL Server 2008: การเข้าสู่ระบบมาจากโดเมนที่ไม่น่าเชื่อถือ


110

เมื่อพยายามเชื่อมต่อกับอินสแตนซ์ SQL Server 2008 โดยใช้ Management Studio ฉันได้รับข้อผิดพลาดต่อไปนี้:

เข้าสู่ระบบล้มเหลว การเข้าสู่ระบบมาจากโดเมนที่ไม่น่าเชื่อถือและไม่สามารถใช้กับการรับรองความถูกต้องของ Windows (Microsoft SQL Server ข้อผิดพลาด: 18452)

ฉันสามารถเข้าสู่ระบบโดยใช้ SQL Authentication ได้โดยไม่มีปัญหา ฉันได้รับข้อผิดพลาดนี้ในทันที ฉันเปิดใช้งานการรับรองความถูกต้องของโหมดผสม

ใครมีประสบการณ์เกี่ยวกับเรื่องนี้บ้าง?

ข้อมูลเพิ่มเติม: รุ่น 64 บิตของ SQL Enterprise Edition บน Windows 2003 Server


1
บัญชีเข้าสู่ระบบ windows ที่ใช้สำหรับเชื่อมต่อกับเซิร์ฟเวอร์ sql คืออะไร?
Gulzar Nazim

1
มันเป็นบัญชีโดเมนของฉันที่ฉันใช้มาตลอด
jinsungy

2
การเปลี่ยนแปลงใด ๆ เมื่อเร็ว ๆ นี้เช่นการเปลี่ยนรหัสผ่าน? บางครั้งข้อมูลประจำตัวจะถูกแคช ..
Gulzar Nazim

1
ไม่มีการเปลี่ยนแปลงเมื่อเร็ว ๆ นี้ .. สิ่งเดียวที่เกิดขึ้นคือการรีบูตเซิร์ฟเวอร์ของเรา ..
jinsungy

คำตอบ:


49

อีกสาเหตุหนึ่งที่อาจเกิดขึ้น (เพิ่งเกิดขึ้นกับฉัน) ... คือรหัสผ่านของผู้ใช้หมดอายุ ฉันไม่ได้ตระหนักถึงสิ่งนี้จนกว่าฉันจะลองรีโมตเข้าสู่เซิร์ฟเวอร์จริงและได้รับแจ้งให้เปลี่ยนรหัสผ่าน


เพิ่งมีปัญหานี้ น่าแปลกที่ฉันยังสามารถเชื่อมต่อกับ Analysis Server: O
GôTô

ยืนยันได้เลยว่า.. นี่เป็นปัญหาเดียวกันกับผมเช่นกัน การอัปเดตรหัสผ่านช่วยแก้ปัญหาการเชื่อมต่อได้ทันที!
wjhguitarman

1
เพิ่งเกิดขึ้นสำหรับฉัน (Win 10) ในขณะที่รหัสผ่านของฉันไม่ได้หมดอายุฉันเพิ่งเปลี่ยนผ่าน 'Ctrl-Alt-Del' ฉันเริ่มต้นใหม่และมันก็ดีอีกครั้ง น่ารำคาญอย่างยิ่งการเปลี่ยนรหัสผ่านยังส่งผลต่อความสามารถในการทำงานของ Outlook และ OneDrive
aSystemOverload

ขอบคุณบันทึกชีวิตของฉัน
user3201809

เปลี่ยนรหัสผ่านด้วย Ctrl-Alt-Del, (Win10) และเริ่มรับข้อผิดพลาดนี้ การรีสตาร์ทไม่ได้ช่วยแก้ปัญหา
Ymagine First

38

สำหรับฉันสิ่งนี้เกิดขึ้นเมื่อฉันแก้ไขdrivers/etc/hostsไฟล์เปล่าและเพิ่มรายการสำหรับเว็บไซต์ท้องถิ่น แต่ไม่ได้เพิ่ม127.0.0.1 localhost


1
ทำงานให้ฉันเช่นกัน ฉันมีรายการในไฟล์โฮสต์ซึ่งไม่ควรอยู่ที่นั่น (ฉันไม่ได้วางไว้ที่นั่นด้วยตัวเองและจำไม่ได้ว่าติดตั้งซอฟต์แวร์ใด ๆ ที่สามารถทำได้) การลบจะช่วยแก้ปัญหาได้
LazyOne

2
สำหรับ Windows คุณสามารถ uupdate ไฟล์นี้โดยทำที่rackspace.com/knowledge_center/article/…
oaamados

1
คุณช่วยวันของฉัน! ขอบคุณ
Houari

29

ปัญหานี้เกิดจากเซิร์ฟเวอร์ Active Directory ซึ่งแน่นอนว่าไม่สามารถรับรองความถูกต้องของบัญชี Windows ได้ ขอบคุณสำหรับความช่วยเหลือ.


18

สำหรับใครก็ตามที่พบปัญหานี้ฉันมีสิ่งนี้ในไฟล์โฮสต์ของฉัน:

127.0.0.1   localhost
127.0.0.1   customname

และฉันต้องการให้เป็นสิ่งนี้:

127.0.0.1   localhost
127.0.0.1   localhost   customname

16

"ปัญหานี้เกิดจากเซิร์ฟเวอร์ Active Directory ซึ่งไม่สามารถรับรองความถูกต้องของบัญชี Windows ได้"

ไม่ใช่ "แน่นอน - เพราะถ้า AD ไม่พร้อมใช้งานการรับรองความถูกต้องของ Kerberos จะกลับไปที่ NTLM (ข้อมูลประจำตัวของบัญชีโดเมนถูกแคชไว้ในเครื่องคุณสามารถเข้าสู่ระบบได้แม้ว่า AD / Kerberos จะไม่พร้อมใช้งานก็ตาม) ฉันเดาว่าคุณอาจมี 2 เงื่อนไขพร้อมกันสำหรับความล้มเหลวนี้จะเกิดขึ้น:

  • SQL Server ไม่ใช่ภายในเครื่อง (บนเครื่องอื่น)
  • ความไว้วางใจได้รับการกำหนดค่า "Kerberos เท่านั้น"

หรือการกำหนดค่าเครือข่าย / เซิร์ฟเวอร์ / AD / เครื่องความปลอดภัยเฉพาะอื่น ๆ


2
ฉันยังเห็นปัญหานี้กับเซิร์ฟเวอร์ที่มีชื่อโฆษณาบนเครื่องท้องถิ่น FWTW
Keith Hoffman

1
ดังนั้นฉันควรทำอย่างไรหากเซิร์ฟเวอร์ SQL ไม่ใช่ภายในเครื่อง?
Behnam Heydari

จะเปลี่ยนการกำหนดค่า "trust" ซึ่งปัจจุบันเป็น "Kerberos only" ได้อย่างไรและอย่างไร
TPAKTOPA

10

ฉันมีปัญหานี้สำหรับอินสแตนซ์เซิร์ฟเวอร์บนเครื่องท้องถิ่นของฉันและพบว่าเป็นเพราะฉันชี้ไปที่ 127.0.0.1 ด้วยสิ่งอื่นที่ไม่ใช่ "localhost" ในไฟล์โฮสต์ของฉัน มีสองวิธีในการแก้ไขปัญหานี้ในกรณีของฉัน:

  1. ล้างรายการที่ไม่เหมาะสมซึ่งชี้ไปที่ 127.0.0.1 ในไฟล์โฮสต์
  2. ใช้ "localhost" แทนชื่ออื่นที่อยู่ในไฟล์โฮสต์ที่ชี้ไปที่ 127.0.0.1

* สิ่งนี้ใช้ได้เฉพาะกับฉันเมื่อฉันเรียกใช้อินสแตนซ์เซิร์ฟเวอร์ sql บนกล่องโลคัลของฉันและพยายามเข้าถึงจากเครื่องเดียวกัน


10

ตรวจสอบให้แน่ใจว่าคุณไม่ได้เชื่อมต่อกับ VPN บนโดเมน \ ผู้ใช้อื่น หรือในทางกลับกันตรวจสอบให้แน่ใจว่าคุณเชื่อมต่ออยู่หากเป็นสิ่งที่จำเป็น


ว้าวไม่เคยคิด !! ขอบคุณ! (ฉันเชื่อมต่อกับ VPN ของ บริษัท บน MBP โดยใช้ SSMS บน VMWare)
jenjenut233

สิ่งนี้ช่วยในกรณีของฉัน ฉันต้องใช้ชื่อโดเมนในการเชื่อมต่อ VPN
arni

นี่คือปัญหาของฉัน ฉันกำลังจะปล่อยให้มันเป็นคำตอบ แต่พบของคุณก่อน มันสมเหตุสมผลมากเมื่อฉันเห็นมัน ขอบคุณ
billpennock

4

ฉันแก้ไขปัญหานี้เมื่อเครื่องปิดใช้งานการตั้งค่าการตรวจสอบย้อนกลับ:

  1. แก้ไขรีจิสทรีของ Windows: เริ่ม -> เรียกใช้> Regedit
  2. ไปที่: HKLM \ System \ CurrentControlSet \ Control \ LSA
  3. เพิ่มค่า DWORD ที่เรียกว่า“ DisableLoopbackCheck”
  4. ตั้งค่านี้เป็น 1

3

ลองใช้ล็อกอินอื่นที่ถูกต้องโดยใช้คำสั่ง RUNAS

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 

ฉันลองใช้กับบัญชี windows อื่นในโดเมนเดียวกันและได้รับข้อผิดพลาดเดียวกัน
jinsungy

พยายามรับบันทึกเหตุการณ์เซิร์ฟเวอร์และไคลเอ็นต์ ฉันเดาว่าเราต้องการรายละเอียดเพิ่มเติม
Gulzar Nazim

3

สำหรับฉันมันเป็นเพราะฉันไม่ได้เพิ่มบัญชีให้มีบทบาทที่ฉันต้องการใช้กับฐานข้อมูล SQL เอง และเนื่องจากรหัสผ่านที่ไม่ถูกต้องพยายามผ่านการคัดลอกวางปัญหาการล็อกบัญชี


3

เอาล่ะมีคำตอบจากฉันอย่างสมบูรณ์ ฉันได้รับข้อผิดพลาดนี้จากสภาพแวดล้อมการพัฒนาที่โฮสต์บน VM VirtualBox สามเซิร์ฟเวอร์; SharePoint, SQL DB และ Domain Controller เซิร์ฟเวอร์ SharePoint ไม่สามารถเชื่อมต่อกับฐานข้อมูลการกำหนดค่า ฉันยังคงสามารถเชื่อมต่อผ่าน ODBC สำหรับการตรวจสอบสิทธิ์ Sql โดยใช้บัญชี SA แต่ไม่ใช่การรับรองความถูกต้องของ Windows แต่ผู้ใช้นั้นจะเข้าสู่ SSMS อย่างมีความสุขบนเซิร์ฟเวอร์ sql เอง ฉันได้รับข้อความแสดงข้อผิดพลาดที่ดีขึ้นจาก ODBC เช่นกันและจากการตรวจสอบข้อความการเข้าสู่ระบบที่ล้มเหลวบนเซิร์ฟเวอร์ sql:

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

ไม่สามารถรับเครดิตในเรื่องนี้ได้เนื่องจากฉันขอความช่วยเหลือจากผู้ดูแลระบบองค์กรของเราคนหนึ่งและเขาวินิจฉัยว่าในเวลาประมาณ 5 นาทีในการดูภาพหน้าจอสองสามภาพที่ฉันส่งให้เขา ปัญหาคือนาฬิกาของ Domain Controller ถูกตั้งค่าไม่ถูกต้อง! ไม่อยากจะเชื่อเลย เซิร์ฟเวอร์ได้รับการตั้งค่าสำหรับเครือข่ายเฉพาะโฮสต์ดังนั้นจึงไม่มีอินเทอร์เน็ตเพื่อซิงค์นาฬิกาด้วย นอกจากนี้ยังอธิบายว่าเหตุใดการย้อนกลับไปยังสแนปชอตก่อนหน้าเมื่อฉันรู้ว่าระบบกำลังทำงานไม่ได้แก้ปัญหา

แก้ไข: การติดตั้ง Guest Additions บนเซิร์ฟเวอร์จะซิงค์นาฬิกาของแขกกับโฮสต์


ฉันยังมีปัญหาในการตรวจสอบสิทธิ์ AD ในปีนี้ซึ่งในที่สุดก็ถูกตรวจสอบย้อนกลับไปยังการตั้งค่านาฬิกาที่ไม่ดีใน Domain Controller ของเรา ฉันต้องใช้ Wireshark เพื่อพิสูจน์ให้ฝ่ายไอทีของเราเห็นว่ามันเป็นปัญหาเครือข่าย แต่เมื่อฉันได้ดู ... พวกเขาซ่อมนาฬิกาและทุกอย่างก็เรียบร้อยดี
Ty H.

3

มีการตั้งค่าบนไดรเวอร์ jTDS ที่เรียกว่า USENTLMV2 ที่ตั้งค่าเป็นเท็จตามค่าเริ่มต้น การตั้งค่านี้เป็น 'true' ในซอฟต์แวร์ db ของฉัน (DBVisualizer) แก้ไขได้


3

สถานการณ์อื่นที่คุณอาจเห็นคือเมื่อคุณพยายามเชื่อมต่อกับเซิร์ฟเวอร์ SQL อื่นจากเซสชัน SSMS ที่ล็อกอินไว้แล้วในขณะที่คุณเปลี่ยนรหัสผ่าน ลำดับเหตุการณ์อาจมีลักษณะดังนี้:

  1. RDP ไปยัง Server-A (SQL Server ของคุณ) เปิด SSMS และเข้าสู่ระบบ
  2. RDP เป็น Server-B ในโดเมนเดียวกันและเปลี่ยนรหัสผ่านของคุณ
  3. กลับไปที่เซสชัน RDP บนเซิร์ฟเวอร์ A และผ่าน SSMS พยายามเพิ่มฐานข้อมูลอื่นในกลุ่มความพร้อมใช้งานตลอดเวลาที่มีอยู่ เมื่อเชื่อมต่อกับแบบจำลองคุณจะได้รับ "โดเมนที่ไม่น่าเชื่อถือ" -login-error

ในการแก้ไขปัญหาเพียงแค่ออกจากระบบและกลับเข้าสู่ระบบอีกครั้ง


3

คุณอาจเข้าใจผิดเกี่ยวกับชื่อผู้ใช้ที่คุณใช้ในเครื่อง นั่นเป็นกรณีของฉันใน Windows 10 Home เมื่อฉันมองไปที่ผู้ใช้ในแผงควบคุมผมเห็นชื่อusrpc01 แต่เมื่อฉันพิมพ์net config workstationก็ปรากฏว่าชื่อของผู้ใช้เป็นspc01 ดูเหมือนว่ามีคนเปลี่ยนชื่อผู้ใช้ แต่ชื่อภายในยังคงไม่เปลี่ยนแปลง

ไม่ทราบวิธีแก้ไขชื่อผู้ใช้ windows (และชื่อโฟลเดอร์ภายใต้C:\Usersซึ่งหมายถึงชื่อภายในเดิมด้วย) ฉันได้เพิ่มบัญชีผู้ใช้ใหม่บนเซิร์ฟเวอร์ฐานข้อมูลของฉัน


1

ฉันพยายามเข้าสู่ SQL Server 2008 จากบัญชีโดเมน SQL Server 2008 โฮสต์บนคอมพิวเตอร์เวิร์กกรุ๊ปอื่นที่ไม่ได้เป็นส่วนหนึ่งของโดเมน ฟังดูแปลก ๆ บนเซิร์ฟเวอร์เวิร์กกรุ๊ปที่ SQL Server 2008 ทำงานอยู่ฉันต้องไปที่คุณสมบัติของระบบ | ชื่อคอมพิวเตอร์ (แท็บ) | เปลี่ยน (ปุ่ม) | การเปลี่ยนชื่อคอมพิวเตอร์ | เพิ่มเติม ... (ปุ่ม) และป้อน "คำต่อท้าย DNS หลักของคอมพิวเตอร์เครื่องนี้" (ว่างเปล่าดังนั้นให้ป้อนคำต่อท้ายที่ต้องการสำหรับเครือข่ายของคุณ) และเลือกช่อง "เปลี่ยนคำต่อท้าย DNS หลักเมื่อการเป็นสมาชิกโดเมนเปลี่ยน" ซึ่งอนุญาตให้กระบวนการรับรองความถูกต้องของ Windows เสร็จสมบูรณ์เมื่อเข้าสู่ระบบ SQL Server 2008


1

ฉันต้องใช้ netonly เพื่อให้สิ่งนี้ทำงานบน Windows สมัยใหม่:

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


1

อีกเหตุผลหนึ่ง> มีคนเปลี่ยนรหัสผ่านสำหรับผู้ใช้ SQL เริ่มต้น

สิ่งนี้เกิดขึ้นกับฉันเมื่อสองสามนาทีก่อนโดยเปลี่ยนไปใช้ตัวควบคุมโดเมนใหม่ ...


เพิ่งเกิดขึ้นกับฉัน ฉันเปลี่ยนรหัสผ่านในขณะที่ย้อนกลับไปและลืม (บันทึกข้อมูลรับรองแล้ว)
เบา ๆ

1

ฉันป้อนผิดในไฟล์โฮสต์ภายใต้ 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.

ตรวจสอบให้แน่ใจว่ามีรายการดังต่อไปนี้

127.0.0.1   localhost
127.0.0.1   localhost   servername

1

ฉันใช้นามแฝงสำหรับอินสแตนซ์ SQL Server ที่ชี้ไปที่ "127.0.0.1" การเปลี่ยนเป็น "localhost" แทนเป็นการหลอกลวง


1

หาก Sql Server ของคุณทำงานบนเซิร์ฟเวอร์ที่ไม่ได้เป็นส่วนหนึ่งของโดเมนและในสตริงการเชื่อมต่อคุณใช้ชื่อโดเมนที่มีคุณสมบัติครบถ้วน (เช่น xyz.mypc.com) กับ Integrated Security = True คุณอาจต้องเปลี่ยนไปใช้อย่างใดอย่างหนึ่ง ที่อยู่ IP, MachineName (SERVER01) หรือจุด (.) ในกรณีที่โฮสต์ภายในเครื่อง

สิ่งนี้ใช้ได้ผลสำหรับฉันการใช้ fqdn ทำให้เกิดข้อผิดพลาดข้างต้น


0

ในการเปิดใช้งานการรับรองความถูกต้องของ windows คอมพิวเตอร์ทั้งสองเครื่องจะต้องอยู่ในโดเมนเดียวกัน เพื่ออนุญาตให้สตูดิโอการจัดการส่งผ่านข้อมูลประจำตัวปัจจุบันและรับรองความถูกต้องในกล่อง sql


3
สิ่งนี้ไม่ถูกต้อง ไม่จำเป็นต้องอยู่ในโดเมนเดียวกัน พวกเขาสามารถอยู่ในโดเมนที่แตกต่างกันหากมีการตั้งค่าบัญชีที่มีชื่อและรหัสผ่านเดียวกันในทั้งสองโดเมน
Cody Schouten

0

สำหรับฉันฉันต้องยกเลิกการเชื่อมต่อ (เปลี่ยนกลุ่มงาน / โดเมน) จากโดเมนและเชื่อมต่อใหม่


คุณหมายถึงการเชื่อมต่อโดยใช้บัญชีภายในกับ SQL Server ระยะไกลในเวิร์กกรุ๊ปหรือไม่? สิ่งนี้จะใช้ได้เฉพาะเมื่อบัญชี Guest (หรือบัญชีทั่วไปอื่น ๆ ) ที่มีรหัสผ่านเดียวกันถูกเปิดใช้งานทั้งในเครื่อง SQL Server เครื่องที่เชื่อมต่อและใน SQL Server เมื่อเข้าสู่ระบบ
Gennady Vanin ГеннадийВанин

ฉันหมายถึงปลดจากนั้นกลับเข้ามามีส่วนร่วมกับกลุ่มโดเมน จากนั้นลองเข้าสู่ระบบอีกครั้งโดยใช้ Windows auth (ข้อมูลประจำตัวของโดเมน) บน MSSQL ระยะไกล
f01

0

และอีกสาเหตุหนึ่งที่เป็นไปได้: บัญชีภายในที่สร้างขึ้นใหม่บน DB Server มีชุดค่าสถานะ: "ผู้ใช้ต้องเปลี่ยนรหัสผ่านเมื่อเข้าสู่ระบบครั้งต่อไป"


0

นี่คือสิ่งที่แก้ไขสำหรับฉัน: คุณสมบัติของการเชื่อมต่อเครือข่ายคลิกที่: "Internet Protocol เวอร์ชัน 4 (TCT / IPv4)" คลิกปุ่ม "Properties" คลิกปุ่ม "ขั้นสูง" เลือกแท็บ "DNS" ลบข้อความใน "ส่วนต่อท้าย DNS สำหรับการเชื่อมต่อนี้"


0

ฉันไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ SQL จากระยะไกลได้เช่นกัน ทั้งเซิร์ฟเวอร์ SQL และเซิร์ฟเวอร์ระยะไกลที่อยู่ในโดเมนเดียวกัน และฉันได้รับการร้องขอให้เปลี่ยนรหัสผ่านเมื่อหลายวันก่อน การรีสตาร์ททั้งเซิร์ฟเวอร์ SQL และเซิร์ฟเวอร์ระยะไกลที่ฉันพยายามเข้าถึงเซิร์ฟเวอร์ SQL เป็นเคล็ดลับสำหรับฉัน


0

ในกรณีของเราเป็นความจริงที่ว่านักพัฒนากำลังเรียกใช้กลุ่มแอปพลิเคชันภายใต้บัญชีของเขาเองและได้รีเซ็ตรหัสผ่านของเขา แต่ลืมเปลี่ยนในกลุ่มแอปพลิเคชัน ดู ...


0

ในกรณีของฉันเซิร์ฟเวอร์ถูกปิดใช้งานในตัวควบคุมโดเมน ฉันเข้าไปใน COMPUTERS OU ใน Active directory คลิกขวาที่เซิร์ฟเวอร์เปิดใช้งานจากนั้นทำการ gpupdate / force จากเซิร์ฟเวอร์ SQL ใช้เวลาสักครู่ แต่ในที่สุดก็ใช้ได้ผล


0

ในกรณีของฉันในไฟล์โฮสต์ชื่อเครื่องถูกเข้ารหัสด้วย IP รุ่นเก่า ฉันแทนที่ IP เก่าด้วย IP ใหม่ปัญหาได้รับการแก้ไขแล้ว

ตำแหน่งไฟล์โฮสต์

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

แก้ไขเสร็จแล้ว 159.xx.xx.xxx MachineName


0

ข้างต้นไม่ได้ผลสำหรับฉัน สิ่งที่ฉันต้องทำคือ: ใน SQL Server Management Studio บนหน้าจอเข้าสู่ระบบให้เลือกตัวเลือก >> ในส่วนเครือข่ายเปลี่ยนโปรโตคอลเครือข่ายเป็นเนมไปป์

นอกจากนี้สิ่งที่ฉันต้องทำเพื่อให้ใช้งานได้กับการ<default>ตั้งค่าคือปิดการใช้งานเครือข่ายไร้สาย (เครื่องเชื่อมต่อกับ LAN แบบมีสายด้วย)


0

การแก้ไขของฉันคือการเปลี่ยนไฟล์ web.config ให้สัมพันธ์กับชื่อเซิร์ฟเวอร์ใหม่ของฉันสำหรับการเชื่อมต่อ SQL (IT Security เพิ่งทำการเปลี่ยนชื่อ netdom ในกล่องการพัฒนาของฉัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.