Autenticação de Usuários

Autenticação de Usuários

Zend\Permissions\Acl\Acl

 

Métodos Importantes
addRole(Zend\Permissions\Acl\Role\GenericRole)
Adiciona papéis de usuários (Administrador, Moderador, Comum…)
addResource(Zend\Permissions\Acl\Resource\GenericResource)
Adiciona recursos do seu projeto (contato, cliente, usuario)
allow(Zend\Permissions\Acl\Role\GenericRole,Zend\Permissions\Acl\Resource\GenericResource, String)
Insere permissão de um papel à um recurso, por exemplo, allow(‘Administrador’, ‘Contato’, ‘Deletar’) ou allow(‘Comum’, ‘Cliente’, ‘Inserir’);
isAllowed(Zend\Permissions\Acl\Role\GenericRole,Zend\Permissions\Acl\Resource\GenericResource, String)
Verifica se um papel tem em um recurso uma permissão específica. Se fizéssemos isAllowed(‘Administrador’, ‘Contato’, ‘Deletar’) ele retornaria verdadeiro no nosso caso.


Zend\Navigation

Métodos Importantes

 

\Zend\View\Helper\Navigation::setDefaultAcl(Zend\Permissions\Acl\Acl);
Adiciona um objeto Acl já com papéis, recursos e permissões adicionadas. Esse objeto será usado para exibir ou não itens do menu.
\Zend\View\Helper\Navigation::setDefaultRole(Zend\Permissions\Acl\Role\GenericRole);
Insere o papel de quem está logado. Se o usuário logado for um administrador, então passamos esse valor para esse método e o Navigation irá consultar o objeto Acl que passamos se quais permissões ele possui.

module.config.php

 

‘service_manager’ =>array(
       ‘factories’ =>array(
           ‘navigation’ => ‘Zend\Navigation\Service\DefaultNavigationFactory’,
       ),
),
‘navigation’ =>array(
       ‘default’ =>array(
           array(
               ‘label’      => ‘My Account’,
               ‘route’      => ‘access-account-perfil’,
               ‘controller’ => ‘account’,
               ‘action’     => ‘perfil’,
               ‘resource’   => ‘ACCOUNT’,
               ‘privilege’  => ‘PERFIL’,
               ‘visible’    =>true,
               ‘pages’ =>array(
                   array(
                       ‘label’      => ‘Edit My Account’,
                       ‘route’      => ‘access-account-edit’,
                       ‘controller’ => ‘account’,
                       ‘action’     => ‘edit’,
                       ‘resource’   => ‘ACCOUNT’,
                       ‘privilege’  => ‘EDIT’,
                       ‘visible’    =>false,
                   ),
                   array(
                       ‘label’      => ‘Change Password’,
                       ‘route’      => ‘access-accountpassword-edit’,
                       ‘controller’ => ‘account’,
                       ‘action’     => ‘editpassword’,
                       ‘resource’   => ‘ACCOUNT’,
                       ‘privilege’  => ‘EDITPASSWORD’,
                       ‘visible’    =>false,
                   ),
               )
           ),
           array(
               ‘label’      => ‘Log out’,
               ‘route’      => ‘access-logout’,
               ‘controller’ => ‘auth’,
               ‘action’     => ‘logout’,
               ‘resource’   => ‘AUTH’,
               ‘privilege’  => ‘LOGOUT’,
               ‘visible’    =>true,
           ),
       ),
   ),

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s