การเข้าสู่ระบบ Microsoft SQL Server โดยใช้ข้อมูลประจำตัวของ Active Directory


13

เซิร์ฟเวอร์ Microsoft SQL ของเรากำลังทำงานบน Windows Server ซึ่งเป็นส่วนหนึ่งของโดเมน Active Directory

เพื่อการจัดการผู้ใช้ที่ง่ายการอนุญาต SQL ของเรานั้นถูกตั้งค่าโดยใช้กลุ่มผู้ใช้ Active Directory ดังที่อธิบายไว้ในโพสต์นี้

ตอนนี้ใช้ได้ดีตราบใดที่ทุกคนทำงานในโดเมน ผู้คนลงชื่อเข้าใช้คอมพิวเตอร์โดยใช้ข้อมูลรับรอง AD ของพวกเขาและสามารถเชื่อมต่อกับเซิร์ฟเวอร์ SQL ได้โดยใช้ "Windows Authentication"

ปัญหาคือผู้ใช้ของเราจะทำงานบนคอมพิวเตอร์ไคลเอนต์อื่นที่ไม่ได้เป็นส่วนหนึ่งของโดเมน Active Directory (และการเพิ่มลงในโดเมนไม่ใช่ตัวเลือก)

ฉันหวังว่าพวกเขาจะสามารถใช้ข้อมูลรับรอง AD ของพวกเขาเพื่อเข้าสู่เซิร์ฟเวอร์โดยใช้การตรวจสอบความถูกต้องของโฆษณาตามที่กล่าวไว้ในหน้าจอเข้าสู่ระบบของเซิร์ฟเวอร์ SQL

หน้าจอเข้าสู่ระบบเซิร์ฟเวอร์ SQL

อย่างไรก็ตามเรื่องนี้ดูเหมือนจะไม่ทำงาน

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

Cannot connect to x.x.x.x.

===================================

A connection was successfully established with the server, but then an error occurred during the login process. (provider: SSL Provider, error: 0 - The certificate chain was issued by an authority that is not trusted.) (.Net SqlClient Data Provider)

------------------------------
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&EvtSrc=MSSQLServer&EvtID=-2146893019&LinkId=20476 (page does not exist)

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

Cannot connect to x.x.x.x.

===================================

Login failed for user ''. (.Net SqlClient Data Provider)

การตั้งค่าที่ฉันต้องการจะทำได้หรือไม่ และถ้าเป็นเช่นนั้นฉันจะบรรลุได้อย่างไร :)

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


เปิดC:\WINDOWS\system32\cliconfg.exeและตรวจสอบเพื่อดูว่าเปิดใช้งานการเข้ารหัสโปรโตคอลบังคับหรือไม่ ถ้ามันถูกปิดการใช้งานมัน
Drifter104

ไม่เปิดใช้งาน
Gilles Lesire

2
ปัญหาที่น่าสนใจ ดูเหมือนว่าจะใช้ได้: runas /netonly /user:domain\username "c:\path\ssms.exe" mssqltips.com/sqlservertip/3250/…
Michal Sokolowski

คำตอบ:


10

ข้อความแสดงข้อผิดพลาดคือใบรับรองที่ออกโดยหน่วยงานที่ไม่น่าเชื่อถือ นั่นอาจเป็นโดเมนโฆษณาของคุณ

วิธีแก้ปัญหาสองสามข้อที่คุณอาจต้องการลอง:

  1. โพสต์ dba.stackexchange.com นี้แนะนำให้คลิกปุ่มตัวเลือกในหน้าต่างการเชื่อมต่อของคุณด้านบนและเพิ่มTrustServerCertificate=Trueภายใต้พารามิเตอร์การเชื่อมต่อเพิ่มเติม นี่เป็นการบอก SSMS ว่าใช่คุณก็รู้
  2. หากวิธีนี้ใช้ไม่ได้ผลdba.stackexchange.com จะแนะนำให้ใช้ runas เพื่อหลอกลวง Windows ตัวอย่างเช่นrunas /netonly /user:domain\username "C:\path_to\ssms.exe"ฉันไม่เคยทำสิ่งนี้กับ SSMS แต่มันก็คุ้มค่าที่จะลองใช้เพราะ OP ดูเหมือนจะอยู่ในสถานการณ์ที่คล้ายกับคุณ

อย่างไรก็ตามหวังว่าหนึ่งในวิธีแก้ปัญหาเหล่านั้นจะทำเคล็ดลับสำหรับคุณ


1
วิธีแก้ปัญหาแรกไม่ได้ผลมันมีอยู่แล้วในคำถามของฉัน วิธีที่สองดูเหมือนจะใช้งานได้ดีเมื่อล็อกอินแล้วยังบอกว่า windows ของฉันอยู่ถัดจากการเชื่อมต่อต้องทำการทดสอบบางอย่างถ้าเป็นบัญชีโดเมนจริง ๆ และทำงานได้อย่างถูกต้องตามที่หวังไว้ ไขว้นิ้วเอาไว้.
Gilles Lesire

หาก runas ทำงานได้มีวิธีการหลีกเลี่ยงพรอมต์คำสั่งหรือไม่? ไม่ใช่ผู้ใช้ของเราทุกคนที่มีความชำนาญด้านเทคโนโลยี
Gilles Lesire

3
คุณอาจสร้างทางลัดที่กำหนดเองได้ไหม ที่จริงฉันเพิ่งทดสอบตัวเองโดยการเพิ่มrunas /netonly /user:domain\username สตริงเริ่มต้นของทางลัดที่คัดลอก มันทำงานได้ดีแม้ว่ามันจะโผล่พรอมต์คำสั่งให้พวกเขาป้อนข้อมูลประจำตัว
Katherine Villyard

หรือใช้ Sysinternals ShellRunAs
noam

1

วิธีที่ง่ายที่สุดคือเพียงคลิกขวาที่ "Microsoft SQL Server Management Studio" - "more" เลือก "Run as a user" มันใช้งานได้สำหรับฉัน ฉันคิดว่าถ้าฉันเลือก "Active Directory - รหัสผ่าน" จากหน้าจอเข้าสู่ระบบที่จะทำงานเดียวกัน แต่ ... น่าเสียดายที่มันไม่ได้

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