Beispiel #1
0
        public OperationResult UpdateUserfecBloqueo(BEUsuarioFecBloqueoRequest pUsuarioFecBloqueo)
        {
            SeguridadData objSeguridadDataNx = null;
            ReturnValor   oReturn            = new ReturnValor();

            try
            {
                string clvPasswordEncrypt = HelpCrypto.GenerarContrasenia(8);

                objSeguridadDataNx = new SeguridadData();

                string pMessage = string.Empty;
                oReturn.Exitosa = objSeguridadDataNx.UpdateUserfecBloqueo(pUsuarioFecBloqueo, out pMessage);
                oReturn.Message = oReturn.Exitosa ? HelpMessages.Evento_EDIT : string.Empty;

                if (!oReturn.Exitosa)
                {
                    oReturn.Message = pMessage;
                }

                return(OK(oReturn));
            }
            catch (Exception ex)
            {
                return(Error(GetType().Name, MethodBase.GetCurrentMethod().Name, ex, pUsuarioFecBloqueo.segUsuarioEdita,
                             pUsuarioFecBloqueo.codEmpresa));
            }
        }
Beispiel #2
0
        /// <summary>
        /// Almacena el registro de un objeto de tipo [Tabla].
        /// </summary>
        /// <param name="pUsuario"></param>
        public ReturnValor InsertUserFree(BEUsuarioFreeRequest usuarioRequest)
        {
            try
            {
                BEUsuarioRequest pUsuario = PasarDatosUsuario(usuarioRequest);

                using (TransactionScope tx = new TransactionScope(TransactionScopeOption.Required))
                {
                    string pMessage = string.Empty;

                    pUsuario.clvPasswordEncrypt = HelpCrypto.SISEncriptarTexto(pUsuario.clvPassword);

                    using (UsuarioData usuarioData = new UsuarioData())
                    {
                        oReturn.CodigoRetorno = usuarioData.InsertExt(pUsuario, out pMessage);
                    }
                    if (!string.IsNullOrEmpty(oReturn.CodigoRetorno))
                    {
                        oReturn.Exitosa = true;
                        oReturn.Message = HelpMessages.Evento_NEW;
                        tx.Complete();
                    }
                    else
                    {
                        oReturn.Message = pMessage;
                    }
                }
                if (oReturn.Exitosa)
                {
                    using (UsuarioLogic userLogic = new UsuarioLogic())
                    {
                        userLogic.EnviarCorreo(pUsuario);
                    }
                }
            }
            catch (Exception ex)
            {
                if (!oReturn.Exitosa)
                {
                    oReturn = HelpException.mTraerMensaje(ex, false, this.GetType().Name + '.' + MethodBase.GetCurrentMethod().Name,
                                                          usuarioRequest.desLogin);
                }
                else
                {
                    HelpException.mTraerMensaje(ex, false, this.GetType().Name + '.' + MethodBase.GetCurrentMethod().Name,
                                                usuarioRequest.desLogin);
                    oReturn.Message = string.Concat(oReturn.Message, ". No se envió correo electrónico al usuario.");
                }
            }
            return(oReturn);
        }
