Yii框架 - 权限扩展似乎无法正常工作

时间:2017-12-18 13:50:25

标签: yii yii-extensions

我是 Yii 1 框架中的新手,我正在尝试在项目中使用权限扩展(http://www.yiiframework.com/extension/rights/)(在此项目中必须使用权限扩展,因为其他项目使用它内置的地方)。

我设置正确,它正在 localhost / site?r =版权

我有所有必要的表格:

自动分配

authitem

authitemchild

权利

用户 (id,username,password)我可以在其中添加管理员(超级用户)和AnotherUser。

enter image description here

=====> 那么,我的问题是什么? < =====

根据我的模型生成权限

enter image description here

并指定权限我的 AnotherUser 可以包含:

enter image description here

似乎没有任何反应,因为我的 AnotherUser 可以访问所有其他方法,例如 User.Delete User.Update

我只通过权限界面管理用户访问权限。

代码中是否也有设置?

我尝试从 RController 扩展所有控制器。 (权利扩展的财务主任)

我在过滤器中添加了“权利”:

    /**
    * @return array action filters
    */
    public function filters()
    {
        return array(
            'accessControl', // perform access control for CRUD operations
            'postOnly + delete', // we only allow deletion via POST request
            'rights',
        );
    }

我没有修改控制器:

     /**
     * Specifies the access control rules.
     * This method is used by the 'accessControl' filter.
     * @return array access control rules
     */
    public function accessRules()
    {
        return array(
            array('allow',  // allow all users to perform 'index' and 'view' actions
                'actions'=>array('index','view'),
                'users'=>array('*'),
            ),
            array('allow', // allow authenticated user to perform 'create' and 'update' actions
                'actions'=>array('create','update'),
                'users'=>array('@'),
            ),
            array('allow', // allow admin user to perform 'admin' and 'delete' actions
                'actions'=>array('admin','delete'),
                'users'=>array('admin'),
            ),
            array('deny',  // deny all users
                'users'=>array('*'),
            ),
        );
    }

如果你能帮助我,请提前感谢你!

1 个答案:

答案 0 :(得分:0)

我想出了如何解决我自己的问题:

  1. 生成您想要的所有权限
  2. 为控制器操作生成项目

    它将显示在操作中。 (列表,查看,创建,更新,删除,管理)

    1. 创建任务从操作中添加子项
    2. 创建角色从任务中添加子项。
    3. 向用户分配角色,任务或操作
    4. 按照您的意愿分配撤销角色,任务或操作。