public static bool ManejarPrivilegios(Privilegios PrivilegioRequerido, Privilegios PrivilegioDado)
 {
     if (PrivilegioRequerido == Privilegios.Administrador)
     {
         if (PrivilegioDado == Privilegios.Administrador)
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
     else if (PrivilegioRequerido == Privilegios.Facturador)
     {
         if (PrivilegioDado == Privilegios.Administrador || PrivilegioDado == Privilegios.Facturador)
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
     else if (PrivilegioRequerido == Privilegios.Informador)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Exemple #2
0
 public static bool MostrarConPrivilegio(Privilegios min, string UserID)
 {
     if (HttpContext.Current.Session != null)
     {
         bool Esta_En_Certificacion = ParseExtensions.ItsUserOnCertificationEnvironment(UserID);
         if (Esta_En_Certificacion)
         {
             if (HttpContext.Current.Session["PrivCert"] != null)
             {
                 Privilegios PrivilegioEnCache = (Privilegios)HttpContext.Current.Session["PrivCert"];
                 return(PrivilegiosHandler.ManejarPrivilegios(min, PrivilegioEnCache));
             }
             return(false);
         }
         else
         {
             if (HttpContext.Current.Session["PrivProd"] != null)
             {
                 Privilegios PrivilegioEnCache = (Privilegios)HttpContext.Current.Session["PrivProd"];
                 return(PrivilegiosHandler.ManejarPrivilegios(min, PrivilegioEnCache));
             }
             return(false);
         }
     }
     return(false);
 }
Exemple #3
0
 public frmEditarUsuario(int id)
 {
     InitializeComponent();
     u    = new Usuario();
     u.ID = id;
     u.UserDataChanged += new EventHandler(frmPrincipal.Instancia.UserDataChanged);
     p = new Privilegios(id);
 }
Exemple #4
0
 public void UpdatePrivilegio(Privilegios privilegios)
 {
     using (context = new BDContext())
     {
         context.Entry(privilegios).State = System.Data.Entity.EntityState.Modified;
         context.SaveChanges();
     }
 }
Exemple #5
0
 public void AddPrivilegio(Privilegios privilegios)
 {
     using (context = new BDContext())
     {
         context.Privilegios.Add(privilegios);
         context.SaveChanges();
     }
 }
Exemple #6
0
        // private readonly Privilegios _privilegio;
        // static HttpClient _httpClient = null;
        // IOptions<AppSettings> _appSettings;

        public AuthorizationAttribute(Privilegios privilegio, IOptions <AppSettings> appSettings)
        {
            // if (_httpClient == null)
            // {
            //     _httpClient = new HttpClient();
            //     HttpHelpers.InitializeHttpClient(_httpClient, _appSettings.Value.URLBaseAPI);
            // }
            // _privilegio = privilegio;
        }
    public override void OnAuthorization(AuthorizationContext filterContext)
    {
        //Obtiene el privilegio minimo requerido del parametro expuesto al interno
        PrivilegioMin = PrivilegioMinimoRequerido;

        string UserID  = filterContext.HttpContext.User.Identity.GetUserId();
        var    Session = filterContext.HttpContext.Session;

        FacturaPoliContext db = ParseExtensions.GetDatabaseContext(UserID);

        //rescata usuario
        UsuarioModel objUsuario = db.DBUsuarios.SingleOrDefault(r => r.IdentityID == UserID);

        if (objUsuario == null)
        {
            /*REDIRECT A EL PANEL DE SELECCION DE EMISOR*/
            filterContext.Result = RetornarSeleccionEmisor();
            return;
        }

        QuickEmisorModel objEmisor = PerfilamientoModule.GetEmisorSeleccionado(Session, UserID);

        if (objEmisor == null)
        {
            /*REDIRECT A EL PANEL DE SELECCION DE EMISOR*/
            filterContext.Result = RetornarSeleccionEmisor();
            return;
        }

        //Revisar su tabla de compañias autorizadas
        EmisoresHabilitados objEmisorHabilitado = db.DBEmisoresHabilitados.SingleOrDefault(r => r.QuickEmisorModelID == objEmisor.QuickEmisorModelID && r.UsuarioModelID == objUsuario.UsuarioModelID);

        if (objEmisorHabilitado == null)
        {
            /*REDIRECT A EL PANEL DE SELECCION DE EMISOR*/
            filterContext.Result = RetornarSeleccionEmisor();
            return;
        }

        Privilegios PrivilegioDelUsuario = objEmisorHabilitado.privilegiosAcceso;
        bool        EstaAutorizado       = ManejarPrivilegios(PrivilegioMin, PrivilegioDelUsuario);

        if (EstaAutorizado == false)
        {
            /*REDIRECT A EL PANEL DE SELECCION DE EMISOR*/
            filterContext.Result = RetornarSeleccionEmisor();
            return;
        }
    }
Exemple #8
0
        /// <summary>
        /// Función que verifica los datos del usuario para su ingreso, y en caso de ser correctos, guarda la información del usuario.
        /// </summary>
        /// <param name="nomUsu">Nombre del usuario</param>
        /// <param name="pass">Contraseña del usuario</param>
        /// <returns>Valor booleano que indica si los datos son correctos</returns>
        async public static Task <bool> VerificarIngresoUsuario(string nomUsu, string pass)
        {
            bool existe = false;

            try
            {
                MySqlCommand sql = new MySqlCommand();
                sql.CommandText = "SELECT id, nivel, nombre, apellidos, imagen FROM usuario WHERE username=?userName AND pass=?pass AND eliminado=0 AND sucursal_id='" + Config.idSucursal + "'";
                sql.Parameters.AddWithValue("?userName", nomUsu);
                sql.Parameters.AddWithValue("?pass", Criptografia.Cifrar(pass));
                DataTable dt = ConexionBD.EjecutarConsultaSelect(sql);
                foreach (DataRow dr in dt.Rows)
                {
                    idUsuActual  = (int)dr["id"];
                    nomUsuActual = dr["nombre"].ToString();
                    apeUsuActual = dr["apellidos"].ToString();
                    if (dr["imagen"] != DBNull.Value)
                    {
                        imgUsuActual = FuncionesGenerales.BytesImagen((byte[])dr["imagen"]);
                    }
                    else
                    {
                        imgUsuActual = null;
                    }
                    existe = true;
                    await Privilegios.PrivilegiosUsuario(idUsuActual);
                }
            }
            catch (InvalidCastException ex)
            {
                throw ex;
            }
            catch (MySqlException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(existe);
        }
Exemple #9
0
 public frmPrivilegios(frmEditarUsuario frm)
 {
     InitializeComponent();
     this.frmE = frm;
     p         = frm.P;
 }
Exemple #10
0
 public frmPrivilegios(frmNuevoUsuario frm)
 {
     InitializeComponent();
     this.frmN = frm;
     p         = frm.P;
 }