Chúng tôi lưu trữ hai đối tượng trong phiên. Bằng cách nào đó, một trong những đối tượng từ một người dùng khác đã được tải vào phiên của người dùng khác. Người dùng nên không có quyền truy cập vào dữ liệu cụ thể này và ngay sau khi họ thấy họ biết điều gì đó rất sai.Trộn phiên ASP.NET bằng cách sử dụng StateServer (SCARY!)
Chúng tôi có bằng chứng trực quan về dữ liệu đã được trình bày cho anh ấy và có chắc chắn không có cách nào nó có thể xảy ra trừ khi phiên bị trộn lẫn. Đây là một tình huống rất đáng sợ mà chúng ta không thể tìm ra (chúng ta không thể tái tạo nó). Câu trả lời duy nhất cho chúng ta là đổ lỗi cho ASP.NET StateServer để trộn các biến session lên, điều này hoàn toàn không được chấp nhận và đặt chúng ta vào một vị trí tồi.
Ứng dụng của chúng tôi là các ứng dụng ASP.NET 2.0 chạy trên Windows Server 2003 với IIS6, sử dụng chế độ phiên StateServer cookieless="false"
và FormsAuthentication.
Có ai khác có vấn đề này không? Làm thế nào chúng ta có thể giải quyết nó?
Tôi đã thấy điều này, nhưng trong .Net 1.1. t được cho là cố định trong 2.0. Tôi có một số câu hỏi trước khi tôi cố gắng đăng câu trả lời. Câu hỏi đầu tiên, bạn đang sử dụng phiên không nấu ăn? – David
Cảm ơn! Có, không nấu ăn (nó nói trong câu hỏi). –
Xin lỗi ... Không đọc được. Vì việc sử dụng các phiên không có nghĩa là SessionID được bao gồm trong URL dưới dạng tham số chuỗi truy vấn, bạn đã xác minh rằng Tham số chuỗi truy vấn SessionID của URL có khác nhau giữa hai người dùng khi điều này xảy ra không? – David