2008-10-28 39 views
5

tôi có dịch vụ web được lưu trữ trên máy chủ khác có Hộp kiểm Truy cập Chưa xác định trong IIS đã được chọn. khi ứng dụng web cục bộ của tôi đang cố truy cập dịch vụ web, tôi vẫn nhận được thông báo "Yêu cầu không thành công với trạng thái HTTP 401: Truy cập bị từ chối". lỗi. ứng dụng web của tôi đang gọi đến dịch vụ web như sau:Lỗi "Trạng thái HTTP 401: Truy cập bị từ chối" đối với dịch vụ web ngay cả khi thư mục ảo cho phép truy cập Chưa xác định

MyObject.WebService ws = new MyObject.WebService(); ws.Retrieve (someParams);

tôi đang thiếu gì ở đây?

Trả lời

0

bạn đã thử bỏ chọn iis cho phép để kiểm soát mật khẩu một số lần thoát ra khỏi bồn rửa.

thử trang web và nó có thể hoạt động. bạn có thể có thể kiểm soát lại sau

+0

cách bạn thực hiện điều đó trong IIS6? – Gnot

11

Here là tham chiếu tốt về chẩn đoán lỗi 401.

Từ đó, một nơi để bắt đầu là xem thông tin xác thực bạn định cấu hình cho người dùng ẩn danh. Nếu chúng không chính xác (nếu có thể mật khẩu người dùng đã được thay đổi ở nơi khác), bạn sẽ nhận được một HTTP 401.

+0

+1 để tiết kiệm thời gian làm việc nhiều hơn cho tôi; + nhiều hơn nếu tôi có thể. –

+0

bài viết không được tìm thấy = ( – Niklas

+0

@Niklas cập nhật liên kết - sẽ đưa thêm thông tin từ bài đăng đó trong câu trả lời của tôi sớm cho tương lai nó quá –

2

Đảm bảo quyền truy cập thư mục của bạn cũng được đặt để cho phép mọi người đọc quyền truy cập. Rất nhiều lần làm công việc dev địa phương tôi sẽ quên rằng các thư mục được truy cập có một bộ riêng biệt của các điều khoản cần phải được thay đổi.

Chúc mừng!

+0

quyền đã được đặt – Gnot

0

Hãy thử như sau (lưu ý thingy PreAuthenticate):

MyObject.WebService ws = new MyObject.WebService(); 
ws.PreAuthenticate = true; 
response = ws.Retrieve(someParams); 

Đối với lời giải thích chi tiết hơn tại sao điều này có thể làm việc bạn có thể tham khảo sau đây trả lời ở đây http://social.msdn.microsoft.com/Forums/en-US/asmxandxml/thread/3ae9753d-2d97-45b9-9ba2-6d551fe60a48/.

+0

sử dụng PreAuthenticate = true không hoạt động – Gnot

0

Tôi nghĩ điều gì có thể xảy ra là bạn đang nhận được 401 - quyền bị từ chối nhưng khi người đó cho phép bị từ chối là không rõ ràng. Tôi đoán tại thời điểm này bạn đã kiểm tra các điều khoản NTFS trên máy tính, và đã xác nhận rằng bạn có quyền truy cập.

Tiếp theo, tôi sẽ xem xét tài khoản mà nhóm ứng dụng sử dụng. Nếu nó là thiết lập mặc định, nó có thể sẽ là tài khoản dịch vụ mạng NT. Nếu đúng như vậy, hãy xác nhận rằng tài khoản đó có quyền truy cập vào thư mục ứng dụng. Nếu đó cũng là trường hợp nó có lẽ có thể là một thiết lập bảo mật COM +. Theo mặc định, tài khoản dịch vụ mạng của bạn không có quyền khởi chạy các thành phần từ xa. Nếu đây là trường hợp bạn sẽ thấy lỗi trong hệ thống và nhật ký bảo mật sẽ cho biết mọi thứ liên kết, "Không thể khởi chạy thành phần"

Nhìn vào tệp nhật ký IIS và nhật ký sự kiện hệ thống và bảo mật trên máy chủ iis thường mang lại nhiều manh mối hơn.

Hy vọng nó giúp Trân trọng Rihan Meij

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