Вот мое решение, дайте мне знать, если я могу его улучшить:
Я создал политику:
class UserPolicy
{
/**
* Check if $user have admin access
*
* @param Authorization\IdentityInterface $user The user.
* @param App\Model\Entity\Users $u
* @return bool
*/
public function canAdminAccess(IdentityInterface $user, $u)
{
return (bool)($user->group_id === GROUP_ADMIN);
return false;
}
}
И в каждом контроллере администратора, в методе beforeFilter, я авторизация звонка:
public function beforeFilter(EventInterface $event)
{
parent::beforeFilter($event);
$this->Authorization->authorize($this->user,'adminAccess');
}