2

我有一个带有身份验证表单的 MVC 3 应用程序。当用户选中“记住我”复选框时,auth cookie 必须设置为 2 周,如果没有,则应设置为 30 分钟。在这两种情况下,都应该打开滑动到期。根据这篇文章,我创建了以下方法,该方法创建了自定义身份验证 cookie:

FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(
            1,  //version
            username,
            DateTime.Now, //issue date
            rememberMe ? DateTime.Now.AddDays(14) : DateTime.Now.AddMinutes(30), // exprie date
            rememberMe, // is persistent
            null
            );
        var ecnryptedTicket = FormsAuthentication.Encrypt(ticket);
        HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, ecnryptedTicket);

        cookie.Expires = ticket.Expiration; // to expire cookie together with ticket

        response.Cookies.Add(cookie);

之后如何以编程方式设置滑动到期?

4

1 回答 1

0

自从有人问这个问题以来已经有一段时间了,但是我在寻找其他东西时遇到了这个问题。如果你想像这样运行混合模式,你可能想用这样的东西自己动手:

http://cbertolasio.wordpress.com/2010/11/28/dealing-with-idle-clients-and-expiring-sessions-in-asp-net-mvc/

并且当从插件发送心跳时,如果需要,请扩展票证。我觉得滑动到期是一个全有或全无的选择。

于 2013-07-12T01:26:03.497 回答