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

5 篇文章 0 订阅

上一篇介绍了 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的具体配置就可以了

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值