Search code examples
yii2access-controlrbac

Error with access control in yii2


I'm getting an error when trying to give some users access to a module

    use yii\filters\AccessControl;

     public function behaviors()
     {
    return [
       'access'=>[
            [
                'class' => AccessControl::className(), 
                'only'=>['view','index'],
                'rules'=>[
                    [    
                        'allow'=>true,
                        'actions'=>['view','index'],
                        'roles'=>['Administrador'],
                    ]
                 ],
                                ]
        ],

Error message

Object configuration must be an array containing a "class" element.


Solution

  • You got an array too much there:

    public function behaviors()
     {
    return [
       'access'=>[
                'class' => AccessControl::className(), 
                'only'=>['view','index'],
                'rules'=>[
                    [    
                        'allow'=>true,
                        'actions'=>['view','index'],
                        'roles'=>['Administrador'],
                    ]
                 ],
        ],