none
Retornar o usuário logado usando cookies RRS feed

  • Pergunta

  • Minha implementação:

    [HttpPost]
            public ActionResult Index(DAL.Model.Usuario usuario)
            {
                UsuarioRepository repository = new UsuarioRepository();
                usuario = repository.GetUsuario(usuario);
     
                if (usuario != null && !usuario.Id.Equals(0))
                {
                    FormsAuthenticationTicket authenticationTicket = new FormsAuthenticationTicket(usuario.Nome, false, 60);
                    string encryptTicket = FormsAuthentication.Encrypt(authenticationTicket);
                    HttpCookie authCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encryptTicket);
                    Response.Cookies.Add(authCookie);
     
                    return RedirectToAction("Index", "Home");
                }
     
                return View();
            }

    Como faço para retornar o usuário logado?

    Obrigado!

    quinta-feira, 10 de janeiro de 2013 20:10

Respostas

  • get user?

    identity?

    public void SignIn(string userName, bool createPersistentCookie)
    {
        int timeout = createPersistentCookie ? 43200 : 30; //43200 = 1 month
        var ticket = new FormsAuthenticationTicket(userName, createPersistentCookie, timeout);
        string encrypted = FormsAuthentication.Encrypt(ticket);
        var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encrypted);
        cookie.Expires = System.DateTime.Now.AddMinutes(timeout);
        HttpContext.Current.Response.Cookies.Add(cookie);

    [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult LogOn(string userName, string passwd, bool rememberMe)
    {
        //ValidateLogOn is your code for validating user credentials
        if (!ValidateLogOn(userName, passwd))
        {
            //Show error message, invalid login, etc.
            //return View(someViewModelHere);
        }
    
        SignIn(userName, rememberMe);
    
        return RedirectToAction("Home", "Index");
    }

    ae você usa HttpContext.User.Identity.Name pra retornar o zézim logado.


    Aprendendo Ad Eternum Se minha resposta foi útil por favor marque, se minha resposta respondeu completamente sua dúvida, marque-a como resposta, se houve outra resposta melhor, marque ela. Assim facilita a busca e melhora a organização do fórum e o nosso aprendizado.

    sexta-feira, 11 de janeiro de 2013 17:46