2012-01-12 21 views
8

Tôi biết một số tiền hợp lý về cách xác thực Kerberos hoạt động, nhưng đối với cuộc sống của tôi, tôi không thể giải thích một hành vi lạ mà tôi thấy với dịch vụ WCF được lưu trữ trên IIS.Tại sao BasicHttpBinding không có tên chính để sử dụng Kerberos Auth trên IIS7?

Tôi đã thiết lập một ứng dụng WCF cực kỳ đơn giản hiển thị điểm cuối bằng BasicHttpBinding với TransportCredentialOnly. Sự hiểu biết của tôi là để Kerberos hoạt động, Tên chính của Người dùng hoặc Tên chính của Dịch vụ phải được chỉ định bởi máy khách. Đối với một số lý do nó không có vẻ phù hợp trên các loại ràng buộc khác nhau.

Khi tôi bỏ qua tên chính này, trên IIS6, NTLM kết thúc được sử dụng. Trên IIS7, nó sử dụng Kerberos. Khi tôi chỉ định Tên người dùng chính trên IIS6, Kerberos được sử dụng nhưng trên IIS7 các cuộc gọi không thành công (Wireshark hiển thị lỗi KRB_AP_ERR_BADMATCH trong quá trình bắt tay Kerberos).

Sẽ thú vị hơn nữa khi tôi chuyển liên kết thành WSHttpBinding bằng tính năng Bảo mật thư. Trong thử nghiệm đó nếu tôi không chỉ định Tên người dùng chính trên IIS6 cuộc gọi không thành công, và trên IIS7 NTLM được sử dụng. Khi tôi chỉ định UPN, IIS6 không thành công và II7 kết thúc bằng Kerberos. Dưới đây là tóm tắt những phát hiện của tôi. Nếu bất cứ ai ngoài kia có thể giúp tôi cuốn hút tâm trí của mình xung quanh những gì đang xảy ra, tôi sẽ mãi mãi biết ơn.

Summary table

Trả lời

2

Bạn có biết về xác thực chế độ lõi trong IIS 7 không? Nó loại bỏ sự cần thiết phải sử dụng một danh tính tùy chỉnh cho các hồ bơi ứng dụng, và nó cũng (trong hầu hết các trường hợp) loại bỏ sự cần thiết phải chỉ định SPNs để nhận dạng tùy chỉnh hoặc máy chủ.

Here's a blog post mô tả thời điểm bạn cần đặt SPN khi sử dụng xác thực chế độ lõi.

+0

Ahh, đó là một điều thú vị. Cảm ơn @ John - điều này có thể được chính xác những gì đang gây ra sự khác biệt giữa IIS6 và IIS7. Tôi sẽ thử nghiệm xung quanh bằng cách tắt xác thực Chế độ hạt nhân và xem hiệu ứng nào có. Tôi sẽ quay lại và cập nhật điều này làm câu trả lời nếu có. –

Các vấn đề liên quan