示例#1
0
        public ActionResult Login(Usuario Usuario)
        {
            IUsuarioBO LoginBO = new UsuarioBO();

            try
            {
                ViewBag.UsuarioOuSenhaInvalidos = string.Empty;

                if (LoginBO.ValidarUsuarioLogin(Usuario))
                {
                    FormsAuthentication.SetAuthCookie(Usuario.Login.ToString(), false);
                    return(RedirectToAction("Index", "Home", new { u = Seguranca.Criptografar(Usuario.Login) }));
                }

                else
                {
                    ViewBag.UsuarioOuSenhaInvalidos = "Usuario e/ou Senha invalidos.";
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("error", ex.Message);
                TempData["mensagem"] = ex.Message;
            }

            return(View());
        }
示例#2
0
        /// <summary>
        /// Com base no Username e no Password, este método autentica o usuário e o direciona para o local correto.
        /// </summary>
        /// <param name="_Username"></param>
        /// <param name="_Password"></param>
        /// <returns></returns>
        public bool AutenticarUsuario(string _Username, string _Password)
        {
            try
            {
                var consulta = (from u in contexto.Usuario
                                where u.Login == _Username && u.Senha == _Password && u.StatusId == 1
                                select u).SingleOrDefault();

                if (consulta == null)
                {
                    return(false);
                }
                else
                {
                    //Criando um objeto cookie
                    HttpCookie UserCookie = new HttpCookie("CookieAutenticacao");

                    //Setando o ID do usuário no cookie
                    UserCookie.Value = Seguranca.Criptografar(consulta.UsuarioID.ToString());

                    //Definindo o prazo de vida do cookie
                    UserCookie.Expires = DateTime.Now.AddHours(12);

                    //Adicionando o cookie no contexto da aplicação
                    HttpContext.Current.Response.Cookies.Add(UserCookie);

                    return(true);
                }
            }
            catch (Exception e)
            {
                return(false);
            }
        }
示例#3
0
        public Retorno VerificarLogin(Login login)
        {
            try
            {
                Retorno retorno = PreenchimentoObrigatorio(login);
                if (retorno.IsValido)
                {
                    login.Senha = Seguranca.Criptografar(login.Senha, "VESTIRY");

                    retorno = ConsultarExistenciaSenha();

                    if (retorno.IsValido)
                    {
                        if (retorno.Entity != null && retorno.Entity.ConverteValor(0) == 1)
                        {
                            retorno = new DataLogin().Consultar(login);

                            if (retorno.IsValido)
                            {
                                retorno.IsValido = retorno.Entity != null && ((Login)retorno.Entity).Codigo > 0;

                                if (retorno.IsValido)
                                {
                                    CarregarPermissoesFuncoes(retorno.Entity as Login);
                                }
                                else
                                {
                                    retorno.Mensagem = Mensagens.MSG_30;
                                }
                            }
                        }
                        else
                        {
                            return(new BusinessLogin().Salvar(login));
                        }
                    }
                }
                return(retorno);
            }
            catch (Exception ex)
            {
                return(Retorno.CriarRetornoExcecao(ex));
            }
        }