CakePhp ACL权限

CakePhp ACL权限,cakephp,permissions,acl,Cakephp,Permissions,Acl,检查我的应用程序时,我发现每个用户都可以访问其中的所有操作。 我正在使用cakePhp内置ACL组件。。。 通过终端显示正确检查权限是允许或不允许用户调用某个操作。但一旦我在浏览器上检查应用程序,所有用户都可以访问每个操作。如果您使用内置的Auth和ACL组件,您可以让CakePHP自动为您处理事情。首先,您可以确保在app文件夹中有app_controller.php文件。我的看起来像这样: <?php class AppController extends Controller {

检查我的应用程序时,我发现每个用户都可以访问其中的所有操作。 我正在使用cakePhp内置ACL组件。。。
通过终端显示正确检查权限是允许或不允许用户调用某个操作。但一旦我在浏览器上检查应用程序,所有用户都可以访问每个操作。如果您使用内置的Auth和ACL组件,您可以让CakePHP自动为您处理事情。首先,您可以确保在app文件夹中有app_controller.php文件。我的看起来像这样:

<?php

class AppController extends Controller {

    var $helpers = array('Form', 'Html', 'Javascript', 'Time');
    var $components = array( 'Acl', 'Auth', 'Session', 'Cookie');    

    function beforeFilter() {  
        $this->Auth->authorize = 'actions';
        $this->Auth->actionPath = 'controllers/';
        $this->Auth->authError = ' Access Denied!';

        $this->Auth->loginRedirect = '/registrations';
        $this->__checkAuth();
    }

    private function __checkAuth() {
        $currentUser = $this->Auth->user();
        $currentUser = $currentUser['User'];
        $this->set(compact('currentUser'));
    }

}
?>
放置在控制器中的任何beforeFilter(即使是空的)都将覆盖AppController的beforeFilter,除非您使用上述代码专门调用AppController的beforeFilter


您还可以在此处找到一些关于使用CakePHP的ACL的最佳教程:

请提供一部分代码,用于检查应用程序中的权限。
function beforeFilter(){
    parent::beforeFilter(); 
}