计算机网络分布式系统中角色访问控制的授权策略
计算机网络分布式系统中角色访问控制的授权策略
王金如 225400 江苏省泰兴职业教育中心校
随着网络应用的推广,网络中分布式系统和大型企业多信息平台的广泛应用,使得资源的结构日趋复杂,规模也日益增大,访问各系统平台的人员数目很大而且成份复杂,传统的权限控制机制的限制和不足日益明显。例如跨平台操作身份认证繁琐、用户行为审计监管不便、安全性强度不高等。这时,基于PMI(Privilege Management Infrastructure)机制的授权管理机制便显示出它的便用性、灵活性和安全性了。本文给出了一种基于角色的PMI系统的授权策略的构成与实现,可以为大型企业多种信息应用平台和网络中分布式应用系统提供一种用户权限的集中统一的管理。
1 PMI概述
PKI(Public Key Infrastructure)作为公钥基础设施建设日趋完善,在网络应用中的身份认证已得到较为完善的解决。随着应用的深入,在许多应用领域中部仅仅要解决用户的身份问题,还要解决用户的权限问题。在PKI的基础上,授权管理基础设施PMI(Privilege Management Infrastructure)提出了一个新的信息保护基础设施,它能够与PKI和目录服务紧密的集成,PKI负责身份验证,PMI负责权限管理。PMI作为一个基础设施能够系统地建立起对认可用户的特定授权,满足了人们对处理权限和属性信息的需求,同时也拓宽了PKI的应用范围,可以在各种计算环境中提供可信的安全解决方案。
作为一种基于PKI的技术框架,PMI主要实现授权管理功能。如何完善PMI理论框架,如何将PMI与现有各种网络应用结合,如何制定授权策略,采用何种实现模式,信任逻辑如何建立,权限如何表述,证书的管理、分配和传递,属性信息的验证等等都是PMI研究的主要工作。其中制定与当前网络系统应用相结合的访问控制策略是PMI得以实施的前提和基础。
2 基于角色的访问控制
基于角色的访问控制(Role Based Access Control, RBAC)是根据主体所扮演的角色被赋予的权限来决定访问模式。角色的概念能被定义为同一个特殊工作活动联系在一起的行动和能力集。一个用户可经授权而拥有多个角色,一个角色可由多个用户构成;每个角色可执行多种操作,每个操作也可以由不同的角色执行;每个操作可以施加于多个客体,每个客体也可以接受多个操作。RBAC0模型为基本模型,它包含三个实体:用户、角色和许可;RBAC1模型在RBAC0的基础上加入了角色层次(Role Hierarchies,即角色继承)的概念,可以根据组织内部权力和责任的结构来构造角色与角色之间的层次关系;RBAC2模型在RBAC0的基础上增加了约束概念,约束是用来规定各种操作是否可被接受(如:基数限制、互斥角色、时间频度限制等)。而RBAC3模型是对RBAC1和RBAC2的集成,它不仅包括角色层次,还包括约束关系。
RBAC的优点是满足最小权限原则;并且便于授权管理,因为改变了用户的角色就改变了用户相应的权限,而且系统管理员处在一种比较抽象的、与企业通常的业务管理相类似的层次上进行管理,另有优势是便于职责分离。所以,基于RBAC的PMI系统能很好的解决多种信息平台的统一授权问题。
3 RBAC授权策略的实现
授权策略是指在安全域内规定谁在什么条件下对哪个目标拥有何种类型的访问权限。正确地制订系统授权策略是构建安全的PMI系统的基础。按照RBAC的模型,可以把基于RBAC的PMI系统的授权策略分为以下七个策略来具体实现。通过对这七个策略的管理,可以很好的实现基于RBAC的授权。下面是各个策略的实现与管理机制。并用XML语言加以实现。
3.1 主体策略
主体是具有相同权限的用户的集合。由于主体的数量远小于用户,所以给主体而不是直接给用户分配和修改权限可以大大减轻管理员的负担。用XML语言表示如下:
主体的增加:要增加的主体中包含的用户不能在主体策略的其它主体中,即一个用户只能属于一个主体中。
主体的删除:首先在主体策略中删除要删除的主体,然后删除该主体在角色分配策略中对应的角色分配,最后通知特权发布者(SOA或AA)将主体内所以用户的属性证书注销。
3.2 SOA策略
SOA策略说明了哪些被SOA信任,能够分配角色给主体策略中定义的主体或主体中的用户。用XML语言表示如下:
SOA的增加:不能增加本域的策略发布者的SOA,只能增加被SOA策略中定义为策略发布者的SOA信任的SOA。
SOA的删除:不能删除本域的策略发布者SOA,其余项可以直接删除。
3.3 角色策略
角色策略用于组织用户的权限规范。可以表示为一个五元组(角色分配数,有效期,被直接继承角色列表,静态约束角色列表,动态约束角色列表)。用XML语言表示如下:
角色的增加:直接在角色策略中增加一个角色即可。
角色的删除:从直接继承该角色的所有角色的被直接继承角色列表中删除该角色,从该角色的所有直接静态约束角色的静态约束角色列表中删除该角色,从该角色的所有直接动态约束角色的动态约束角色列表中删除该角色,从拥有该角色的角色分配中删除该角色,从对象访问策略中删除该角色的对象访问,然后在角色策略中删除该角色。
角色分配数的修改:如果重新修改后的值小于目前已经分配的该角色的数目,则不允许修改。
角色有效期的修改:直接修改即可。
被直接继承角色的增加:要增加的角色不能与原角色(即要增加角色的角色)存在约束关系,不能是原角色的继承角色,不存在继承闭环,即如果要增加从r1到r2的直接继承,则不存在从r2到r1的继承,然后在原角色的被直接继承角色列表中添加要增加的角色。
被直接继承角色的删除:直接删除即可。
静态约束角色的增加:要增加的角色不能与原角色存在继承关系和约束关系,并且这两个角色不能存在于同一个角色分配中,然后在原角色的静态约束角色列表中添加要增加的角色,在被添加的角色的静态约束角色列表中添加原角色。
静态约束角色的删除:首先在原角色静态约束角色列表中删除要删除的角色,然后在被删除角色的静态约束角色列表中删除原角色。
动态约束角色的增加:要增加的角色不能与原角色存在继承关系和约束关系,首先在原角色的动态约束角色列表中添加要添加的角色,然后在被添加的角色的动态约束角色列表中添加原角色。
动态约束角色的删除:首先在原角色的动态约束角色列表中删除要删除的角色,然后在被删除的角色的动态约束角色列表中删除原角色。
4 结束语
授权管理基础设施(PMI)现在越来越受到人们的重视,它同公钥基础设施(PKI)一起必将成为企业安全体系的核心。RBAC是一个具有丰富策略机制的模型,其自然化、人性化的权限管理方式使它成为解决多种信息系统环境下复杂权限管理问题的一条非常有效的途径。此授权模型已经在一个多信息系统平台的统一授权管理系统中得到了应用,取得了预期效果。
计算机网络分布式系统中角色访问控制的授权策略.doc