Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #21  
Antiguo 18-11-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Gracias Delphius. No creas que lo tuyo es más complicado... más bien yo diría, modestia aparte, que lo mío es muy simple... acaso demasiado. Pero, en fin... de momento ahí vamos. Cualquier cosa que se te ocurra será bienvenida, por supuesto. A ver si pronto puedes echar un vistazo al código fuente de mi invento, siempre que quieras, claro está.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #22  
Antiguo 18-11-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por dec Ver Mensaje
Hola,

Gracias Delphius. No creas que lo tuyo es más complicado... más bien yo diría, modestia aparte, que lo mío es muy simple... acaso demasiado. Pero, en fin... de momento ahí vamos. Cualquier cosa que se te ocurra será bienvenida, por supuesto. A ver si pronto puedes echar un vistazo al código fuente de mi invento, siempre que quieras, claro está.
Pues yo me hago lios con mi modelo. El mayor supuesto con el que deseo operar es que: en el contexto del problema existen tendencias de cambios inesperados y no se puede dejar nada al azar. Debe ser lo suficiente flexible como para permitir adaptarse a variadas reglas de asignaciones de permisos, perfiles y situaciones, independientemente del negocio en donde operan. Por si te "pica la espina" lo estaba tratando aquí. Lo tuve que dejar de lado, porque no era obligatorio, pero me gustaría llegar a conseguir algo así. De vez en cuando vuelvo a repasar esta parte para ver si aprendo algo; pero se me queman los cables... algún dia lo lograré. Considero que es una buena opción a contemplar en mi trabajo, pues está entre mis objetivos que el producto sea adaptable a cualquier entorno (me esta saliendo, pero en esa parte da problemas)

En cuanto aprenda bien (o medianamente bien) PHP voy a poder comprender el código fuente. Por ahora "sigo en pañales". Pero no espero las esperanzas de aprenderlo y usarlo, sobre todo después del proyecto que tengo en mano,... que sería el segundo paso.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #23  
Antiguo 18-11-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
Empezado por Delphius
En cuanto aprenda bien (o medianamente bien) PHP voy a poder comprender el código fuente. Por ahora "sigo en pañales". Pero no espero las esperanzas de aprenderlo y usarlo, sobre todo después del proyecto que tengo en mano,... que sería el segundo paso.
Ponte a ello, verás que puede llegar a ser divertido. Sobre todo si no has hecho nunca nada para "la web", o, incluso más, si has hecho algo pero siempre "estático", con HTML y demás. PHP te abre unas puertas bien grandes. Montarte un entorno para "jugar" con PHP no es complicado.

Hay distribuciones de lo necesario como pueda ser Xampp, que ponen las cosas bastante sencillas, para empezar. Y entornos de desarrollo como Eclipse PDT y Aptana que quitan el sentido. En fin. Que todo es ponerse. Y te lo digo yo... que casi empiezo, pero, bueno...
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #24  
Antiguo 18-11-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por dec Ver Mensaje
Hola,

Ponte a ello, verás que puede llegar a ser divertido. Sobre todo si no has hecho nunca nada para "la web", o, incluso más, si has hecho algo pero siempre "estático", con HTML y demás. PHP te abre unas puertas bien grandes. Montarte un entorno para "jugar" con PHP no es complicado.

Hay distribuciones de lo necesario como pueda ser Xampp, que ponen las cosas bastante sencillas, para empezar. Y entornos de desarrollo como Eclipse PDT y Aptana que quitan el sentido. En fin. Que todo es ponerse. Y te lo digo yo... que casi empiezo, pero, bueno...
Es divertido, de lo poco que he todado lo he notado divertido... mi problema es que hasta no comprender correctamente HTML poco o nada voy a aprovechar PHP (que la lo tengo instalado, en Windows... pero bueno. la cosa es tenerlo). Por recomendación tuya ya llevo 2 días descargando Aptana (de a poquito, en lo que la conexión me lo permita)

