基于角色的权限控制(RBAC)介绍

什么是RBAC?

RBAC(Role-Based Access Control)基于角色的权限控制。其基本思想是,对系统操作的各种权限不是直接授予具体的用户,而是在用户集合与权限集合之间建立一个角色集合。每一种角色对应一组相应的权限。一旦用户被分配了适当的角色后,该用户就拥有此角色的所有操作权限。

有什么好处?

这样做的好处是,不必在每次创建用户时都进行分配权限的操作,只要分配用户相应的角色即可,而且角色的权限变更比用户的权限变更要少得多,这样将简化用户的权限管理,减少系统的开销。

RBAC系统都包含哪些模型?

RBAC系统基本要包括:部门、角色、权限和用户这4个模型。这4个是基础,其他模型可根据企业规模和实际需求扩展。

4个模型的关系是这样的:
部门-用户 1:N
角色-权限 1:N
用户-角色 1:N

当然你也可以把角色和部门挂钩,看实际需要。

一张图加深印象

随便画的,凑活看:)
在这里插入图片描述
图中可以看出,作为公司的管理者老板,肯定是要拥有公司所有业务角色的。
而专职的销售人员只需要赋予其销售角色即可。

下一步干嘛?

知道了什么是RBAC以后,我打算去实现一套基于RBAC的权限控制系统,
通过此系统的开发进一步理解和掌握它。

posted @ 2021-04-13 19:45  一锤子技术员  阅读(10)  评论(0编辑  收藏  举报  来源