基于角色的访问控制(RBAC)
注:该博客参考 尚硅谷老师,仅供个人学习使用,转载请标明作者和此段文字
一、概念
权限管理,这是每个软件系统都会涉及到的,而且权限管理的需求本质往往都是一样,不同的角色拥有不同的权限,只要你充当了某个角色,你就拥有了相对应的功能。
RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间,角色与权限(功能)之间,一般都是多对多的关系。
多对多:双向的一对多。学生 & 课程
上面这个的表比较简单,实际的工作中,权限模型设计的表会比较复杂。
二、级别
RBAC0
RBAC核心模型, 其他的级别都是建立在该级别的基础上。
RBAC1
基于RBAC0模型,进行了角色的分层,也就是说角色上有了上下级的区别。
RBAC2
RBAC2,也是基于RBAC0模型的基础上,进行了角色的访问控制。
RBAC3
RBAC3,是最全面的权限管理,它是在RBAC0的基础上,将RBAC1和RBAC2进行整合了,最全面,也最复杂的。