public void CambiarContrasena(BE.Usuario user) { string pass = GenerarPassword(); user.contrasena = Cifrado.Encriptar(pass.ToUpper(), false); user.dvh = DigitoVerificador.CalcularDV(user, "usuario"); _usuarioDal.Actualizar(user); EnviarPassword(Cifrado.Desencriptar(user.usuario), pass); }
public void CambiarContrasena(string user) { var usuario = _usuarioDal.GetUsuarioUser(Cifrado.Encriptar(user.ToUpper(), true)); string pass = GenerarPassword(); usuario.contrasena = Cifrado.Encriptar(pass.ToUpper(), false); usuario.dvh = DigitoVerificador.CalcularDV(usuario, "usuario"); _usuarioDal.Actualizar(usuario); EnviarPassword(Cifrado.Desencriptar(usuario.usuario), pass); }
public void DesbloquearUsuario(BE.Usuario usuario) { usuario.contador = 0; _usuarioDal.Actualizar(usuario); var usuarioRegistra = new BE.Usuario(); if (Services.SessionManager.IsLogged()) { usuarioRegistra = Services.SessionManager.GetInstance.Usuario; } else { string nombre_usuario = Cifrado.Encriptar("SYSTEM", true); usuarioRegistra = _usuarioDal.GetUsuarioUser(nombre_usuario); } _bitacoraBLL.RegistrarBitacora(usuarioRegistra, $@"Se desbloqueo el usuario {Cifrado.Desencriptar(usuario.usuario)}", 1); }
public BE.Usuario GenerarUsuario(BE.Empleado emp) { BE.Usuario usuario = new BE.Usuario(); usuario.usuario = Cifrado.Encriptar(("u" + emp.legajo.ToString().PadLeft(6, '0')).ToUpper(), true); string pass = GenerarPassword(); usuario.contrasena = Cifrado.Encriptar(pass.ToUpper(), false); string[] nombres = emp.nombre.Split(' '); string email = ""; foreach (string n in nombres) { email += n.Substring(0, 1); } string[] apellidos = emp.apellido.Split(' '); for (int i = 0; i < apellidos.Length; i++) { if ((i + 1) != apellidos.Length) { email += apellidos[i].Substring(0, 1); } else { email += apellidos[i]; } } email += "@logicar.com.ar"; usuario.email = email; usuario.estado = 1; usuario.dvh = DigitoVerificador.CalcularDV(usuario, "usuario"); _usuarioDal = new DAL.Usuario(); _usuarioDal.Insertar(usuario); EnviarPassword(Cifrado.Desencriptar(usuario.usuario), pass); var usuarioRegistra = usuario; if (Services.SessionManager.IsLogged()) { usuarioRegistra = Services.SessionManager.GetInstance.Usuario; } _bitacoraBLL.RegistrarBitacora(usuarioRegistra, $@"Se creo el usuario = {Cifrado.Desencriptar(usuario.usuario)}.", 1); return(usuario); }
public void RegistrarBitacora(BE.Usuario usuario, string descripcion, int criticidad, long digito = 1) { BE.Bitacora bitacora = new BE.Bitacora(); descripcion = Cifrado.Encriptar(descripcion, true); DateTime fecha = DateTime.Now; bitacora.usuario = usuario; bitacora.descripcion = descripcion; bitacora.fecha = fecha; bitacora.criticidad = criticidad; if (digito == 1) { long dvh = DigitoVerificador.CalcularDV(bitacora, "bitacora"); bitacora.dvh = dvh; } else { bitacora.dvh = digito; } _bitacoraDal.RegistrarBitacora(bitacora); }
public static int VerificarDV() { string nombre_usuario = Cifrado.Encriptar("SYSTEM", true); DAL.Usuario _usuarioDal = new DAL.Usuario(); Bitacora _bitacoraBll = new Bitacora(); try { BE.Usuario usr = _usuarioDal.GetUsuarioUser(nombre_usuario); int error = 0; DAL.DigitoVerificador _DVDAL = new DAL.DigitoVerificador(); List <BE.DigitoVerificador> listaDvv = _DVDAL.TraerDVV(); foreach (BE.DigitoVerificador digito in listaDvv) { DataTable tabla = _DVDAL.TraerTabla(digito.nombreTabla); /* CALCULO Y COMPARO DVV LA TABLA VERIFICADA CON EL ALMACENADO*/ if (tabla.Rows.Count != 0) { long resultado = 0; foreach (DataRow r in tabla.Rows) { resultado += long.Parse(r["dvh"].ToString()); } if (resultado != digito.valorDvv) { // registro en bitacora string descripcion_bitacora = string.Format(@"Error de integridad: Digito Verificador Vertical de la tabla {0} no coincide. Calculado = {1} , Almacenado = {2}", digito.nombreTabla, resultado, digito.valorDvv); _bitacoraBll.RegistrarBitacora(usr, descripcion_bitacora, 1, 0); error = 1; } /* CALCULO Y COMPARO DVH DE CADA REGISTRO DE LA TABLA VERIFICADA */ foreach (DataRow fila in tabla.Rows) { long dvh = 0; foreach (DataColumn col in tabla.Columns) { long sumador = 0; if (col.ColumnName != "id" && col.ColumnName != "legajo" && col.ColumnName != "dvh") { var cadena_ascii = ASCIIEncoding.ASCII.GetBytes(fila[col].ToString()); for (int i = 0; i < cadena_ascii.Length; i++) { sumador += long.Parse(cadena_ascii[i].ToString()) * (i + 1); } dvh += sumador; } } if (dvh != long.Parse(fila["dvh"].ToString())) { // registro en bitacora string descripcion_bitacora = string.Format(@"Error de integridad: Digito Verificador Horizontal de la tabla {0} no coincide. Calculado = {1} , Almacenado = {2}", digito.nombreTabla, dvh, fila["dvh"].ToString()); _bitacoraBll.RegistrarBitacora(usr, descripcion_bitacora, 1, 0); error = 1; } } } else { long resultado = 0; if (resultado != digito.valorDvv) { // registro en bitacora string descripcion_bitacora = string.Format(@"Error de integridad: Digito Verificador Vertical de la tabla {0} no coincide. Calculado = {1} , Almacenado = {2}", digito.nombreTabla, resultado, digito.valorDvv); _bitacoraBll.RegistrarBitacora(usr, descripcion_bitacora, 1, 0); error = 1; } } } return(error); } catch (Exception e) { throw new Exception(e.Message); } }