'记住我'选项不起作用

时间:2013-11-21 05:24:06

标签: asp.net-mvc-4 cookies custom-authentication

我正在使用asp.net mvc4。在我的登录页面中,我保留了“记住我”选项。但看起来它不起作用。

我这样保存了我的authcookie:

var authTicket = new FormsAuthenticationTicket(1, //version
                            userName, // user name
                            DateTime.Now,             //creation
                            DateTime.Now.AddMinutes(60), //Expiration
                            persistanceFlag, //Persistent
                            usrData); //Saving user data

var encTicket = FormsAuthentication.Encrypt(authTicket);
var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encTicket);
Response.Cookies.Add(cookie);

我正在使用表单身份验证。我在CustomAuthorizeAttribute类中检查了身份验证,该类实现了'AuthorizeAttribute'接口。

public class CustomAuthorize : AuthorizeAttribute
{
    public override void OnAuthorization(AuthorizationContext filterContext)
    {
        base.OnAuthorization(filterContext);

        if (!filterContext.HttpContext.User.Identity.IsAuthenticated)
        {
            // auth failed, redirect to login page

            filterContext.Result = new RedirectResult("~/Security/UserAccount/SignIn");
        }
    }
}

但这就像我的流程没有处理'记住我'选项。当我登录时选择“记住我”选项,然后关闭并重新打开浏览器,再次请求登录。

1 个答案:

答案 0 :(得分:0)

persistanceFlag的值是多少,这应该是真的。

这会改变吗?