Điều này có giống như kịch bản của bạn không?
- Ứng dụng web IIS được xây dựng trên máy cục bộ
- Ứng dụng web sử dụng xác thực cửa sổ
- Ứng dụng web cũng nói chuyện với cơ sở dữ liệu trên máy cục bộ
- Người dùng ứng dụng web cũng có thông tin đăng nhập cơ sở dữ liệu hợp lệ
- Thông tin đăng nhập của người dùng ứng dụng web được chuyển tới cơ sở dữ liệu thông qua kết nối đáng tin cậy
Mọi thứ hoạt động tuyệt vời. Sau đó, bạn di chuyển nó sang một môi trường khác, nơi cơ sở dữ liệu và IIS không còn trên cùng một máy chủ và sau đó bạn không thể nhận được cơ sở dữ liệu để nhận dạng thông tin mà IIS đang chuyển vào?
Nếu vậy, thì chào mừng bạn đến với địa ngục của tôi vài tháng trước. Vấn đề là một khi hai tiến trình không nằm trên cùng một hộp, chúng sẽ không tin tưởng nhau nữa. Cần có quyền quản trị mạng để hai quá trình tin cậy lẫn nhau qua các ranh giới máy chủ. Rất tiếc, tôi không viết blog về nó nhưng các bước chung là
- đánh dấu tài khoản dịch vụ IIS là đáng tin cậy (Cài đặt thư mục hoạt động)
- đặt tên chính của dịch vụ (SPN) thành tên netbios hoặc FQDN
- một cái gì đó phải được đặt trên cả hai hộp để cho biết họ có thể tin tưởng lẫn nhau
Xin lỗi vì hồi ức mơ hồ và vì tôi không phải là người có thông tin đăng nhập để sửa bất cứ thứ gì, nên tôi chỉ có thể quan sát họ nhấp vào các nút. Bài viết bắt đầu về Cách kết nối với SQL Server bằng Windows Authentication đã đưa chúng tôi khá xa trên đường đua.