Saludos,
PD: ¡Porque carajo no me llega la antena WiFi de una c.... vez! ¡Que quiero meterme en la internet gratis que promueve el gobierno!
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #25  
Antiguo 18-11-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Hombre... te comprendo perfectamente. Todavía puedo decir que la mayor parte de mi "vida de internauta" la he hecho con una conexión a Internet para nada parecida a la que tengo ahora, sin la que ya no sabría vivir... pero, te diré algo: Aptana merece la pena, o esa es mi opinión. Así que... a darle duro. Más de una ISO y más de dos me he descargado yo con mi módem... ¡ya lo creo! Semanas enteras para bajar algún SUSE... aunque tú tal vez podrías recurrir a algún amigo, o a algún "ciber café"...
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #26  
Antiguo 19-11-2007
Avatar de walito
walito walito is offline
Miembro
 
Registrado: jun 2005
Posts: 121
Poder: 19
walito Va por buen camino
Cita:
Empezado por dec Ver Mensaje
Hola,

Todo ayuda Delphius. ¿Sabes qué pasa? Que al cabo he "conseguido" (todavía lo pongo en duda) un sistema de privilegios, de "roles", muy, pero, que, muy sencillo... vamos, a mí me lo parece, y, desde luego, comparándolo con el de WordPress (que es un sistema similar al que traigo entre manos, si bien el mío es mucho más humilde), digo, en WordPress es un asunto bastante complejo, o a mí me lo parece.

Sin embargo, voy a mostrar la "burrada" que he preparado para asignar diferentes permisos a diferentes usuarios. A continuación el método "InitializeUserRoles()" de una clase "Roles":

Código PHP:
  private function InitializeUserRoles(){
    
// 10 = Admin user
    
$this->userRoles[10][ROLES_CAP_MANAGE_SITE] = true;
    
$this->userRoles[10][ROLES_CAP_MANAGE_LINKS] = true;    
    
$this->userRoles[10][ROLES_CAP_MANAGE_TERMS] = true;  
    
$this->userRoles[10][ROLES_CAP_MANAGE_POSTS] = true;   
    
$this->userRoles[10][ROLES_CAP_MANAGE_USERS] = true;    
    
$this->userRoles[10][ROLES_CAP_MANAGE_THEMES] = true;
    
$this->userRoles[10][ROLES_CAP_MANAGE_IMPORT] = true;    
    
$this->userRoles[10][ROLES_CAP_MANAGE_EXPORT] = true;    
    
$this->userRoles[10][ROLES_CAP_MANAGE_OPTIONS] = true;
    
$this->userRoles[10][ROLES_CAP_MANAGE_PROFILE] = true;      
    
$this->userRoles[10][ROLES_CAP_MANAGE_COMMENTS] = true;
    
// 9 = Editor user
    
$this->userRoles[9][ROLES_CAP_MANAGE_SITE] = true;
    
$this->userRoles[9][ROLES_CAP_MANAGE_LINKS] = true;    
    
$this->userRoles[9][ROLES_CAP_MANAGE_TERMS] = true
    
$this->userRoles[9][ROLES_CAP_MANAGE_POSTS] = true;     
    
$this->userRoles[9][ROLES_CAP_MANAGE_PROFILE] = true;          
    
$this->userRoles[9][ROLES_CAP_MANAGE_COMMENTS] = true;
    
// 8 = Author user
    
$this->userRoles[8][ROLES_CAP_MANAGE_SITE] = true;    
    
$this->userRoles[8][ROLES_CAP_MANAGE_POSTS] = true;  
    
$this->userRoles[8][ROLES_CAP_MANAGE_PROFILE] = true;    
    return 
true;
  } 
Eso, que estoy seguro de que puede mejorarse (pero, ahora no estamos viendo eso), se resume en "El usuario con nivel 10 puede administrar el sitio", "El usuario con nivel 10 puede administrar enlaces", etc., etc. Luego, como puede verse, según bajamos el nivel del usuario este puede hacer menos cosas. Eso sería una especie de "tabla de capacidadades según el nivel de cada usuario".

Hay que decir que la clase "Roles" sirve a una propiedad de la clase "User". La clase "User" cuenta con una propiedad (variable, miembro) del tipo "Roles". Cuando se instancia la clase "User" se asigna a la variable "userlevel" (del tipo "Roles") un determinado nivel y, la propia clase "User" cuenta con un método "Can()" que lo que hace es llamar a este otro de la clase "Roles":

Código PHP:
  public function UserCan($capability){    
    if(isset(
$this->userRoles[$this->userLevel][$capability])){
      return 
$this->userRoles[$this->userLevel][$capability];  
    }else{
      return 
false
    }
  } 
