刚刚接触RBAC(Role Base Access Control) 这种权限控制思想,一下大部分内容都是本人摘自其他网页的资料,然后做了整合,但对新手来说用来上手还是可以考虑的!
RBAC的基本思想:授权给用户的访问权限,通常由用户在一个组织中担当的角色来确定。RBAC中许可被授权给角色,角色被授权给用户,用户不直接与许可关联。RBAC对访问权限的授权由管理员统一管理,RBAC根据用户在组织内所处的角色作出访问授权与控制,授权规定是强加给用户的,用户不能自主地将访问权限传给他人,这是一种非自主型集中式访问控制方式。例如,在医院里,医生这个角色可以开处方,但他无权将开处方的权力传给护士。
角色是指一个组织或任务中的工作或者位置,它代表了一种权利、资格和责任。许可(特权)就是允许对一个或多个客体执行的操作。一个用户可经授权而拥有多个角色,一个角色可由多个用户构成;每个角色可拥有多种许可,每个许可也可授权给多个不同的角色。每个操作可施加于多个客体(受控对象),每个客体也可以接受多个操作。
下边是一张图帮助理解:
快速上手:
(1)数据库设计 关于权限的表有用户表、角色表、用户角 色表、系统功能表。
①用户表存储一些用户的信息。 由于系统的用户 是一些省和地市的管理员, 用户编码与用户单位编码 可以存在一些关联性,例如广州编码是 01,广州的管理 员可以是 0100。单位编码间也存在关联,例如广州市辖 为 0100,广州荔湾为 0103。 这样&#