Я так понимаю, вы используете компонент Cake Auth, поскольку именно здесь находится функция isAuthorized ().
Самый быстрый способ обойти это - определить ваши "разрешенные действия" в beforeFilter ()вашего контроллера.
Например, чтобы разрешить всем доступ ко всем действиям:
/**
* Sets all actions to be allowed
*/
public function beforeFilter() {
parent::beforeFilter();
if (isset($this->Auth)) {
$this->Auth->allow('*');
}
}
Чтобы разрешить доступ к ' index ' & ' view 'действия:
/**
* Allow access to index & view actions
*/
public function beforeFilter() {
parent::beforeFilter();
if (isset($this->Auth)) {
$this->Auth->allowedActions = array('index', 'view');
}
}
РЕДАКТИРОВАТЬ
Следующие комментарии ниже:
Вы можете установить authorize свойствокомпонент Auth для «контроллера», а затем определить обратный вызов.Таким образом, ваш контроллер будет содержать что-то похожее на:
public function beforeFilter() {
parent::beforeFilter();
$this->Auth->authorize = 'controller';
}
public function isAuthorized() {
return true;
}
Таким образом, вам не придется менять ядро, и он будет делать то, что вам нужно.