kali安装php myadmin,yii2-admin 插件使用简要教程

yii2的访问权限默认是由自带的rbac组件在管理,需要自己编写相应的规则去实现权限管理,无图形界面。

yii2-admin是将rbac的管理可视化,只需要点几下鼠标就能设置好简单的规则。

本教程中软件版本及链接:yii2(v2.06,使用高级模板),yii2-admin(2.0)

yii2:https://github.com/yiisoft/yii2

yii2-admin:https://github.com/mdmsoft/yii2-admin

本文未涉及自定义规则和yii2-admin菜单。

假定你已经安装好了yii2,且数据库中创建了user表。具体安装步骤可见此文档。

使用composer安装yii2-admin

非windows环境下:

php composer.phar require mdmsoft/yii2-admin "~2.0"

php composer.phar update

Windows下:

composer require mdmsoft/yii2-admin "~2.0"

composer update

国内网络环境复杂,有可能安装时间较长。如果长时间无响应,可终止命令重试。

配置yii2-admin运行环境

注意:如果将yii2-admin配置在common目录下是全局生效,会导致控制台(console)下命令报错。

因为仅将权限控制应用于frontend模块,所以将配置写到frontend目录下。

配置文件:frontend\config\main.php

return [

'modules' => [

'admin' => [

'class' => 'mdm\admin\Module',

'layout' => 'left-menu',//yii2-admin的导航菜单

]

...

],

...

'components' => [

...

'authManager' => [

'class' => 'yii\rbac\DbManager', // 使用数据库管理配置文件

]

],

'as access' => [

'class' => 'mdm\admin\components\AccessControl',

'allowActions' => [

'site/*',//允许访问的节点,可自行添加

'admin/*',//允许所有人访问admin节点及其子节点

]

],

];

创建相应的数据库表

在控制台中输入以下命令:

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

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

安装到此完成。

访问http#//localhost/path/to/index.php?r=admin可以看到yii2-admin的管理界面。效果如下图。

注:网址需要修改成你网站首页的实际地址。

6631287668026254097.png

配置访问权限示例

以节点terms(一个自定义的节点)为例,节点terms下共有index,view,create,update,delete五个子节点。

配置目标:

未登录用户仅能访问index节点

一般登录用户能访问index,view,create三个节点

管理员能访问所有节点

步骤一:添加可分配列表

打开yii2-admin路由列表页,点击可用输入框后面的刷新图标将列出当前网站所有可用的路由列表,选中terms各节点路由表添加至右侧可分配路由列表中。

6630687334678192185.png

步骤二:添加权限

权限列表=>新增权限,填好名称提交后,添加对应的路由规则即可。

6630801683887488015.png

6631416310886718463.png

可用列表中除了路由列表还有已经添加了的权限列表,一个权限可以包含另一个权限。

步骤三:添加角色

角色列表=》新增角色,分别添加管理员、一般用户、未登录用户,将对应的权限分配给角色。

6630699429306111507.png

6630741210747966675.png

步骤四:分配角色

分配界面列出来的用户名是当前系统中已注册的用户。现注册了admin和user账号用于演示。

6631245886584398158.png

点击账号后边的眼睛图案,进行权限分配。

6630669742492158619.png

按需要,给予相应的权限。

步骤五:配置网站默认访问权限

上面四步配置完成后,我们访问terms各节点测试结果:

以一般用户身份登录时,可以浏览、添加信息,要更新、删除信息时会提示无权操作。符合预期。

6630814878027021807.png

以管理员身份登录时,可进行所有操作。符合预期。

但是如果不登录,在访问terms首页时会跳转到登录页面。预期结果是未登录时能访问terms首页。

就是说当前系统默认不认可我们配置给未登录用户的权限。

只需要在配置文件中加一行指定默认规则的代码即可:

'authManager'=> [

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

'defaultRoles' => ['未登录用户'],//添加此行代码,指定默认规则为 '未登录用户'

],

未登录时再访问terms/index节点就能正常显示了,点别的操作时会跳到登录页面,因为未登录时仅有访问首页的权限。

除了在authManager中配置默认权限,在as access中也可以配置允许所有人访问的节点。

'as access' => [

'allowActions' => [//下面列出的节点,所有人都可以访问,针对未登录用户的配置也可以移至这里

'admin/*',

'site/*',

]

]

如果大家需要,空了再介绍下自定义规则和yii2-admin的菜单的应用。

原文链接:http://www.yiichina.com/tutorial/571

本文旨在介绍yii2-admin的基本用法,并非是最简洁的用法。如有不足之处,还请指正。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值