Beispiel #3
0
        public OperationResult UpdateUserIndPasswordReset(BEUsuarioPasswordResetRequest pUsuarioPasswordReset)
        {
            SeguridadData objSeguridadDataNx = null;
            ReturnValor   oReturn            = new ReturnValor();

            try
            {
                string clvPasswordEncrypt = HelpCrypto.GenerarContrasenia(8);

                objSeguridadDataNx = new SeguridadData();

                pUsuarioPasswordReset.clvPasswordEncrypt = HelpCrypto.SimetricoEncryptar(clvPasswordEncrypt,
                                                                                         WebConstants.DEFAULT_SeguridadKey);
                string pMessage = string.Empty;
                oReturn.Exitosa = objSeguridadDataNx.UpdateUserIndPasswordReset(pUsuarioPasswordReset, out pMessage);
                oReturn.Message = oReturn.Exitosa ? HelpMessages.Evento_EDIT : string.Empty;

                if (oReturn.Exitosa)
                {
                    BEUsuario pUsuario = new UsuarioData().Find(pUsuarioPasswordReset.codUsuario);
                    pUsuario.clvPassword = clvPasswordEncrypt;
                    string pMessageMail = string.Empty;

                    EnviarCorreo(pUsuario,
                                 pUsuarioPasswordReset.codEmpresa,
                                 pUsuarioPasswordReset.segUsuarioEdita,
                                 pUsuarioPasswordReset.urlWebSistema,
                                 "Solicitud de cambio de contraseña.",
                                 out pMessageMail);

                    oReturn.Message = string.Concat(oReturn.Message, " ", pMessageMail);
                    if (!string.IsNullOrEmpty(pMessageMail))
                    {
                        oReturn.Exitosa = false;
                    }
                }
                else
                {
                    oReturn.Message = pMessage;
                }

                return(OK(oReturn));
            }
            catch (Exception ex)
            {
                return(Error(GetType().Name, MethodBase.GetCurrentMethod().Name, ex, pUsuarioPasswordReset.segUsuarioEdita,
                             pUsuarioPasswordReset.codEmpresa));
            }
        }
Beispiel #4
0
        public bool DetectLoginPasswordExterno(string pLoginUsuario, string pPasswordExterno, out string pMessage)
        {
            bool DetectadoEsValido = false;

            pMessage = string.Empty;
            string PasswordEncriptado = string.Empty;

            try
            {
                var DetectResult = oSeguridadData.DetectLoginPassword(pLoginUsuario);
                if (DetectResult == null)
                {
                    pMessage = WebConstants.ValidacionDatosSEGURIDAD.FirstOrDefault(x => x.Key == 2004).Value;
                    return(DetectadoEsValido);
                }
                if (DetectResult.indBloqueoUpdate)
                {
                    pMessage = string.Format(WebConstants.ValidacionDatosSEGURIDAD.FirstOrDefault(x => x.Key == 2025).Value,
                                             DetectResult.fecBloqueoUpdate != null ?
                                             DetectResult.fecBloqueoUpdate.Value.FormatDateToDDMMYYYY() :
                                             DateTime.Now.AddHours(GlobalSettings.GetDEFAULT_HorasFechaActualCloud()).FormatDateToDDMMYYYY());
                    return(DetectadoEsValido);
                }
                if (DetectResult.indPasswordReset)
                {
                    pMessage = WebConstants.ValidacionDatosSEGURIDAD.FirstOrDefault(x => x.Key == 2026).Value;
                    return(DetectadoEsValido);
                }
                if (DetectResult.desMessage.ToUpper() == "OK")
                {
                    DetectadoEsValido = HelpCrypto.SISValidarTextoEncriptado(pPasswordExterno, DetectResult.clvPasswordEncripted);
                    if (!DetectadoEsValido)
                    {
                        pMessage = WebConstants.ValidacionDatosSEGURIDAD.FirstOrDefault(x => x.Key == 2027).Value;
                    }
                }
                else
                {
                    pMessage = DetectResult.desMessage;
                }
            }
            catch (Exception ex)
            {
                var returnValor = HelpException.mTraerMensaje(ex, false, this.GetType().Name + '.' + MethodBase.GetCurrentMethod().Name, pLoginUsuario);
                throw new Exception(returnValor.Message);
            }
            return(DetectadoEsValido);
        }
Beispiel #5
0
        /// <summary>
        /// Almacena el registro de un objeto de tipo [Tabla].
        /// </summary>
        /// <param name="pUsuario"></param>
        public ReturnValor Insert(BEUsuarioRequest pUsuario)
        {
            try
            {
                pUsuario.clvPassword = HelpCrypto.GenerarContrasenia(8);
                pUsuario.codArguPais = WebConstants.PAIS_ORIGEN;
                using (TransactionScope tx = new TransactionScope(TransactionScopeOption.Required))
                {
                    string pMessage = string.Empty;
                    //if (GlobalSettings.GetDEFAULT_Encriptacion() == WebConstants.TipoEncriptacion.SQLDLL.ToString())
                    //    oReturn.CodigoRetorno = oUsuarioData.Insert(pUsuario, out pMessage);

                    //else if (GlobalSettings.GetDEFAULT_Encriptacion() == WebConstants.TipoEncriptacion.EXTDLL.ToString())
                    //{
                    pUsuario.clvPasswordEncrypt = HelpCrypto.SimetricoEncryptar(pUsuario.clvPassword,
                                                                                WebConstants.DEFAULT_SeguridadKey);
                    oReturn.CodigoRetorno = oUsuarioData.InsertExt(pUsuario, out pMessage);
                    //}
                    if (!string.IsNullOrEmpty(oReturn.CodigoRetorno))
                    {
                        oReturn.Exitosa = true;
                        oReturn.Message = HelpMessages.Evento_NEW;
                        tx.Complete();
                    }
                    else
                    {
                        oReturn.Message = pMessage;
                    }
                }
                if (oReturn.Exitosa)
                {
                    EnviarCorreo(pUsuario);
                }
            }
            catch (Exception ex)
            {
                if (!oReturn.Exitosa)
                {
                    oReturn = HelpException.mTraerMensaje(ex);
                }
                else
                {
                    HelpException.mTraerMensaje(ex);
                    oReturn.Message = string.Concat(oReturn.Message, ". No se envió correo electrónico al usuario.");
                }
            }
            return(oReturn);
        }
Beispiel #6
0
        public bool UpdatePassword(BEUsuarioPasswordRequest pUsuarioPassword, bool pEnviaMail, int pCodEmpresa = 0)
        {
            try
            {
                using (TransactionScope tx = new TransactionScope(TransactionScopeOption.Required))
                {
                    pUsuarioPassword.clvPasswordEncrypt = HelpCrypto.SISEncriptarTexto(pUsuarioPassword.clvPassword);
                    string pMessage = string.Empty;
                    oReturn.Exitosa = oSeguridadData.UpdatePasswordExterno(pUsuarioPassword, out pMessage);

                    oReturn.Message = pMessage;

                    if (oReturn.Exitosa)
                    {
                        oReturn.Message = HelpMessages.Evento_EDIT;

                        if (pEnviaMail)
                        {
                            string pMessageMail = string.Empty;

                            BEUsuario usuarioCorreo = FindLogin(pUsuarioPassword.desLogin);
                            EnviarCorreo(usuarioCorreo,
                                         pCodEmpresa,
                                         pUsuarioPassword.segUsuarioEdita,
                                         string.Empty,
                                         "Contraseña de usuario actualizada.",
                                         out pMessageMail);
                            oReturn.Message = string.Concat(oReturn.Message, " ", pMessageMail);

                            if (!string.IsNullOrEmpty(pMessageMail))
                            {
                                oReturn.Exitosa = false;
                            }
                        }

                        tx.Complete();
                    }
                }
            }
            catch (Exception ex)
            {
                var returnValor = HelpException.mTraerMensaje(ex, false, this.GetType().Name + '.' + MethodBase.GetCurrentMethod().Name);
                throw new Exception(returnValor.Message);
            }
            return(oReturn.Exitosa);
        }
