Tôi có ứng dụng .NET 3.5 đang chạy dưới IIS 7 trên máy chủ Windows 2003 và không thể nhận được xác thực cửa sổ tích hợp hoạt động bình thường khi tôi tiếp tục nhận được thông báo đăng nhập. Tôi đã đặt Xác thực Windows thành bật trong IIS với tất cả các loại bảo mật khác bị tắt và xác thực / ủy quyền tệp web.config ứng dụng của tôi được thiết lập thành:
<system.web>
<compilation debug="true" strict="false" explicit="true" targetFramework="3.5" />
<authenticationmode="Windows"/>
<authorization>
<deny users = "?" />
</authorization>
</system.web>
Với thiết lập này, tôi mong đợi xác minh hiện trường của người dùng Windows để cho phép truy cập và từ chối người dùng ẩn danh. Tuy nhiên, những gì tôi nhận được là một cửa sổ bật lên đăng nhập Windows khi tôi cố gắng truy cập trang web.
Tôi đã khắc phục sự cố này vài ngày nay và không thể tìm ra sự cố. Dựa trên các bài đăng có vấn đề tương tự, tôi đã xác nhận URL của mình không bao gồm bất kỳ dấu chấm nào, kiểm tra kỹ xem cài đặt IE của tôi có được đặt thành Bật Xác thực Windows Tích hợp không và cũng đã thêm URL của tôi vào các trang web mạng nội bộ của tôi, nhưng vẫn nhận được cửa sổ bật lên.
Để khắc phục sự cố thêm, tôi đã bật Xác thực ẩn danh trong IIS và sửa đổi tệp web.config của mình để cho phép tôi truy cập ngay và sau đó thêm Response.Write (System.Security.Principal.WindowsIdentifity.getcurrent (). User.name.toString () ) để thử xem người dùng nào đang được sử dụng trong xác thực. Kết quả tôi nhận được là IIS APPPOOL \ myapp rõ ràng là nhóm ứng dụng IIS cho ứng dụng của tôi.
Tôi thực sự đánh giá cao bất kỳ sự trợ giúp nào mà mọi người có thể cung cấp để tôi vẫn chỉ sử dụng xác thực cửa sổ nhưng không nhận được cửa sổ bật lên và xác thực cửa sổ được thực hiện với người dùng Windows thực sự.
Cảm ơn.
Lưu ý bổ sung sau khi khắc phục sự cố thêm:
Chỉ cần nhận thấy rằng khi đăng nhập không thành công và lời nhắc đăng nhập Windows hiển thị lại, nó đang hiển thị tên người dùng đã cố gắng đăng nhập là "SERVERNAME" \ "USERNAME" khiến tôi tin rằng nó đang cố gắng xác thực người dùng đối với máy chủ so với miền. Để xác nhận điều này, tôi đã tạo tài khoản người dùng cục bộ trực tiếp trên máy chủ ứng dụng với cùng tên người dùng và mật khẩu với người dùng miền mạng và cố gắng đăng nhập lại. Kết quả là tôi lại nhận được lời nhắc đăng nhập nhưng khi tôi nhập tên người dùng và mật khẩu lần này, tôi đã có thể đăng nhập thành công. Người dùng mạng và máy chủ ứng dụng nằm trên cùng một miền nên thực sự không chắc tại sao xác thực IIS lại trỏ đến tài khoản máy chủ ứng dụng cục bộ chứ không phải tài khoản miền. Tôi nhận ra đây là một câu hỏi IIS tại thời điểm này nên đăng trên forum.iis.
<authentication mode="Windows" />
Hy vọng rằng đó chỉ là lỗi đánh máy trong câu hỏi của bạn?