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] );
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:
5 - Y por último, es correcto usarlo así de básico, o se recomienda de otra forma que sea más efectiva?... 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.
Código PHP:
if ($acl->isAllowed('ROL', 'RECURSO') ? 1 : 0)
{
// Contenido a mostrar
}
Gracias de antemano.
Saludos,