Yii 2 RBAC角色

时间:2015-12-18 10:59:22

标签: php yii2 rbac

我已经按照set up rbac in yii 2

的一些指南

我已经设置了表添加了一些用户等等。

RBAC初始化控制器。

class RbacController extends \yii\console\Controller
{
    public function actionInit()
    {
        $auth = Yii::$app->authManager;

        $baseUser = $auth->createRole('base_user');
        $auth->add($baseUser);

        $support = $auth->createRole('support');
        $auth->add($support);

        $admin = $auth->createRole('admin');
        $auth->add($admin);
        $auth->addChild($admin, $baseUser);
        $auth->addChild($admin, $support);

        $auth->assign($support, 2);
        $auth->assign($admin, 1);
    }
}

所以我有一个管理员和一些用户组。

现在我的一个控制器中有

public function behaviors()
{
    return [
        'access' => [
            'class' => AccessControl::className(),
            'rules' => [
                [
                    'allow' => true,
                    'actions' => ['create'],
                    'roles' => ['admin'],
                ],
                [
                    'allow' => true,
                    'actions' => ['index'],
                    'roles' => ['@'],
                ],
            ],
        ],
    ];
}

在'角色'中我想把管理员。我无法弄清楚如何让它发挥作用。

使用RBAC对我的项目是否过度,我只是希望某些用户组能够访问该站点的某些区域/功能。

1 个答案:

答案 0 :(得分:0)

 $auth->assign($support, 2);
 $auth->assign($admin, 1);

1和2必须是您的用户ID。