private void btnAceptar_Click(System.Object sender, System.EventArgs e) { if (valida()) { ClsFunciones fn = new ClsFunciones(); string strNvaPsw = fn.GetMD5Hash(txtPwsNueva.Text); LnSistema objlnUsuario = new LnSistema(ModUsuario.SessionObjEnParametrosGrales.UsuarioAdmSeg, ModUsuario.SessionObjEnParametrosGrales.PswAdmSeg, ModUsuario.SessionIdUsuario); Sis.USUARIOS objenUsuario = new Sis.USUARIOS { IdUsuario = ModUsuario.SessionIdUsuario, CambioContrasena = "0", Password = strNvaPsw, UsuarioAD = false }; try { objlnUsuario.ABCUsuarios('D', objenUsuario); MessageBox.Show("La contraseña ha sido cambiada correctamente", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information); ModUsuario.SessionPassword = strNvaPsw; ModUsuario.SessionObjEnDatosConn.Password = strNvaPsw; CambioPassword = true; Dispose(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { txtPwsNueva.Text = ""; txtPswConfirmacion.Text = ""; } }
/// <summary> /// ''' Evento al mostrarse el formulario /// ''' </summary> /// ''' <param name="sender"></param> /// ''' <param name="e"></param> /// ''' <remarks></remarks> private void btnEntrar_Click(System.Object sender, EventArgs e) { string strMensaje = ""; try { if (ValidaDatos()) { // Analizar el login del usuario para ver si es correcto o no ClsFunciones fn = new ClsFunciones(); string mensaje = ""; // Encriptamos la contraseña a MD5 string passwEncr = fn.GetMD5Hash(txtPassword.Text.Trim()); // Consultamos información del usuario para saber si existe y que tipo de usuario es (Sistema o Active Directory) Sis.USUARIOS ObjUsuario = new LnSistema(ConfigurationManager.AppSettings["UserLogin"], ConfigurationManager.AppSettings["PswLogin"]).ConsultaUsuarioLogin(txtUsuario.Text.Trim()); if (strMensaje != "") { throw new Exception(strMensaje); } var ParametrosGrales = new LnSistema(ConfigurationManager.AppSettings["UserLogin"], ConfigurationManager.AppSettings["PswLogin"]).ConsultaDatosAdmorseg(); ObjLnSistemaAdmin = new LnSistema(ParametrosGrales.UsuarioAdmSeg, ParametrosGrales.PswAdmSeg); // Enviamos los datos a una funcion que valida si la contrasela y usuario son correctos if (ValidaLogin(txtUsuario.Text.Trim(), passwEncr, ref mensaje)) { BlCambio = false; if (ModUsuario.SessionCambioContrasena) { MessageBox.Show("Su contraseña ha sido restablecida con anterioridad, por favor cambie su contraseña a una mas segura", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); BlCambio = true; } TimeSpan ts = DateTime.Now - ModUsuario.SessionFechaCambioContrasena; if (ts.TotalDays > ModUsuario.SessionObjEnParametrosGrales.PswVigencia & BlCambio == false) { MessageBox.Show("La Contraseña ha caducado, por favor cambie su contraseña", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); BlCambio = true; } if (BlCambio == true) { frmCambioPsw frmCambiopassword = new frmCambioPsw(); frmCambiopassword.ShowDialog(); BlCambioPsw = frmCambiopassword.CambioPassword; } Close(); } else { MessageBox.Show(mensaje, "Datos Incorrectos", MessageBoxButtons.OK, MessageBoxIcon.Warning); // Revisamos el numero de intentos _intento += 1; if (_intento == _maxIntentos) { // Bloqueo de usuario por intentos fallidos Ent.PARAMETROS_GRALES objParamGrales; Sis.USUARIOS objenusuario = new Sis.USUARIOS(); try { // Se consultan datos de usuario con permisos de bloqueo (usuario administrador de seguridad objParamGrales = new LnSistema(ConfigurationManager.AppSettings["UserLogin"], ConfigurationManager.AppSettings["PswLogin"]).ConsultaDatosAdmorseg(); // Bloquear usuario LnSistema objlnUsuario = new LnSistema(objParamGrales.UsuarioAdmSeg, objParamGrales.PswAdmSeg); objenusuario.NombreUsuario = txtUsuario.Text; objlnUsuario.BloqueoUsuario(objenusuario); // Notificar acción MessageBox.Show("Usuario bloqueado por intentos fallidos, contacte a su Administrador de sistemas", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); Close(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); Close(); } } } } } catch (Exception ex) { MessageBox.Show(ex.Message, "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1); } }