Я создаю веб-приложение в asp.net mvc, которое использует проверку подлинности для аутентификации пользователей. Я использую HTTP-прокси-инструмент «отрыжка» для захвата аутентифицированного пользователя cookie с проверкой подлинности. После этого я выхожу из приложения. Теперь я использую захваченный аутентифицированный файл cookie для отправки запроса на мой сервер, и сервер обрабатывает запрос как аутентифицированный запрос (даже если выход из системы для этого пользователя из моего браузера). Может ли кто-нибудь сообщить мне, где я ошибаюсь в своем коде выхода?Как аннулировать сеанс http после выхода из системы
Ниже мой журнал из кода приложения
public virtual ActionResult LogOff()
{
FormsAuthentication.SignOut();
Session.Abandon();
// clear authentication cookie
HttpCookie cookie1 = new HttpCookie(FormsAuthentication.FormsCookieName, "");
cookie1.Expires = DateTime.Now.AddYears(-1);
Response.Cookies.Add(cookie1);
// clear session cookie
HttpCookie cookie2 = new HttpCookie("ASP.NET_SessionId", "");
cookie2.Expires = DateTime.Now.AddYears(-1);
Response.Cookies.Add(cookie2);
HttpCookie cookie3 = new HttpCookie("__RequestVerificationToken", "");
cookie3.Expires = DateTime.Now.AddYears(-1);
Response.Cookies.Add(cookie3);
HttpCookie cookie4 = new HttpCookie(".ASPXAUTH", "");
cookie4.Expires = DateTime.Now.AddYears(-1);
Response.Cookies.Add(cookie4);
return RedirectToAction(MVC.Account.Login());
}
Ниже приведен снимок экрана отрыжки инструмента для отправки аутентификации запроса, который дает ответ успеха
Я вижу, что для 'cookie3' и' cookie4' вы снова исчерпали свойство 'cookie2' ?? –
Можете ли вы показать код для отправки запроса с помощью захваченного аутентифицированного cookie вашего сервера и когда вы делаете это действие? –
Можете ли вы разместить свой код, где вы устанавливаете файл cookie: FormsAuthentication.SetAuthCookie (model.UserName, model.RememberMe); –