Foros del Web » Programando para Internet » PHP » Zend »

Duda con zend_acl

Estas en el tema de Duda con zend_acl en el foro de Zend en Foros del Web. Hola amigos estoy utilizando el ejemplo de devzone sobre zend acl, creo dos recursos: modulo: default, controlador: index. modulo: loguearusu controlador: index Sin embargo en ...
  #1 (permalink)  
Antiguo 24/09/2009, 18:57
 
Fecha de Ingreso: junio-2009
Mensajes: 156
Antigüedad: 14 años, 10 meses
Puntos: 3
Duda con zend_acl

Hola amigos estoy utilizando el ejemplo de devzone sobre zend acl, creo dos recursos:
modulo: default, controlador: index.
modulo: loguearusu controlador: index

Sin embargo en otro modulo que no he creado recurso alguno, cuando intento entrar me rebota.
Mi duda es si tengo que crear recursos sobre todos los modulos, controllers y actions.
Que deberia pasar si entro a algun modulo controller action que no le declare ningun recurso?

Código PHP:
class MyApp_Acl extends Zend_Acl
{
    public function 
__construct(Zend_Auth $auth)
    {
        
//$roleGuest = new Zend_Acl_Role('guest');

        
$this->add( new Zend_Acl_Resource'default:index' ) );
        
$this->add( new Zend_Acl_Resource'loguearusu:index' ) );
        
        
$this->addRole( new Zend_Acl_Role'invitado' ) );
        
$this->addRole( new Zend_Acl_Role'usuario' ), 'invitado' );
        
$this->addRole( new Zend_Acl_Role'administra' ), 'usuario' );

        
// Guest may only view content
        
$this->allow'invitado''default:index','index');
        
$this->allow'invitado''default:index','segundo');
        
$this->allow'invitado''loguearusu:index','index');
        
$this->allow'invitado''loguearusu:index','logueo' );
                
         
$this->allow'administra'); // unrestricted access
    
}

Saludos.
  #2 (permalink)  
Antiguo 25/09/2009, 08:47
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Duda con zend_acl

Lo que pasa es que por defecto Zend_Acl es restrictivo, deniega todas las acciones, recursos y usuarios que no conoce, por eso es que tu debes explicitamente agregar los modulos, y las acciones necesarias y permitir el acceso.

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:59.