编程语言
首页 > 编程语言> > 关闭浏览器时,使ASPXAUTH Cookie过期

关闭浏览器时,使ASPXAUTH Cookie过期

作者:互联网

我通过使用以下代码创建一个ASPXAUTH cookie

var authTicket = new FormsAuthenticationTicket(2, model.Name, DateTime.Now, DateTime.Now.AddMinutes(ConfigSettings.SessionTimeout),
                    false, result.UniqueId.ToString());

                var authCookie = new HttpCookie(FormsAuthentication.FormsCookieName,
                    FormsAuthentication.Encrypt(authTicket))
                {
                    HttpOnly = true,
                    Expires = authTicket.Expiration                    
                };

                Response.AppendCookie(authCookie);

当用户关闭浏览器(IE和Chrome)并再次登录时,会话仍处于活动状态,则APSXAUTH cookie不会过期.我将其设置为非持久性.我也确定所有浏览器实例均已关闭.

我想念什么?

解决方法:

由于您手动设置Expires属性,因此浏览器会在客户端创建一个持久性cookie.

只是不要在此处设置任何值,请将该行注释掉.这将创建一个cookie,只要打开浏览器,它就一直存在.

请注意,通常这意味着即使用户关闭了选项卡,cookie仍然存在.当浏览器进程关闭并重新启动时,它消失.

标签:cookies,forms-authentication,aspxauth,c
来源: https://codeday.me/bug/20191120/2042944.html