CakePHP 2.1 - objeto de autorização personalizado não carregado/executado
-
12-11-2019 - |
Pergunta
Estou usando o CakePHP 2.1 RC+ TinyAutorizar, a próxima maneira em AppController.php:
class AppController extends Controller {
public $components = array('Auth');
public function beforeFilter() {
$this->Auth->authorize = array('Tiny');
}
}
Por alguma razão, o Tiny não é executado e, portanto, as regras da ACL não são aplicadas.Alguma ideia do que poderia estar errado?
Solução
você colocou no app ou no plugin de ferramentas?para este último é suposto ser
$this->Auth->authorize = array('Tools.Tiny');
ver http://www.dereuromark.de/2011/12/18/tinyauth-the-fastest-and-easiest-authorization-for-cake2/ para detalhes
Depois de descobrir seu problema, edito minha resposta:
Este espaço reservado * (= qualquer) para “funções” refere-se apenas aos usuários que estão logados.Você não deve declarar suas ações públicas desta forma!Todos estes devem ser declarados usando $this->Auth->allow().
A razão é que Authenticate vem antes de Authorize.Portanto sem Autenticação (logado) nunca haverá Autorização (verifique as funções).