Que, como puede verse, viene a comprobar si el usuario del nivel que sea, puede realizar una determinada tarea, tiene la capacidad de realizarla. Básicamente en eso se resume todo... (!). En la base de datos hay una tabla "users" y otra tabla "usersmeta", que están relacionadas. A cada usuario le corresponde un nivel, que se guarda en "usersmeta". Y eso es todo... No hay más... ¡y parece funcionar!

Pero,... francamente, no entiendo entonces a qué tanto "lío" en WordPress con los permisos... y, como sé perfectamente que WordPress es mucho WordPress, y que mi sistema no le llega a la altura de los zapatos... no tengo sino pensar que en algo estoy metiendo la pata, que lo que he hecho no está bien hecho, porque, ¡no puede haberme resultado tan sencillo, ni, en general, resultar tan sencillo como parece y es!

Pero, para terminar, aquí aplica aquello de "Eppurse muove"... porque, con todas las dudas que hay todavía por ahí rondando, el caso es que parece que el puñetero sistema funciona...

En todo caso, y, en lo que respecta a esto último, tal vez debería hacer lo que ha recomendado ArdiIIa, esto es, mirar algún otro programa similar y estudiar su funcionamiento. Y a lo mejor para lo que planteo desde un principio tampoco estaría mal que hiciera esto, pero, bueno, qué leches, quería comentar aquí el asunto a ver qué os parecía a vosotros.
Dec, la mejor opcion es esa que tu comentas ahi, yo hice algo parecido pero en delphi donde formas un arbol con los permios.
Yo lo hice asi:
[modulo]->[submodulo]->[permisos]->[agregas, editar, borrar, etc]

Yo lo cargo de la sig forma:
[nombreModulo][listousuarios][permiso][listar]
[nombreModulo][listousuarios][permiso][imprimir]
[nombreModulo][listousuarios][permiso][ver]

[nombreModulo][agregaeditausuarios][permiso][editar]

Despues con una funcion le paso los 2 primeros parametros, y en el 3ro pregunto si ese permiso esta seteado

GetPermisos('nombreModulo', 'agregaeditausuarios', 'agregar'): boolean

entonces siempre que cargues la pagina en php antes de todo segun tus opcion verificar si tiene o no esos permisos, en caso de que no tenga permisos, el boton o lo que fuese lo desactivas.

Es una idea que me surgio y quedo andando a la perfeccion.

Saludos
Responder Con Cita
  #27  
Antiguo 19-11-2007
Avatar de walito
walito walito is offline
Miembro
 
Registrado: jun 2005
Posts: 121
Poder: 19
walito Va por buen camino
Dec, cualquier cosa que necesites de PHP avisame por este medio, tengo bastante experiencia en php.

Asi ya quedan mis respuestas en el foro para que alguien las use
Responder Con Cita
  #28  
Antiguo 19-11-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Gracias Walito. Ahí andamos.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #29  
Antiguo 21-11-2007
Avatar de ArdiIIa
[ArdiIIa] ArdiIIa is offline
Miembro Premium
 
Registrado: nov 2003
Ubicación: Valencia city
Posts: 1.481
Poder: 22
ArdiIIa Va por buen camino
Cita:
Empezado por dec Ver Mensaje
De hecho, mirando en WordPress (referencia obligada del sistema de que tratamos)
Cita:
Empezado por Delphius Ver Mensaje
Me he bajado WordPress (una versión que dicen que es en castellano)
Saludos,
Wordpress: vulnerabilidad en la autenticación por cookies

Visto aquí
__________________
Un poco de tu generosidad puede salvar la vida a un niño. ASÍ DE SENCILLO
Responder Con Cita
  #30  
Antiguo 21-11-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Sí; leí sobre el asunto ayer. Se ve que visitamos Kriptópolis.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Usuarios y roles morta71 Firebird e Interbase 10 05-02-2008 09:36:58
Permisos, roles y usuarios TJose Firebird e Interbase 0 04-04-2005 16:22:19
Recuperar roles y lista de usuarios de la DB alehillebrand Firebird e Interbase 3 19-02-2005 19:14:21
roles, sesiones y usuarios de oracle 7.3 y delphi 7 rcrmilo Oracle 12 03-06-2004 19:22:23
Roles - Usuarios y privilegios Osorio Firebird e Interbase 2 13-02-2004 23:34:31


La franja horaria es GMT +2. Ahora son las 23:43:29.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi