Я добавляю следующий код: Кроме того, теперь я получаю поведение, отличное от названия. Я запускаю это локально на встроенном сервере VS2010. Кажется, чтобы показать противоречивые поведения. Я переместил бы HttpOnly = true до истечения срока действия и после него, и это, казалось, изменило поведение, пока я не обновил страницу браузера. Итак, я предполагаю, что все было хорошо и никогда не было проблем. Кроме того, я перемещаю флаги HttpOnly и Secure в web.config, поскольку не все мои среды имеют SSL.
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket
(strUserID, //name
false, //IsPersistent
24 * 60); // 24 hours
// Encrypt the ticket.
string encryTicket = FormsAuthentication.Encrypt(ticket);
// Create the cookie.
HttpCookie userCookie = new HttpCookie("Authentication", encryTicket);
userCookie.HttpOnly = true;
Response.Cookies.Add(userCookie);
e.Authenticated = true;
if (LoginPannelMain.RememberMeSet)
{
HttpCookie aCookie = new HttpCookie("email", strUserLogin);
aCookie.HttpOnly = true;
aCookie.Expires = DateTime.Now.AddYears(1);
Response.AppendCookie(aCookie);
}
else
{
HttpCookie aCookie = new HttpCookie("email", "");
aCookie.HttpOnly = true;
Response.AppendCookie(aCookie);
}