public IActionResult Crear(Cuenta cuenta) { UtilidadContrasena utilidadContrasena = new UtilidadContrasena(); var salt = BitConverter.ToString(utilidadContrasena.GetSalt()); var contrasenaHash = utilidadContrasena.Hash(cuenta.Contrasena, salt); cuenta.Salt = salt; cuenta.Contrasena = contrasenaHash; _contexto.Cuentas.Add(cuenta); _contexto.SaveChanges(); return(CreatedAtAction(nameof(ObtenerPorId), new { cuenta.Id }, cuenta)); }
public IActionResult Modificar(int id, Cuenta cuenta) { var cuentaExistente = _contexto.Cuentas.FirstOrDefault(cuentaBD => cuentaBD.Id == id); if (cuentaExistente == null) { return(NotFound()); } cuentaExistente.Nombre = cuenta.Nombre; cuentaExistente.Usuario = cuenta.Usuario; cuentaExistente.Acceso = cuenta.Acceso; UtilidadContrasena utilidadContrasena = new UtilidadContrasena(); var salt = cuentaExistente.Salt; var contrasenaHash = utilidadContrasena.Hash(cuenta.Contrasena, salt); cuentaExistente.Contrasena = contrasenaHash; _contexto.SaveChanges(); return(CreatedAtAction(nameof(ObtenerPorId), new { cuentaExistente.Id }, cuentaExistente)); }
public IActionResult IniciarSesion(Cuenta cuenta) { var cuentaExistente = _contexto.Cuentas.FirstOrDefault(cuentaBD => cuentaBD.Usuario == cuenta.Usuario); if (cuentaExistente == null) { return(NotFound()); } if (cuentaExistente.Acceso == false) { return(BadRequest()); } UtilidadContrasena utilidadContrasena = new UtilidadContrasena(); var salt = cuentaExistente.Salt; var contrasenaHash = utilidadContrasena.Hash(cuenta.Contrasena, salt); if (cuentaExistente.Contrasena != contrasenaHash) { return(BadRequest()); } return(Content("sesión iniciada")); }
public IActionResult ModificarCont(int id, Cuenta cuenta) { if (cuenta == null) { return(BadRequest()); } var cuentaExistente = _contexto.Cuentas.Find(id); if (cuentaExistente == null) { return(NotFound()); } cuentaExistente.Id = id; UtilidadContrasena utilidadContrasena = new UtilidadContrasena(); var salt = cuentaExistente.Salt; var contrasenaHash = utilidadContrasena.Hash(cuenta.Contrasena, salt); cuentaExistente.Contrasena = contrasenaHash; _contexto.Cuentas.Update(cuentaExistente); _contexto.SaveChanges(); return(CreatedAtAction(nameof(ObtenerPorId), new { cuentaExistente.Id }, cuentaExistente)); }