Tôi có ứng dụng ASP.NET MVC bằng cách sử dụng xác thực biểu mẫu. Dưới đây là những dòng mã mà tôi tạo ra các dấu hiệu auth:Mã xác thực liên tục hết hạn
FormsAuthentication.SetAuthCookie(username, true);
web.config của tôi chứa:
<system.web>
<machineKey validationKey="{unique key}" decryptionKey="{unique key}" validation="SHA1" decryption="AES" />
<authentication mode="Forms">
<forms loginUrl="~/account/" timeout="2880" />
</authentication>
...
</system.web>
<location path="my">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
Mặc dù các tham số cho các cookie được thiết lập là true, người dùng của tôi thường xuyên bị thoát ra sau khi một vài ngày không hoạt động.
Ứng dụng được triển khai cho AppHarbor, nhưng tôi đã trải nghiệm cùng một hành vi khi được lưu trữ trên máy chủ chuyên dụng.
Tôi thiếu điều gì khiến người dùng bị đăng xuất một cách không thường xuyên?
Ah, tôi thấy rằng trong ASP.NET 1.1, thời gian chờ đã bị bỏ qua cho cookie liên tục, nhưng bắt đầu từ năm 2.0, nó được sử dụng cho các tập tin cookie dai dẳng quá. Duh. –
Tôi đang thay đổi thời gian chờ thành 5259600 (60 phút/giờ * 24 giờ/ngày * 365,25 ngày/năm * 10 năm). –
Bạn có chắc là đủ lâu không? –