Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Đăng nhập máy chủ SQL tên miền chéo bằng xác thực Windows

Như đã đề cập trong bản cập nhật câu hỏi của tôi, việc thay đổi tài khoản dịch vụ thành Domain2 đã giải quyết vấn đề. Vậy điều gì đã xảy ra?

Vấn đề - Giải thích

Theo những gì tôi có thể cho biết (cũng với sự trợ giúp từ đại diện của Microsoft), bởi vì tài khoản dịch vụ ban đầu là một Domain1 người dùng, nó không thể xác định miền cục bộ mà người dùng kết nối là thành viên khi người dùng xác thực qua Kerberos. Nguyên nhân chính cho rằng đây là sự cố Kerberos là khi tôi kết nối thành công bằng "Ống được đặt tên" vì điều này sử dụng xác thực NTLM.

Giải pháp tổng thể

Để kết hợp tất cả lại với nhau, để thêm thành công người dùng từ Domain1Domain3 với tư cách là thành viên của các nhóm trong Domain2 để các nhóm có thể được sử dụng làm thông tin đăng nhập SQL Server với xác thực Windows, sau đây là danh sách các yêu cầu (hoặc ít nhất là được khuyến khích mạnh mẽ):

  1. Mối quan hệ tin cậy được thiết lập giữa các miền
    1. Tối thiểu, phải thiết lập độ tin cậy 1 chiều để Domain2 trusts Domain1Domain3
  2. Các nhóm trong Domain2 phải được xác định phạm vi "Tên miền cục bộ"
    1. Điều này là để bạn có thể thêm người dùng và nhóm từ Domain1Domain3
    2. Xem tại đây để biết thêm thông tin
  3. Sử dụng Trình quản lý Cấu hình Máy chủ SQL để chỉ định một Domain2 không phải quản trị viên người dùng làm danh tính tài khoản dịch vụ
    1. Tài liệu MSDN tại sao việc sử dụng tài khoản người dùng miền có thể được ưu tiên hơn
    2. Mặc dù trình quản lý cấu hình phải thêm người dùng vào các nhóm cục bộ SQL Server 2005 cụ thể cho bạn (tức là SQLServer2005MSSQLUser $ MY_MACHINE $ MY_INSTANCE), tôi đã gặp phải một số trường hợp không đúng như vậy. Vì vậy, chỉ cần kiểm tra các nhóm cục bộ của bạn để đảm bảo chúng đã được cập nhật phù hợp với Domain2 của bạn tài khoản người dùng.
    3. Mặc dù SQL Server được thiết lập sẽ tự động chỉ định các quyền thích hợp cho các nhóm cục bộ của chúng, nhưng một lần nữa, tôi đã gặp phải một số trường hợp không đúng như vậy. Nếu điều này xảy ra với bạn, bạn có thể tham khảo bài viết MSDN này cùng với bài viết đã đề cập trước đó để biết các yêu cầu về quyền.
  4. Định cấu hình Tên chính của Dịch vụ (SPN) cho máy chủ phiên bản SQL Server (bao gồm bất kỳ bí danh nào) và Domain2 tài khoản dịch vụ
    1. SPN là bắt buộc để xác thực lẫn nhau giữa máy khách và máy chủ lưu trữ
    2. Xem bài viết TechNet này để biết thêm thông tin
  5. Tùy thuộc vào cách bạn định sử dụng tính năng mạo danh, bạn có thể muốn bật Domain2 tài khoản dịch vụ đáng tin cậy để ủy quyền
    1. Xem bài viết TechNet này để biết thêm thông tin
  6. Bật các kết nối từ xa cho phiên bản Dịch vụ SQL
  7. Cuối cùng, tạo thông tin đăng nhập cho Domain2 mong muốn nhóm và bất kỳ Domain1 nào hoặc Domain3 các thành viên có thể kết nối từ xa!

Lưu ý

Như mọi khi với bất kỳ hoạt động mạng từ xa nào, hãy kiểm tra tường lửa của bạn để đảm bảo các cổng SQL Server của bạn không bị chặn. Mặc dù cổng mặc định là 1433, hãy kiểm tra để đảm bảo rằng cổng của bạn ở trạng thái rõ ràng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sử dụng lược đồ cơ sở dữ liệu trong SQL Server

  2. Làm cách nào để chuyển một danh sách dưới dạng tham số trong một thủ tục được lưu trữ?

  3. 3 phương pháp kết nối tệp MDF với SQL Server

  4. Cách tốt nhất để đối phó với DBNull's là gì

  5. Cách thêm cột được tính toán trong bảng SQL Server - Hướng dẫn SQL Server / T-SQL Phần 47