J'essaie d'utiliser la méthode isAuthorized() pour faire une vérification d'un drapeau admin, mais la fonction ne semble jamais appelée. Même lorsque je mets la fonction à toujours retourner false, cela permet à n'importe quel utilisateur. Il semble juste que ce n'est pas appelé. Dois-je faire quelque chose de plus que de configurer $ this-> Auth-> authorize = 'controller'?cakephp isAuthorized() n'étant pas appelé
de /app/app_controller.php
class AppController extends Controller
{
var $components = array('Auth');
function beforeFilter()
{
$this->Auth->loginAction = array('controller' => 'users', 'action' => 'login');
$this->Auth->loginRedirect = array('controller' => 'pages', 'display' => 'home');
$this->Auth->logoutRedirect = '/';
$this->Auth->authorize = 'controller';
$this->Auth->userScope = array('User.active' => 1);
}
function isAuthorized()
{
if (strpos($this->action, "admin_") != false)
{
if ($this->Auth->user('isAdmin') == '0')
{
return false;
}
}
return true;
}
}
s'avère que je remplaçais beforeFilter() et n'appelant pas parent :: beforeFilter() –