culturagovbr / mapasculturais_descontinuado

Mapas Culturais
16 stars 2 forks source link

Documentar métodos úteis para controle de permissões #167

Closed leogermani closed 6 years ago

leogermani commented 6 years ago

$controller->requireAuthentication() - se não tiver logado, redireciona pra pagina de login. (na verdade cada authProvider pode implementar o q quiser)

Cada entidade tem métodos que começam com canUser*, retorna bool checando se o usuário atual (logado ou não) tem permissão de realizar alguma action com essa entidade

canUser($action) - alias pra poder testar qq action

canUserView() - se o usuário pode ver essa entidade. Esses métodos são protected e não devem ser chamadas diretamente. Servem só pra implementarem as permissões. Sempre usar o canUser() …

$entity->checkPermission($action) - checa se tem permissão e, se não tiver, throw execption de permissão negada

$app::disableAccessControl() e $app::enableAccessControl() - desabilitiam e habilitam a checagem a qq permissão. O sistema fica todo aberto