Xác thực Windows với IIS trên máy chủ cục bộ với url đủ điều kiện


9

Tôi có một ứng dụng web được thiết lập trong IIS 7 được cấu hình với Xác thực Windows. Tôi có thể xác thực với máy thông qua url đủ điều kiện từ bất kỳ máy nào khác và nó sử dụng Tên miền phù hợp. Tuy nhiên, khi tôi cố gắng kết nối với máy thông qua tên miền đủ điều kiện (trong dịch vụ khác hoặc chỉ qua url trong IE), lời nhắc Đăng nhập Windows cố gắng sử dụng máy tính làm miền, chứ không phải tên miền thích hợp để đăng nhập. Cố gắng chỉ định tên miền có domain\usernamehoặc username@domain.comkhông thành công.

Tôi nên lưu ý rằng việc xem ứng dụng web qua localhostmáy hoạt động, nhưng sử dụng site.company.com/webserviceurl kiểu đầy đủ không hoạt động trên máy cục bộ, vì tên miền đăng nhập bị sai. Tôi có thể làm gì để khiến nó sử dụng tên miền đăng nhập thích hợp?

Câu trả lời:


11

Tôi đã cố gắng làm điều tương tự. Truy cập một trang web trên IIS cục bộ bằng cách sử dụng FQDN và tiếp tục được thông báo về nơi sẽ đi bằng IIS.

Dù sao, từ việc đào của tôi, bạn phải vô hiệu hóa kiểm tra loopback cho các trang web IIS cục bộ.

Xem trang hỗ trợ của Microsoft sau đây .

Trong trường hợp trang bị mất, tôi đã làm như sau (đó là những gì anh ấy đề xuất trong bài viết trên blog)

  1. Mở trình soạn thảo sổ đăng ký bằng cách gõ regedit trong Run.
  2. Điều hướng đến HKEY_LOCAL_MACHINE \ HỆ THỐNG \ CurrentControlset \ Control \ Lsa \ MSV1_0
  3. Nhấp chuột phải vào MSV1_0 và nhấp vào Mới và chọn để biến nó thành Giá trị nhiều chuỗi.
  4. Nhập BackConnectionhostNames làm tên cho mục nhập và bấm đúp vào nó để sửa đổi nó.
  5. Nhập tên máy chủ bạn cần sử dụng (ví dụ code-jTHER.com).
  6. Khởi động lại dịch vụ IISAdmin (Bắt đầu trực tuyến -> Công cụ quản trị hành vi trực tiếp -> Dịch vụ trực tuyến

Hi vọng điêu nay co ich.

cmb ..


4

Điều này là do một tính năng bảo mật được gọi là LoopbackCheck.

Thông báo lỗi khi bạn cố truy cập máy chủ cục bộ bằng cách sử dụng FQDN hoặc bí danh CNAME của nó sau khi bạn cài đặt Windows Server 2003 Gói dịch vụ 1: "Truy cập bị từ chối" hoặc "Không nhà cung cấp mạng nào chấp nhận đường dẫn mạng đã cho"
http://support.microsoft .com / kb / 926642

Có hai nghị quyết:

Phương pháp 1 (được khuyến nghị): Tạo tên máy chủ của Cơ quan bảo mật cục bộ có thể được tham chiếu trong yêu cầu xác thực NTLM. Để thực hiện việc này, hãy làm theo các bước sau cho tất cả các nút trên máy khách:

  1. Bấm Bắt đầu, bấm Chạy, gõ regedit, rồi bấm OK.
  2. Xác định vị trí và sau đó nhấp vào khoá con đăng ký sau: HKEY_LOCAL_MACHINE \ HỆ THỐNG \ CurrentControlset \ Control \ Lsa \ MSV1_0
  3. Bấm chuột phải vào MSV1_0, trỏ đến Mới, sau đó bấm Giá trị nhiều chuỗi.
  4. Trong cột Tên, nhập BackConnectionhostNames, sau đó nhấn ENTER.
  5. Bấm chuột phải vào BackConnectionhostNames, rồi bấm Sửa đổi.
  6. Trong hộp Dữ liệu giá trị, nhập bí danh CNAME hoặc bí danh DNS, được sử dụng cho các chia sẻ cục bộ trên máy tính, sau đó bấm OK.

    Lưu ý: Nhập từng tên máy chủ trên một dòng riêng biệt.

    Lưu ý: Nếu mục đăng ký BackConnectionhostNames tồn tại dưới dạng loại REG_DWORD, bạn phải xóa mục đăng ký BackConnectionhostNames.

  7. Thoát Registry Editor, và sau đó khởi động lại máy tính.

Phương pháp 2: Vô hiệu hóa kiểm tra vòng lặp xác thực bằng cách đặt mục đăng ký DisableLoopbackCheck trong khoá con đăng kýHKEY_LOCAL_MACHINE \ HỆ THỐNG \ CurrentControlset \ Control \ Lsa thành 1. Để đặt mục đăng ký DisableLoopbackCheck thành 1, hãy làm theo các bước sau trên máy khách:

  1. Bấm Bắt đầu, bấm Chạy, gõ regedit, rồi bấm OK.
  2. Xác định vị trí và sau đó nhấp vào khoá con đăng ký sau: HKEY_LOCAL_MACHINE \ HỆ THỐNG \ CurrentControlSet \ Control \ Lsa
  3. Bấm chuột phải vào Lsa, trỏ đến Mới, rồi bấm Giá trị DWORD.
  4. Nhập DisableLoopbackCheck, sau đó nhấn ENTER.
  5. Bấm chuột phải vào DisableLoopbackCheck, rồi bấm Sửa đổi.
  6. Trong hộp Dữ liệu giá trị, nhập 1, rồi bấm OK.
  7. Thoát khỏi Trình chỉnh sửa sổ đăng ký.
  8. Khởi động lại máy tính.

Điều gì đã lừa tôi là lựa chọn thứ 2 - DisableLoopbackCheckingtrongHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
Icarus

1

Tôi có thể nói với bạn, dựa trên một số kinh nghiệm khi thiết lập SSO, IE sẽ tự động chuyển một vé kerberos để đăng nhập nếu trang web và ứng dụng khách nằm trong mạng nội bộ hoặc nếu trang web nằm trong vùng tin cậy. Nếu IE thấy http://site.company.com/webservice, nó sẽ cho rằng trang web đang ở trên internet và sẽ không chuyển thông tin đăng nhập.

Có một số thông tin hữu ích tại liên kết này liên quan đến IIS, IE và Kerberos. http://bloss.msdn.com/b/friis/archive/2009/12/31/things-to-check-when-kerberos-authentication-fails-USE-iis-ie.aspx

Hai điều chúng tôi thấy rằng hoạt động cho phép FQDN trên mạng nội bộ là cung cấp cho máy chủ web một chứng chỉ và sử dụng SSL hoặc thêm nó vào Vùng tin cậy.

Hy vọng điều này sẽ giúp liên quan đến thiết lập của bạn.


Điều này không giải quyết được vấn đề. Tôi đã thử thêm FQDN vào vùng tin cậy, nhưng không có kết quả. Tôi nghĩ mặc dù, điều đó giải quyết một vấn đề khác. Thêm nó vào vùng tin cậy cho phép xác thực tự động , điều mà tôi không cần - Tôi ổn với việc chỉ định thông tin đăng nhập, nhưng vấn đề là nó không chấp nhận tên miền được chỉ định của tôi cho thông tin đăng nhập - nó bị kẹt trên tên máy tính.
roviuser
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.