Yii Rights ::无法使用已定义的角色访问控制器操作

时间:2014-04-01 10:43:39

标签: yii yii-extensions

我已成功为Yii-Users安装Yii-Rights模块。

我有: -

  1. 创建角色(经过身份验证)
  2. 授予某些controller.action(Campaign.index)
  3. 的权限

    然而,当我以" Authenticated"登录系统时角色,(我确保权限在登录中正常工作,因为我通过角色重定向用户),Campaign.index返回错误403 - >您无权执行此操作。

    然而当" Admin"角色进入控制器它工作得很好。我注意到有一种方法允许用户使用allowaction()进入控制器,但是当我注销并输入该功能时,它会显示。所以,这不是一个解决方案。

    在我的控制器中,我有

    class CampaignController extends RController {
    
    /**
     * @var string the default layout for the views. Defaults to '//layouts/column2', meaning
     * using two-column layout. See 'protected/views/layouts/column2.php'.
     */
    public $layout = '//client/dashboard';
    
    /**
     * @return array action filters
     */
    public function filters() {
        return array(
            'rights', // perform access control for CRUD operations
                //'postOnly + delete', // we only allow deletion via POST request
        );
    }
    
    /**
     * 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', '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('*'),
            ),
        );
    }
    

    我已经阅读了有关此主题的大部分网页,但我发现没有像我这样的问题。我已经尝试卸载该模块,并安装回来但没有运气。

    我正在使用Yii 1.1.14和从https://bitbucket.org/Crisu83/yii-rights/下载的最新Yii权利(上次更新时间为2014-02-20)

    请帮我定义我的问题。

    谢谢。 :)

0 个答案:

没有答案