基于Yii2.0开发RBAC权限功能

基于Yii2.0开发RBAC权限功能

今天小编就为大家带来一篇Yii2.0开发RBAC权限功能操作的文章。小编觉得挺不错的,为此分享给大家做个参考。一起跟随小编过来看看吧。

  1. web.php的配置

        'authManager' => [

            'class' => 'yii\rbac\DbManager',

            'itemTable' => 'chat_auth_item',

            'assignmentTable' => 'chat_auth_assignment',

            'itemChildTable' => 'chat_auth_item_child',

        ],


2. Controller.php里需要添加

    public function beforeAction($action)

    {

        if(!parent::beforeAction($action)){

            return false;

        }

$controllerId = \Yii::$app->controller->id;

$actionId = \Yii::$app->controller->action->id;

                $action = $controllerId.'/'.$actionId;


if(\Yii::$app->user->can($action)){

            return true;

        }else{

   $json = '{"error":"noright"}';

   echo $json;

            return false;

        }

    }

说明:用controllerId/actionId代表某个具体的操作。比如UserController.php里的注册actRonregister,则具体的权限为: user/register。

以上就是Yii2.0开发RBAC权限功能操作的简略介绍,详细使用情况还需要大家自己使用过才领会。如果想了解更多相关内容,欢迎关注行业资讯频道!