Hola a todos,
A raíz de
otro tema estoy probando Zend_Acl por recomendación de
GatroV, y la verdad es que soluciona con bastante soltura lo que necesito.
Pero antes de montar todo el sistema de permisos, que es algo enrevesado. He leído la documentación de Zend, y algunos tutoriales, ejemplos y demás.
Pero me surgen algunas dudas en cuanto a como estructurarlo y la sintaxis (esto último no viene muy bien explicado en la documentación Zend, o por lo menos, si está me lo he saltado).
1- Al declarar los distintos roles o recursos, hay alguna diferencia en el orden en que se declaran?
Por ejemplo en la herencia múltiple de entre roles si toma en cuenta el orden para dar prioridad.
2- En la sintaxis veo que es así, no se si hay otra forma para declarar los roles.
Código PHP:
$acl->addRole(new Zend_Acl_Role
('ROL') [ , 'ROL_HEREDADO' ó $array_ROLES_HEREDADOS] );
3 - En el caso de la sintaxis de "isAllowed" que ponen 3 valores, el último que es?
Código PHP:
$acl->isAllowed('ROL', 'RECURSO', 'QUE_ES_ESTE?') ?
1 : 0;
4 - He visto en algunos tutoriales que hablan de Privilegios o permisos para los recursos, imagino que que en definitiva son subrecursos de subrecursos... o es otro tipo de permiso complementario.
Código:
...
Recurso: son las zonas en las que se puede dividir
la aplicación. Podría ser: editorial, marketing, administracion, …
Subrecursos: son los componentes de los Recursos. Como en
forma de árbol, son los hijos de los Recursos, y solamente tiene a un
Recurso como padre.
Permisos: son las acciones concretas que se pueden hacer sobre
un Subrecurso.
5 - Y por último, es correcto usarlo así de básico, o se recomienda de otra forma que sea más efectiva?
Código PHP:
if ($acl->isAllowed('ROL', 'RECURSO') ? 1 : 0)
{
// Contenido a mostrar
}
Como os comentaba antes, he visto tutoriales muy elaborados y demás, pero se han olvidado de explicar lo básico...
Gracias de antemano.
Saludos,