Beispiel #7
0
 public static void SerializarLicencia(LicenciaBE Item, bool NUEVO)
 {
     try
     {
         // Crear Archivo para Guardar los Datos de La Clase
         FileStream fs = new FileStream(AppDomain.CurrentDomain.BaseDirectory + "LICENCIA.XML", FileMode.Create);
         // Crear un Objeto XmlSerializer to perform the serialization
         Item.CADENA = HelpCrypto.SimetricoEncryptar(Item.CADENA, ComoDato());
         Item.LENG1  = HelpCrypto.SimetricoEncryptar(Item.LENG1, ComoDato());
         if (NUEVO)
         {
             Item.LENG3 = HelpCrypto.SimetricoEncryptar(DateTime.Now.ToString(), ComoDato());
             if (Item.LENG2 == TipoInstalacion.Demostracion.ToString().ToUpper())
             {
                 DateTime dateExpiracion = DateTime.Now.AddDays(Convert.ToDouble(Item.LENG4));
                 Item.LENG7 = HelpCrypto.SimetricoEncryptar(dateExpiracion.ToString(), ComoDato());
             }
             else
             {
                 Item.LENG7 = HelpCrypto.SimetricoEncryptar(DateTime.Now.ToString(), ComoDato());
             }
         }
         else
         {
             Item.LENG7 = HelpCrypto.SimetricoEncryptar(Item.LENG7, ComoDato());
             Item.LENG3 = HelpCrypto.SimetricoEncryptar(Item.LENG3, ComoDato());
         }
         Item.LENG2   = HelpCrypto.SimetricoEncryptar(Item.LENG2, ComoDato());
         Item.LENG4   = HelpCrypto.SimetricoEncryptar(Item.LENG4, ComoDato());
         Item.LENG5   = HelpCrypto.SimetricoEncryptar(Item.LENG5, ComoDato());
         Item.LENG6   = HelpCrypto.SimetricoEncryptar(Item.LENG6, ComoDato());
         Item.LENG8   = HelpCrypto.SimetricoEncryptar(Item.LENG8, ComoDato());
         Item.ENCRYPC = HelpCrypto.SimetricoEncryptar(ObtenerValorEncrypt(), ComoDato());
         XmlSerializer xs = new XmlSerializer(typeof(LicenciaBE));
         // Use the XmlSerializer object to serialize the data to the file
         xs.Serialize(fs, Item);
         // Close the file
         fs.Close();
         return;
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
Beispiel #8
0
        private BEUsuarioRequest PasarDatosUsuario(BEUsuarioFreeRequest usuarioRequest)
        {
            BEUsuarioRequest usuario = new BEUsuarioRequest
            {
                desLogin        = usuarioRequest.desLogin,
                desApellidos    = usuarioRequest.desApellidos,
                desNombres      = usuarioRequest.desNombres,
                desCorreo       = usuarioRequest.desCorreo,
                desTelefono     = usuarioRequest.desTelefono,
                clvPassword     = usuarioRequest.clvPassword,
                codRolDefecto   = usuarioRequest.codRolDefecto,
                codSistemaKey   = usuarioRequest.codSistemaKey,
                indOrigenUser   = usuarioRequest.indOrigenUser,
                urlPhotoUser    = usuarioRequest.urlPhotoUser,
                codGUID         = usuarioRequest.codGUID,
                segUsuarioEdita = usuarioRequest.desLogin,
                segMaquinaEdita = usuarioRequest.segMaquinaEdita,

                indRestricPorPais   = false,
                desPregunta         = "-",
                desRespuesta        = "-",
                indVendedor         = false,
                indEstado           = true,
                indUsuarioSistema   = false,
                indAccesoGerencial  = false,
                indCambiaCodPersona = false,
                indCambioPrecio     = false,
                indCambiaDescuento  = false,
                indJefeCaja         = false,
            };

            usuario.clvPassword = string.IsNullOrEmpty(usuario.clvPassword) ?
                                  HelpCrypto.GenerarContrasenia(8) :
                                  usuario.clvPassword;

            usuario.codArguPais = WebConstants.PAIS_ORIGEN;

            return(usuario);
        }
Beispiel #9
0
        public static LicenciaBE DeserializeLicencia()
        {
            LicenciaBE Item = new LicenciaBE();

            try
            {
                string fileLICENCIA = AppDomain.CurrentDomain.BaseDirectory + "LICENCIA.XML";
                if (File.Exists(fileLICENCIA))
                {
                    FileStream fs = new FileStream(fileLICENCIA, FileMode.Open);

                    XmlSerializer xs = new XmlSerializer(typeof(LicenciaBE));
                    Item = (LicenciaBE)xs.Deserialize(fs);
                    fs.Close();
                    Item.CADENA  = HelpCrypto.SimetricoDesEncryptar(Item.CADENA, ComoDato());
                    Item.LENG1   = HelpCrypto.SimetricoDesEncryptar(Item.LENG1, ComoDato());
                    Item.LENG2   = HelpCrypto.SimetricoDesEncryptar(Item.LENG2, ComoDato());
                    Item.LENG3   = HelpCrypto.SimetricoDesEncryptar(Item.LENG3, ComoDato());
                    Item.LENG4   = HelpCrypto.SimetricoDesEncryptar(Item.LENG4, ComoDato());
                    Item.LENG5   = HelpCrypto.SimetricoDesEncryptar(Item.LENG5, ComoDato());
                    Item.LENG6   = HelpCrypto.SimetricoDesEncryptar(Item.LENG6, ComoDato());
                    Item.LENG7   = HelpCrypto.SimetricoDesEncryptar(Item.LENG7, ComoDato());
                    Item.LENG8   = HelpCrypto.SimetricoDesEncryptar(Item.LENG8, ComoDato());
                    Item.ENCRYPC = HelpCrypto.SimetricoDesEncryptar(Item.ENCRYPC, ComoDato());
                }
                else
                {
                    throw new Exception("¡ El sistema no encuentra su respectivo archivo de licencia para esta PC ! ");
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            return(Item);
        }
Beispiel #10
0
        private void btnMail_Click(object sender, EventArgs e)
        {
            try
            {
                if (propUsuario != "")
                {
                    string    lsPassword  = HelpCrypto.GenerarContrasenia();
                    BEUsuario itemUsuario = oAccessLocal.UserRolOptions(txtLogin.Text, string.Empty, msSistema);
                    if (itemUsuario.codUsuario != null)
                    {
                        StringBuilder lsMensaje = new StringBuilder();
                        lsMensaje.AppendLine("El nuevo password para el usuario: " + txtLogin.Text);
                        lsMensaje.AppendLine("se enviara al siguiente correo: " + itemUsuario.desCorreo);
                        lsMensaje.AppendLine("desea continuar");

                        if (MessageBox.Show(lsMensaje.ToString(), "Enviar Password",
                                            MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                        {
                            if (oAccessLocal.UpdatePasswordRec(txtLogin.Text,
                                                               lsPassword, true,
                                                               Environment.MachineName.ToString(),
                                                               HelpWindows.Usuario(false)))
                            {
                                MessageBox.Show(WebConstants.ValidacionDatosSEGURIDAD.FirstOrDefault(x => x.Key == 2023).Value,
                                                "Cambiar Password", MessageBoxButtons.OK, MessageBoxIcon.Information,
                                                MessageBoxDefaultButton.Button1);

                                //Mail oMail = new Mail();
                                //List<MailDatos> Lista = new List<MailDatos>();

                                //Lista.Add(new MailDatos { titulo = "User", descripcion = txtLogin.Text });
                                //Lista.Add(new MailDatos { titulo = "Password", descripcion = lsPassword });
                                //Lista.Add(new MailDatos { titulo = "-", descripcion = "-"});
                                //Lista.Add(new MailDatos { titulo = "PC", descripcion =  Environment.MachineName.ToString() });
                                //Lista.Add(new MailDatos { titulo = "PC User", descripcion = HelpWindows.Usuario(true) });


                                //string lsNota = "Nota : El nuevo password se genero de forma aleatoria se recomienda ingresar al sistema y modificalo.";
                                //string lsBody = oMail.CrearBody("Servicio de envio de Password", Lista, lsNota, "Oxinet");
                                //oMail.EnvioCorreo("SSI - Envio de Password", lsBody, itemUsuario.Correo);
                            }
                            else
                            {
                                MessageBox.Show("Se produjo un erro al enviar el Password. consulte con el administrador", "Enviar correo electrónico",
                                                MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
                            }
                        }
                    }
                    else
                    {
                        MessageBox.Show("El usuario no se encuentra registrado.", "Enviar correo electrónico",
                                        MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Enviar correo electrónico", MessageBoxButtons.OK, MessageBoxIcon.Error,
                                MessageBoxDefaultButton.Button1);
            }
        }