【问题标题】:'Remember me' option is not working“记住我”选项不起作用
【发布时间】:2013-11-21 05:24:05
【问题描述】:

我正在使用 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);

我正在使用表单身份验证。我已经检查了实现“AuthorizeAttribute”接口的 CustomAuthorizeAttribute 类中的身份验证。

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");
        }
    }
}

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

【问题讨论】:

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


    【解决方案1】:

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

    这会改变吗?

    【讨论】:

    • 是选择“记住我”选项时选择的,则该值为TRUE。我已经检查过了。
    猜你喜欢
    • 2022-12-15
    • 1970-01-01
    • 2014-01-22
    • 2023-03-11
    • 1970-01-01
    • 2019-09-07
    • 1970-01-01
    • 2015-01-24
    • 2015-10-10
    相关资源
    最近更新 更多