2011-09-26 30 views
5

Tôi có một ứng dụng web với FormsAuthentication và với slidingExpiration="true" trong web.config của tôi không trả lại cookie trong mỗi yêu cầu, nhưng khi tôi thấy giao dịch HTTP, tôi không thể thấy máy chủ web trả về cookie AUTH trong mỗi yêu cầu.FormsAuthentication with sliding enabledExpiration không trả lại cookie trong mỗi yêu cầu.

Kiểm tra docs, cần.

trượtThông số tùy chọn. Chỉ định xem có tắt chế độ hết hạn không. Thời gian chờ trượt sẽ đặt lại thời gian xác thực hoạt động cho cookie để hết hạn theo từng yêu cầu trong một phiên duy nhất. Thuộc tính này có thể là một trong các giá trị sau. Giá trị Mô tả True Chỉ định rằng thời gian hết hạn trượt được bật. Cookie xác thực được làm mới và thời gian hết hạn là đặt lại về các yêu cầu tiếp theo trong một phiên duy nhất. Sai Chỉ định rằng thời hạn hết hạn trượt không được bật và cookie hết hạn tại khoảng thời gian được đặt là từ thời điểm cookie được phát hành ban đầu. Mặc định là True.

Có ai biết tại sao nó không hoạt động như mong đợi không?

Chúc mừng.

Trả lời

7

Tôi đã đọc này: http://www.dotnetmonster.com/Uwe/Forum.aspx/asp-net-security/2316/problem-with-slidingExpiration

Nói cách khác, nếu thời gian trôi qua kể từ tạo vé lớn sau đó một nửa thời gian chờ vé (trong kịch bản của bạn sẽ là 1 phút) các vé thắng' t được gia hạn. Nếu không, một vé mới sẽ được cấp với thời gian chờ mới (2 phút trong trường hợp của bạn). Tóm tắt, nếu bạn nhấn trang của mình sau 1 phút, nó sẽ không kéo dài tuổi thọ phiên Biểu mẫu bất kể cài đặt trượt của bạn.

Điều đó có ý nghĩa, nhưng tôi không thể tìm thấy bất kỳ nguồn chính thức nào. Vì vậy, tôi sẽ kiểm tra nó tự của tôi khi tôi có một số thời gian rảnh rỗi.

Chúc mừng.

+0

Không thể trả lời đủ nhanh nhất, thuật toán được đề cập ở trên có thể thiếu sót tùy thuộc vào yêu cầu của bạn. –

+1

Trả lời nó và tôi vui mừng đánh dấu câu trả lời của bạn là chính xác :) Tại sao nó có thể thiếu sót? Cảm ơn. – vtortola

+2

Đây là liên kết MSDN: http://msdn.microsoft.com/en-us/library/system.web.configuration.formsauthenticationconfiguration.slidingexpiration.aspx – ctekse

0

Cookie mới sẽ chỉ phát hành khi một nửa thời gian trôi qua từ việc tạo cookie và điều đó đang xảy ra trong trường hợp của bạn.

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