对该模型定义如下:
U,R, P,S:用户;角色,权限,会话; PA P*R:权限分配,多对多的关系; UA U*R:用户分配,多对多关系;
User:S->U,每一个会话 s 对应单一用户 user(s)的映射; Roles:会话 s 到角色集合role(s) {r|(user(s),r)∈PA}
从上面的模型可以看出:该模型由三个实体组成,分别是:用户(U)、角色(R)、权限(P)。其中用户指自然人;角色就是组织内部一件工作的功能或工作的头衔,表示该角色成员所授予的职责的许可,系统中拥有权限的用户可以执行相应的操作。用户与角色之间以及角色与权限之间用双双箭头相连表示用户角色分配 UA 和角色权限分配 PA 关系都是多对多的关系,即一个用户可以拥有多个角色,一个角色也可被多个用户所拥有。同样的,一个角色拥有多个权限,一个权限能被多个角色所拥有。用户建立会话从而对资源进行存取,每个会话 S 将一个用户与他所对应的角色集中的一部分建立映射关系,这个角色会话子集称为会话激活的角色集。于是,在这次会话中,用户可以执行的操作就是该会话激活的角色集对应的权限所允许的操作。
3、基于角色的权限管理的特点
(1)访问权限与角色相关联,不同的角色有不同的权。用户以什么样的角色对资源进行访问,决定了用户拥有的权限以及可执行何种操作。
(2)角色继承。角色之间可能有互相重叠的职责和权力,属于不同角色的用户可能需要执行一些相同的操作。RBAC 采用角色继承的概念,如角色 2 继承角色 1,那么管理员在定义角色 2 时就可以只设定不同于角色1 的属性及访问权限,避免了重复定义。
(3)最小权限原则,即指用户所拥有的权力不能超过他执行工作时所需的权限。实现最小特权原则,需要分清用户的工作职责,确定完成该工作的最小权限集,然后把用户限制在这个权限结合的范围之内。一定的角色就确定了其工作职责,而角色所能完成的事物蕴涵了其完成工作所需的最小权限。用 户要访问信息首先必须具有相应的角色,用户无法饶过角色直接访问信息。
(4)职责分离。一般职责分离有两种方式:静态和动态。
(5)角色容量。在一个特定的时间段内,有一些角色只能有一定人数的用户占用。在创建新的角色时应该指定角色的容量。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库实验指导书-企业信息化建设与管理课程(4)在线全文阅读。
相关推荐: