yii2的权限管理系统RBAC简单介绍
这里有几个概念
权限:
指用户是否可以执行哪些操作,如:编辑、发布、查看回帖
角色
比如:VIP用户组, 高级会员组,中级会员组,初级会员组
VIP用户组:发帖、回帖、删帖、浏览权限
高级会员组:发帖、回帖、浏览权限
中级会员组:回帖、浏览权限
初级会员组:浏览
在Yii2.0中
- yii\rbac: Item 为角色或者权限的基类,其中用字段type来标识。1代表角色,2代表权限
- yii\rbac: Role 为代表角色的类
- yii\rbac: Permission 为代表权限的类
- yii\rbac: Assignment 为代表用户角色或者权限的类
- yii\rbac: Rule 为代表角色或权限能否执行的判定规则表
auth_item 存储权限和角色,如下图所示:

auth_item_child 表是权限和角色从属关系,如下图所示:

大概了解上面的概念后,我们具体看具体怎么实现的。
1、在config中console.php配置RBAC组件,如下图

PS:
有的文章写的是PhpManageer,如果是这样的话,在运行会报错。
然后运行
yii migrate --migrationPath=@yii/rbac/migrations/
成功执行,产生权限表。

2、首先要在web.php配置下RBAC的组件。

添加authManager组件,下面的xxxTable可以不用添加,默认就是这样的。
这时候,我们刷新下前台页面,正常。这就说明配置方面没有问题。
这时候,我们来看下如何创建角色、权限、角色与权限方面的问题
我们随便创建个Controller,这里我用IndexController,只要能访问到这个Controller就行,无所谓哪个控制器。
1、如何创建权限

然后访问
http://yii.local.com:/index.php?r=admin/index/create-permission&item=index
必须带参数,$item就是你要创建的权限。如:post-发帖,edit-编辑,update-更新,view-浏览,index-查看首页等等
2、创建角色

同样的道理,访问
http://yii.local.com:8090/index.php?r=admin/index/create-role&item=vip_user
这时候,我们创建了个vip_user用户组。
3、如何将某角色拥有某权限OR如何将某权限纳入进某角色

$item1 是角色,$item2 是权限
http://yii.local.com:8090/index.php?r=admin/index/create-empowerment&item1=vip_user&item2=edit
将edit权限放进vip_user角色,即vip_user用户组有edit权限
4、如何将某用户加入某角色(用户组)中

浏览器访问
http://yii.local.com:8090/index.php?r=admin/index/create-assign&item1=post&item2=1
意思是将uid=1的用户赋予发帖的权限
http://yii.local.com:8090/index.php?r=admin/index/create-assign&item1=vip_user&item2=1
意思是将uid=1的用户赋予vip_user用户组的权限
这里说明下,某用户可以属于某个用户组即角色,也可以具有某个权限。

如果某操作不在auth_item_child表的child中,将会

以上只是对RBAC做简单介绍。具体我们可以将这些功能丰富之后,写入后台。
yii2的权限管理系统RBAC简单介绍的更多相关文章
- Winform开发框架之权限管理系统的改进
权限管理系统,一直是很多Mis系统和一些常见的管理系统所需要的,所以一般可以作为独立的模块进行开发,需要的时候进行整合即可,不需要每次从头开发,除非特殊的系统需求.我在Winform开发框架介绍中的随 ...
- asp.net core 身份认证/权限管理系统简介及简单案例
如今的网站大多数都离不开账号注册及用户管理,而这些功能就是通常说的身份验证.这些常见功能微软都为我们做了封装,我们只要利用.net core提供的一些工具就可以很方便的搭建适用于大部分应用的权限管理系 ...
- Spring Cloud实战: 基于Spring Cloud Gateway + vue-element-admin 实现的RBAC权限管理系统,实现网关对RESTful接口方法权限和自定义Vue指令对按钮权限的细粒度控制
一. 前言 信我的哈,明天过年. 这应该是农历年前的关于开源项目 的最后一篇文章了. 有来商城 是基于 Spring Cloud OAuth2 + Spring Cloud Gateway + JWT ...
- yii2权限控制rbac之rule详细讲解
作者:白狼 出处:http://www.manks.top/yii2_rbac_rule.html 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留 ...
- javaweb+SSH实现简单的权限管理系统
权限管理,平时里很多地方我们都可以看到,比如聊QQ时群里的群主.管理员以及成员之间的功能是不一样的--大家一定会遇到的一个问题,所以整理 一下自己写权限系统的一些经验给大家,只起参考作用,也望大家笑纳 ...
- yii2权限控制rbac之rule详细讲解(转)
在我们之前yii2搭建后台以及rbac详细教程中,不知道你曾经疑惑过没有一个问题,rule表是做什么的,为什么在整个过程中我们都没有涉及到这张表? 相信我不说,部分人也都会去尝试,或百度或google ...
- 基于RBAC模型的通用企业权限管理系统
1. 为什么我们需要基于RBAC模型的通用企业权限管理系统 管理信息系统是一个复杂的人机交互系统,其中每个具体环节都可能受到安全威胁.构建强健的权限管理系统,保证管理信息系统的安全性是十分重要的.权限 ...
- thinkphp整合系列之rbac的升级版auth权限管理系统demo
权限管理基本是作为网站的标配了: 除非是像博客这类个人使用的:否则权限管理的重要性不言而喻: 今个就来写写auth权限管理: thinkphp已经内置了auth权限类位于:/ThinkPHP/Libr ...
- ABP module-zero +AdminLTE+Bootstrap Table+jQuery权限管理系统第十三节--RBAC模式及ABP权限管理(附送福利)
ABP+AdminLTE+Bootstrap Table权限管理系统一期 Github:https://github.com/Jimmey-Jiang/ABP-ASP.NET-Boilerplate- ...
随机推荐
- SAP CRM 性能小技巧
导言 本页面打算收集SAP CRM实施中可以用于避免性能问题的注意事项,重要的事项会由图标标识. 如果你有其他的技巧想要说出来,别犹豫! 性能注意事项 通用 缓存读取类访问,特别是在性能关键的地方,比 ...
- Angular2 Hello World 之 2.0.0-beta.14
公司现在采用angualrjs开发一些web应用,采用的是angular1,现在angular2已经差不多了,听说最近rc6已经出来了……其实感觉好慢啊!之前也做过一些anglar2的例子,但是没有记 ...
- android SystemServer.java启动的服务。
EntropyService:熵(shang)服务,用于产生随机数PowerManagerService:电源管理服务ActivityManagerService:最核心服务之一,Activity管理 ...
- Mysql - 函数
Mysql提供的函数是在是太多了, 很多我都见过, 别说用了. 园子里面, 有人弄了一个比较全的. MYSQL函数 我这里会将他写的完全拷贝下来, 中间会插入一些自己项目中使用过的心得 一.数学函数 ...
- Linux网络驱动--snull
snull是<Linux Device Drivers>中的一个网络驱动的例子.这里引用这个例子学习Linux网络驱动. 因为snull的源码,网上已经更新到适合最新内核,而我自己用的还是 ...
- [DS] 标记字段
标记字段 代码中有时候有这种需求:需要一个公共访问的标记字段,以下称为标记字段. 下面是案例: 一个订单详情页面,如果页面在显示中,程序中其它地方需要访问这个"正在查看中"的订单信 ...
- Fedora 21 安装 Nvidia 驱动以及失败后的补救方法
在 Linux 桌面系统下玩了这么久,大部分时间都是使用 Ubuntu,偶尔使用一下 Fedora.我的电脑中安装有多个 Linux 发行版,见这里<在同一个硬盘上安装多个Linux发行版及Fe ...
- nginx常用代理配置
因为业务系统需求,需要对web服务作nginx代理,在不断的尝试过程中,简单总结了一下常见的nginx代理配置. 1. 最简反向代理配置 在http节点下,使用upstream配置服务地址,使用ser ...
- MapReduce剖析笔记之三:Job的Map/Reduce Task初始化
上一节分析了Job由JobClient提交到JobTracker的流程,利用RPC机制,JobTracker接收到Job ID和Job所在HDFS的目录,够早了JobInProgress对象,丢入队列 ...
- AWS的SysOps认证考试样题解析
刚考过了AWS的developer认证,顺手做了一下SysOps的样题.以下是题目和答案. When working with Amazon RDS, by default AWS is respon ...