Проблема FormsAuthentication с Custom FormsAuthenticationTicket - PullRequest
0 голосов
/ 19 мая 2011

Я, вероятно, просто устал и не вижу, что с этим не так, поэтому, возможно, вы, ребята, можете дать мне идею.

 public class AuthTicket : IAuthTicket
{
    #region IAuthTicket Members

    public string CreateAuthenticationTicket(string userName, bool persistent, string userData)
    {
        var formsAuthenticationTicket = new FormsAuthenticationTicket(1, userName, DateTime.Now,
                                                                      DateTime.Now.AddDays(5), persistent, userData,
                                                                      FormsAuthentication.FormsCookiePath);
        var encryptedTicket = FormsAuthentication.Encrypt(formsAuthenticationTicket);

        return encryptedTicket;
    }

    #endregion
}

// This is injeted in the ctor
string authTicket = _authTicket.CreateAuthenticationTicket(userId.ToString(), true,
                                                                           registerOpenIdUserViewModel.DisplayName);
                Response.Cookies.Add(new HttpCookie(FormsAuthentication.FormsCookieName,authTicket));


                return RedirectToAction("Index", "Home");

В моем действии контроллера у меня есть партиал с @ Html.ActionLink ("Log Off »,« LogOff »,« Account ») В действии для LogOff у меня просто есть FormsAuthentication.SignOut

Ну вот проблема, SignOut не удаляет AuthTicket, я все еще вижу cookie и пользователяне могу выйти .. :) Круто, а?

1 Ответ

0 голосов
/ 19 мая 2011

У меня была такая же проблема. Я просто вручную принудительно удалил файлы cookie в моем коде.

Roles.DeleteCookie(  );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...