权限模型 --- RBAC模型

RBAC模型

  RBAC(Role-Based Access Control)基于角色的访问控制:引入角色的概念,将用户和权限解耦,避免每加入一个用户添加众多权限;

  • 一个用户可以同时有一个或多个角色;
  • 每个角色拥有一组权限,当用户有多个角色时,其拥有的权限为多个角色权限的并集;

在这里插入图片描述

角色间的关系

继承

  上层角色继承下层角色的所有权限,并可额外赋权,通常用于公司的组织架构;
在这里插入图片描述

限制

  在一个团队中,某些角色的数量可能是受限的,或者角色间存在互斥关系,只能N选一,不能共存等;

权限组成

  一般产品的权限由页面、操作和数据构成。页面与操作相互关联,必须拥有页面权限,才能分配该页面下对应的操作权限。数据可被增删改查。如下如所示:
在这里插入图片描述

设计表达

  在传达一个系统的权限设计规则时,设计师常常习惯用主观最直接的方式表达想法,如用「当……时,就……」的句式来表达。但一个平台中涉及的权限规则是非常多的,当通篇以这样的形式描述时,表达对象将很难理解。正确的描述方式是将各角色与权限单元绘制成网格,每个交叉点网格中描述该角色与权限的数据关系和限制,如下图所示:
在这里插入图片描述

参考:

  1. https://www.uisdc.com/100-solutions-for-character-permission-design