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); } } }