Я пытаюсь использовать Security :: allowControllers и Security :: allowActions. Итак, у меня есть контроллер, который выглядит примерно так
class AppController extends Controller {
var $components = array('Security'); //other components
//other stuff
}
class BookController extends AppController {
function beforeFilter() {
parent::beforeFilter();
$this->Security->allowedControllers = array('Users');
$this->Security->allowedActions = array('view');
$this->Security->RequireAuth = array('search', 'results');
}
//other stuff
}
Действие «поиск» отображает форму, которая затем вызывает «результаты», чтобы показать результаты поиска. Я намеренно пытаюсь оказаться в черной дыре.
Что я понимаю о $ this-> Security-> allowControllers и $ this-> Security-> allowActions, я должен иметь возможность получать данные POST только из действия 'view' контроллера 'Users'. В частности, действие 'results' должно перенаправить меня в черную дыру, поскольку оно получает данные POST из действия 'search' контроллера 'Books'.
Но это не тот случай. Я даже могу делать запросы кросс-контроллеров и никогда не попадать в черные дыры, поэтому я полагаю, что я не правильно использую эти переменные. Как правильно запускать управление запросами кросс-контроллера?