How do I check the “createPersistentCookie” in ASP

2019-07-29 03:44发布

When someone logs into my application and they checked the "Remember Me" checkbox, I set the createPersistentCookie = true so that when they come back they don't need to log in again. However, occassionally, I need to use the FormsAuthentication.SetAuthCookie(NewUserName, [true/false]) so how do I know if they originally set the createPersistentCookie to true or not so I can keep it the same as it was when they logged in?

2条回答
干净又极端
2楼-- · 2019-07-29 04:16

I believe when you decrypt the cookie you should be left with a FormsAuthenticationTicket which you can then query the IsPersistent property.

To decrypt:

FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value);

References: FormsAuthentication.Decrypt() on MSDN

查看更多
Anthone
3楼-- · 2019-07-29 04:28

You should also remember to set in your application's web.config to constant value. ASP.NET has tendency to auto generate this values after some time.

For more info please take look at: http://msdn.microsoft.com/en-us/library/w8h3skw9(v=VS.90).aspx

查看更多
登录 后发表回答