Я пытался выяснить, почему WebSecurity.Logout() и Session.Abandon() и не могут убить мою сессию. У меня есть приложение, размещенное на веб-сервере, который не может подписать пользователя. В отладке он успешно выйдет и возвращается на страницу входа, как и ожидалось. Я только что добавил свойство .Domain в файл cookie, чтобы при входе они могли получить доступ к остальной части субдомена. Мой печенье создается следующим образом:Комбинации WebSecurity.Logout() и Session.Abandon() не могут убить сеанс
var authTicket = new FormsAuthenticationTicket(model.UserName, false, (int)FormsAuthentication.Timeout.TotalMinutes);
var authCookie = new HttpCookie(FormsAuthentication.FormsCookieName, FormsAuthentication.Encrypt(authTicket));
//authCookie.Domain = "mysite.org"
authCookie.Domain = "127.0.0.1";
Response.AppendCookie(authCookie);
Я нашел еще один пост на переполнение стека, рекомендованную перезапись сессию и даже когда я делаю это:
WebSecurity.Logout();
Session.Abandon();
//clear authentication cookie
HttpCookie cookie1 = new HttpCookie(FormsAuthentication.FormsCookieName, "");
cookie1.Expires = DateTime.Now.AddYears(-1);
Response.Cookies.Add(cookie1);
//clear session cookie (not necessary for your current problem but i would recommend you do it anyway)
HttpCookie cookie2 = new HttpCookie("ASP.NET_SessionId", "");
cookie2.Expires = DateTime.Now.AddYears(-1);
Response.Cookies.Add(cookie2);
Любые идеи, что бы не допустить этого работать на веб-сервере, который не произошел бы при отладке? Есть ли другая форма файла cookie веб-сервера, который может сохранить этот сеанс?
yup получил там, в конце концов, только что пришел, чтобы обновить ответ :) – Jay