示例#1
0
        private static void ManejarErrorDeAutenticacion(UsuarioEntity usuario, ConfiguracionSeguridadEntity configuracionSeguridad, TipoAplicacion idAplicacion = TipoAplicacion.ORDENES)
        {
            string codigo = CodeMensajes.ERR_AUTHENTICATEUSUARIO;

            usuario.CantidadIntentos = IncreaseIntentos(usuario);

            if (configuracionSeguridad.CantidadIntentosMaximo > 0)
            {
                if (usuario.CantidadIntentos >= configuracionSeguridad.CantidadIntentosMaximo)
                {
                    UserHelper.BlockUsuarios(usuario.IdUsuario, (byte)LogCodigoAccionSeguridad.MaximosIntentos);
                    codigo = CodeMensajes.ERR_ALCANZO_MAXIMO_INTENTOS;
                }
            }
            AdministradorControlErrores.EnviarExcepcion(codigo, false, usuario.Username);
        }
        public override object ExecuteCommand(InCourseRequest inCourseRequest)
        {
            var entidad = (from d in context.ConfiguracionSeguridad where d.IdConfiguracionSeguridad == IdConfiguracionSeguridad select d);

            ValidateExiste(entidad.Count(), IdConfiguracionSeguridad, CodigosMensajes.FE_ACTUALIZA_NO_EXISTE);

            ConfiguracionSeguridadEntity request = entidad.FirstOrDefault();

            request.TimeOutInicialSesion = TimeOutInicialSesion;

            request.TimeOutExtensionSesion = TimeOutExtensionSesion;

            request.CantidadIntentosMaximo = CantidadIntentosMaximo;

            request.MaximoDiasInactividad = MaximoDiasInactividad;

            request.DiasCambioPassword = DiasCambioPassword;

            request.CantidadPasswordsHistoricas = CantidadPasswordsHistoricas;

            request.ConsideraMinimoLargoPassword = ConsideraMinimoLargoPassword;

            request.CantidadMinimoLargoPassword = ConsideraMinimoLargoPassword ? CantidadMinimoLargoPassword : (byte)0;

            request.ConsideraMaximaCantCaracteresConsecutivos = ConsideraMaximaCantCaracteresConsecutivos;

            request.CantidadMaximaCaracteresConsecutivos = ConsideraMaximaCantCaracteresConsecutivos ? CantidadMaximaCaracteresConsecutivos : (byte)0;

            request.ConsideraCantidadCaracteres = ConsideraCantidadCaracteres;

            request.CantidadAlfabeticosPassword = ConsideraCantidadCaracteres ? CantidadAlfabeticosPassword : (byte)0;

            request.CantidadNumericosPassword = ConsideraCantidadCaracteres ? CantidadNumericosPassword : (byte)0;

            request.CantidadMinusculasPassword = ConsideraCantidadCaracteres ? CantidadMinusculasPassword : (byte)0;

            request.CantidadSimbolosPassword = ConsideraCantidadCaracteres ? CantidadSimbolosPassword : (byte)0;

            request.CantidadMayusculasPassword = ConsideraCantidadCaracteres ? CantidadMayusculasPassword : (byte)0;

            request.DobleAutenticacion = DobleAutenticacion;


            return(true);
        }
示例#3
0
        public ConfiguracionSeguridadEntity GetConfiguracionSeguridad()
        {
            string keyCache = KEY_CONFIG_SEGURIDAD;
            ConfiguracionSeguridadEntity config = CacheLayer.Get <ConfiguracionSeguridadEntity>(keyCache);

            if (config == null)
            {
                using (OrdenesContext dbContext = new OrdenesContext())
                {
                    config =
                        (from d in dbContext.ConfiguracionSeguridad select d).FirstOrDefault();
                }
                if (config != null)
                {
                    CacheLayer.Add <ConfiguracionSeguridadEntity>(config, keyCache);
                }
            }

            return(config);
        }
示例#4
0
 private static void ExtenderSesion(MAEUserSession session, ConfiguracionSeguridadEntity _beSeteos)
 {
     session.FechaInicio       = DateTime.Now;
     session.FechaFinalizacion = MAEDateTimeTools.DateTimeAdd(DateTime.Now, _beSeteos.TimeOutInicialSesion, "s");
     UpdateSesionesContext(session);
 }