Пример #1
0
        public async Task <IHttpActionResult> recuperar([FromBody] JObject contrasena, string tokenRecibido)
        {
            try
            {
                Cliente      cliente = new Cliente();
                TokenCliente token   = new TokenCliente();
                cliente.Contrasena = contrasena["Contrasena"].ToString();
                string contrasena2 = contrasena["ContrasenaConfirmada"].ToString();
                if (cliente.Contrasena.Equals(contrasena2))
                {
                    token             = new LRecuperarCliente().validarToken(tokenRecibido);
                    cliente.IdCliente = token.IdCliente;

                    await new LRecuperarCliente().recuperar(cliente);
                    return(Ok("'Su contraseña fue actualizada"));
                }
                else
                {
                    return(BadRequest("Las contraseñas no coinciden"));
                }
            }catch (Exception ex)
            {
                return(BadRequest("token no valido o algun dato esta mal escrito"));
            }
        }
Пример #2
0
    protected void B_Recuperar_Click(object sender, EventArgs e)
    {
        Cliente cliente = new DaoCliente().getloginByUsuario(TB_User_Name.Text);

        if (cliente != null)
        {
            TokenCliente token = new TokenCliente();
            token.Creado    = DateTime.Now;
            token.IdCliente = cliente.IdCliente;
            token.Vigencia  = DateTime.Now.AddHours(2);

            token.Token = encriptar(JsonConvert.SerializeObject(token));

            new DaoSeguridadCliente().insertarToken(token);

            Correo correo = new Correo();

            String mensaje = "su link de acceso es: " + "http://localhost:55797/View/RecuperarCliente.aspx?" + token.Token;
            correo.enviarCorreo(cliente.Email, token.Token, mensaje);

            L_Mensaje.Text = "Su nueva contraseña ha sido enviada a su correo";
        }

        else
        {
            L_Mensaje.Text = "El usuario digitado no existe";
        }
    }
Пример #3
0
        public IHttpActionResult generar(Cliente cliente)
        {
            try
            {
                Cliente      clienteE = new Cliente();
                Cascaron     cascaron = new Cascaron();
                TokenCliente token    = new TokenCliente();
                clienteE = new LRecuperarCliente().validar(cliente);

                if (clienteE != null)
                {
                    if (new LRecuperarCliente().getTokenByUser(clienteE.IdCliente) == null)
                    {
                        cascaron         = new LRecuperarCliente().generarToken(cliente.Usuario);
                        cascaron.Mensaje = "Recibira un correo con el link para continuar con el proceso";
                    }
                    else if (token.Vigencia < DateTime.Now)
                    {
                        return(BadRequest("Token Vencido"));
                    }
                }
                else
                {
                    return(BadRequest("El usuario no exite o está sancionado, por favor verifique"));
                }
                return(Ok(cascaron));
            }
            catch (Exception ex)
            {
                return(BadRequest("error"));
            }
        }
Пример #4
0
        public async Task <Cascaron> generar(Cliente cliente)
        {
            Cliente      clienteE = new Cliente();
            Cascaron     cascaron = new Cascaron();
            TokenCliente token    = new TokenCliente();

            clienteE = new DaoSeguridadCliente(_context).validarExistencia(cliente);

            if (clienteE != null)
            {
                if (new DaoSeguridadCliente(_context).getTokenByUser(cliente.IdCliente) == null)
                {
                    generarToken(cliente.Usuario);
                    cascaron.Token   = token;
                    cascaron.Mensaje = string.Format("alert('Recibira un correo con el link para continuar con el proceso');window.location.href = 'loginCliente.aspx'");
                }
                else if (token.Vigencia < DateTime.Now)
                {
                    cascaron.Mensaje = "Token Vencido";
                }
            }
            else
            {
                cascaron.Mensaje = "El usuario no exite o está sancionado, por favor verifique";
            }
            return(cascaron);
        }
 //Generar token recuperar(S)
 public void  insertarToken(TokenCliente token)
 {
     using (var db = new MapeoCliente())
     {
         db.token.Add(token);
         db.SaveChanges();
     }
 }
 //Generar token recuperar(S)
 public void  insertarToken(TokenCliente token)
 {
     using (var db = _context)
     {
         db.tokenCl.Add(token);
         db.SaveChanges();
     }
 }
        public async Task<ActionResult> recuperar([FromBody]JObject contrasena,string tokenRecibido)
        {
            Cliente cliente = new Cliente();
            TokenCliente token = new TokenCliente();
            cliente.Contrasena = contrasena["Contrasena"].ToString();
            string contrasena2 = contrasena["ContrasenaConfirmada"].ToString();
            if (cliente.Contrasena.Equals(contrasena2)){

                token = new LRecuperarCliente(_context).validarToken(tokenRecibido);
                cliente.IdCliente = token.IdCliente;

                await new LRecuperarCliente(_context).recuperar(cliente);
                return Ok("'Su contraseña fue actualizada");
            }
            else
            {
                return Ok("Las contraseñas no coinciden");
            } 
        }
Пример #8
0
        public void generarToken(string usuario)
        {
            Cliente      cliente = new DaoCliente(_context).getloginByUsuario(usuario);
            TokenCliente token   = new TokenCliente();

            token.Creado    = DateTime.Now;
            token.IdCliente = cliente.IdCliente;
            token.Vigencia  = DateTime.Now.AddHours(2);

            token.Token = encriptar(JsonConvert.SerializeObject(token));

            new DaoSeguridadCliente(_context).insertarToken(token);

            String mensaje = "Su token de recuperacion es:" + token.Token;

            enviarCorreo(cliente.Email, token.Token, mensaje);

            Cascaron cascaron = new Cascaron();

            cascaron.Mensaje = "Su nueva contraseña ha sido enviada a su correo";
        }
        public Cascaron generarToken(string usuario)
        {
            Cliente      cliente = new DaoCliente().getloginByUsuario(usuario);
            TokenCliente token   = new TokenCliente();

            token.Creado    = DateTime.Now;
            token.IdCliente = cliente.IdCliente;
            token.Vigencia  = DateTime.Now.AddMinutes(60);

            token.Token = encriptar(JsonConvert.SerializeObject(token));

            new DaoSeguridadCliente().insertarToken(token);

            String mensaje = "Su token de recuperacion es:" + token.Token + "\nRecuerde que tiene 1 hora de vigencia para realizar al acción";

            enviarCorreo(cliente.Email, token.Token, mensaje);

            Cascaron cascaron = new Cascaron();

            cascaron.TokenGenerar = token.Token;

            return(cascaron);
        }