yii 权限控制(yii-admin 和 rabc的安装)

上一篇介绍了 yii 后台模版 adminLTE 以及后台用户分离
这一篇介绍 yii2 后台模块和rabc 的权限控制
在这之前我们需要先配下URL 方便后面的设置:
修改配置文件 app/config/main.php 添加如下代码:

'urlManager' => [
    'enablePrettyUrl' => true,
    'showScriptName' => true,  // 设置成false 不显示 index.php 同时修改rewrite即可
],

注意:上述代码添加到配置文件的 componets 模块中

安装 yii2-admin 插件:

composer require mdmsoft/yii2-admin "~2.0"
composer update

为了使yii2-admin 生效,需要修改app/config/main.php 添加如下代码:

'modules' => [
    'admin' => [
        'class' => 'mdm\admin\Module',
    ],
],
'aliases' => [
    '@mdm/admin' => '@vendor/mdmsoft/yii2-admin',
],

注意:上述代码和 components 同级
然后运行 migrate

yii migrate --migrationPath=@mdm/admin/migrations

主要是为了生成 menu 这个表
接下来配置 yii的rabc 模块:(此模块yii 自带不需要再使用composer了)
首先做 migrate ,你可以直接去这里: vendor\yiisoft\yii2\rbac\migrations\ 找到对应的数据库sql文件,通过sql语句完成表的创建,也可以使用 migrate
但是为了是 migrate能够正常运行,需要你先配置 authManager
你可以将它配置到 common 下也可以 配置到 console下

'authManager' => [
    'class' => 'yii\rbac\DbManager', 
    'defaultRoles' => ['guest'],
],

注意:上述代码放到 components 数组中
这时候运行:

yii migrate --migrationPath=@yii/rbac/migrations

就可以了。成功后你可以删除掉 authManager 配置,因为common或者console下不想配置它。假设你想放到backend 下,那么这时候把 authManager 加到 backend下就可以了(哪里需要放哪里)。

此时你访问后台的任何页面(假设没登陆 )都会跳转到登录页 例如你可以访问 例如: http://127.0.0.1/yii2/backend/web/index.php/gii
也会跳转到 登录页 而如果你修改 as access 中的 allowActions 值为
‘allowActions’ => [
‘*’,
]
就会发现又和以前一样了。 这证明 权限控制已经生效了
此时你可以先添加 allowActions 为 * 方便添加权限。配置完成后记得要修改这里,否则rabc无效了。
接下来做 rabc的具体配置就可以了

展开阅读全文
©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值