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")); } }
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"; } }
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")); } }
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"); } }
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); }