Beispiel #1
0
        private void VerificarToken()
        {
            string parametros = ParamEncrip.ObtenerParametrosPagina();

            try
            {
                if (paramEncrip["tkn"] != null)
                {
                    //Busca token en BD
                    T.RespuestaSesion r = new NegocioSistema(null, null).ValidarToken(paramEncrip["tkn"]);
                    //if ( paramEncrip["nurl"] != null)
                    //{
                    //    //Encripta url y la envia
                    //    parametros += ("nurl=" + paramEncrip["nurl"]);
                    //}

                    if (r.Code != "0")//Sesion no activa
                    {
                        Response.Redirect(MapeoSistema.END_SESION + "?" + HttpUtility.UrlPathEncode(parametros), false);
                    }
                    else
                    {
                    }
                }
                else
                {
                    Response.Redirect(MapeoSistema.RUTA_SESION + ((!string.IsNullOrEmpty(parametros))?"?" + HttpUtility.UrlPathEncode(parametros):""), false);
                }
            }
            catch (Exception ex)
            {
                Response.Redirect(MapeoSistema.END_SESION + "?" + HttpUtility.UrlPathEncode(parametros));
            }
        }
 protected void lknDenegarTodo_Click(object sender, EventArgs e)
 {
     try
     {
         NegocioAdmin           negAdmin = new NegocioAdmin(sistema.USR_LOGIN, sistema.PASS);
         List <E.VMPermisoItem> permisos = new NegocioSistema(sistema.USR_LOGIN, sistema.PASS).
                                           ObtenerPermisosItemsUsuario(lblNomUsuarioSelPermisosItem.Text /*Convert.ToBase64String(Tools.Encriptacion.Encriptar(lblNomUsuarioSelPermiso.InnerText))*/,
                                                                       Convert.ToInt32(ddlSistemasPermisos.SelectedItem.Value));
         for (int i = 0; i < permisos.Count; i++)
         {
             permisos[i].Delete = false;
             permisos[i].Write  = false;
             negAdmin.AsignarPermisosItems(
                 permisos[i].IdUsuarioPermisos,
                 permisos[i].Write,
                 permisos[i].Delete
                 );
         }
         rgPermisos.DataSource = permisos;
         rgPermisos.DataBind();
     }
     catch (Exception ex)
     {
         MostrarErrorPermisos("No fue posible asignar los permisos:" + ex.Message);
     }
 }
        /// <summary>
        /// Indica que opciones son visibles para este usuario
        /// </summary>
        protected void ConfigurarPermisos()
        {
            // Obtiene lospermisos para el usuario y rol actuales
            NegocioSistema negocioSis = new NegocioSistema(sistema.USR_LOGIN, sistema.PASS);

            E.VMPermisoItem permisos = negocioSis
                                       .ObtenerPermisosItemsUsuarioRol(sistema.USR_LOGIN, sistema.SISTEMA_ACTUAL.IdSistema, sistema.ROL_ACTUAL.IdRol, this.ID_PAGINA);
            if (permisos != null)
            { //Aplica permisos de editar o crear
                if (!permisos.Write)
                {
                }

                List <E.VMToolItem> permisosTools = negocioSis.ObtenerPermisosToolsUsuario(permisos.IdUsuarioPermisos);
                if (permisosTools != null)
                {
                    //Busca que herramientas debe mostrar
                    foreach (E.VMToolItem tool in permisosTools)
                    {
                        if (!tool.Permitir)
                        {
                            switch (tool.IdTool)
                            {
                            case 1:
                                btnNuevoUsuario.Visible = false;
                                break;

                            case 3:
                                //eliminar
                                break;

                            case 4:
                                RadMenuContextual.Items.FindItemByValue("EDITAR").Visible = false;
                                break;

                            case 5:
                                RadMenuContextual.Items.FindItemByValue("RESET").Visible = false;
                                break;

                            case 6:
                                RadMenuContextual.Items.FindItemByValue("ROLES").Visible = false;
                                break;

                            case 7:
                                RadMenuContextual.Items.FindItemByValue("PERMISOS").Visible = false;
                                break;
                            }
                        }
                    }
                }
            }
        }
 private void VerHerramientasItem(int idUsuarioPermiso, CheckBoxList herramientas)
 {
     try
     {
         herramientas.Items.Clear();
         List <E.VMToolItem> tools = new NegocioSistema(sistema.USR_LOGIN, sistema.PASS).ObtenerPermisosToolsUsuario(idUsuarioPermiso);
         foreach (E.VMToolItem e in tools)
         {
             ListItem i = new ListItem(e.Nombre, e.IdUsuarioPermisos + "-" + e.IdTool);
             i.Selected = e.Permitir;
             herramientas.Items.Add(i);
         }
     }
     catch (Exception ex)
     {
         MostrarErrorPermisos("No es posible mostar las herramientas asignadas:" + ex.Message);
     }
 }
        private void IniciarSesion(string usuario, string llave, string ip, string sistema)
        {
            try
            {
                string respuesta = new NegocioSistema(null, null).IniciarSesion(
                    Convert.ToBase64String(Encriptacion.Encriptar(usuario)),
                    Convert.ToBase64String(Encriptacion.Encriptar(llave)),
                    ip,
                    sistema,
                    chkCerrarSesiones.Checked
                    );
                string    data = Encriptacion.Desencriptar(Convert.FromBase64String(respuesta));
                string [] info = data.Split(';');

                //Sistema.USUARIO = tbUsuario.Text;
                // Sistema.PASS = tbPass.Text;
                // Sistema.NOMBRE_USUARIO = us.Nombre;
                // Sistema.NOMBRE_USUARIO = info[0];
                new Sistema().TOKEN_SESION = respuesta;
                if (string.IsNullOrEmpty(paramEncrip["nurl"]))//no definiio redireccion
                {
                    Response.Redirect(MapeoSistema.HOME + "?tkn=" + HttpUtility.UrlPathEncode(respuesta), false);
                }
                else
                {
                    string nurl      = paramEncrip["nurl"];
                    byte[] nurlDecod = Convert.FromBase64String(nurl);
                    string nurlDes   = Encriptacion.Desencriptar(nurlDecod);
                    //Valida que la url sea valida para este usuario
                    Entidades.Serv_Token.RespuestaSesion r = new NegocioSistema(null, null).ValidarAcceso(Convert.ToBase64String(Encriptacion.Encriptar(usuario))
                                                                                                          , nurlDes);
                    if (r.Code == "403")//Acceso denegado
                    {
                        Response.Redirect(MapeoSistema.ERROR_403, false);
                    }
                    else
                    {
                        Response.Redirect(nurlDes + "?tkn=" + HttpUtility.UrlPathEncode(respuesta), false);
                    }
                }
            }
            catch (Exception ex)
            {
                if (ex.Data["code"] != null)
                {
                    switch (ex.Data["code"].ToString())
                    {
                    case "1":     //error no especificado
                    case "2":
                    case "3":     //Cerrar todas las sesiones
                        MostrarMensajeError("Error: " + ex.Message);
                        break;

                    case "5":
                        MuestraFormularioContraseña(ex.Data["code"].ToString(), ex.Message, usuario);
                        break;
                    }
                }
                else
                {
                    MostrarMensajeError("Error: " + ex.Message);
                }
            }
        }