查字典论文网 >> 基于RBAC的RPMI系统模型的特权验证过程研究

基于RBAC的RPMI系统模型的特权验证过程研究

小编:

摘 要:介绍RPMI系统中关键部分“特权验证处理过程”的实现。提出了使用对象标识号OID和证书缓存机制对证书实施验证。

关键词:权限管理基础设施 RBAC 属性证书

中图分类号:TP311 文献标识码:A 文章编号:1007-9416(2010)11-0055-01

引言

如何保证资源访问的过程是安全的,不会泄漏给某些恶意窃听的人;如何保护某些敏感的数据和信息不被本来不应该访问该信息的用户看到;如何知道访问的用户的确切身份以及其对应的访问权限;如何管理合法用户的资料以及在对用户的请求进行访问控制决策的时候应用什么策略等。以上的问题都可以通过一个基于角色的特权管理基础设施(RPMI, Role of Privilege Management Infrastructure)解决。下文详细介绍RPMI系统实现的关键部分:“特权验证过程”。

1 特权验证者过程

“特权验证者”可以通过SOA的全局策略及属性证书相应字段来判断用户是否有权访问资源。由于考虑到代理层次多后,将极大增加“特权验证者”的处理难度和时间消耗,因此在目前实现中作了简化,要求只有一个SOA并且所有AA都是由这个SOA直接签发,AA下不能再有AA,所有角色分配证书都由AA产生。这种简化,在大多数实际应用中都是合适的。同时在用户提交了用户名和要访问的资源的名字时,我们不使用具体的名字,而是使用对象标识号OID,这样别人盗得信息后,也不可能推出有关系统资源的秘密,起到一个保密的作用,也就是说系统中的用户、权限、角色、资源都不用真实的名字提供,而是用相应的标识号OID来标识。由于属性证书库中证书的数目一般都特别庞大,查找起来都特别费时间,有的角色通过多重继承,一下很难找到具体的权限证书,有的要迭代多次,这样就消费了许多系统资源,为了尽快找到所需要的属性证书,确定是否具有访问权限,我们就借鉴了操作系统的缓存机制,在PMI系统中也引入了缓存机制,这样就大大的提高了系统的反应速度,优化了系统的性能。下面通过一个具体的实例来讲述引入缓存机制后的PMI系统怎样实施特权验证。

通过在公司中对RPMI模型的研究和实现,实际上已为RPMI模型构建出了一个较为通用的特权处理实现子系统。对于系统的具体运作,即模型中各组件之间的相互操作,下面给出特例给予说明。

假定U2需要利用其特权对某一对象资源进行访问。系统运作过程主要如下:U2用其签名私钥对所发请求给予数字签名。客户端格式化访问请求信息和特权属性后将结果发往特权验证者。特权验证者首先通过证书缓存处查找相关的PKI和PMI信息,若有,就直接验证他的真实性,若没有,就通过属性证书库检索所需的PKI和PMI信息,在查找的过程中缓存相关的证书信息,并用找到的相关信息验证U2特权属性的真实性。最后特权验证者将验证结果根据具体应用对U2的访问请求给出最终裁决。下面是对过程的具体阐述(运作过程中所有有关利用PKI进行身份认证的部分均已省略)。首先,U2在客户端的用户界面填写完一份访问请求表单,表中包含了U2的各种身份认证信息、特权属性信息以及访问请求信息。随后,由客户端建立起与特权验证者的安全通道(如安全套接字SSL会话连接),把格式化过的身份认证信息、特权属性信息和访问请求信息等一并传给特权验证者。其中U2声称的特权由对应的OID代替。当然特权验证者中必须有一份本地所有特权的特权、标识号OID对应表。为证实是否能成功的授权,特权验证者需要获取与特权授予相关的所有证书。这时特权验证者根据收到的数据,利用LDAP协议实现与本地属性证书库的通信。首先在缓存中检索是否有LDAP目录中U2目录名下存放的属性证书,若有,就直接用,否则,就在证书库中查找,在查找的过程中缓存相关的证书信息。这一检索最终将扩展到库中的其它相关目录条目。检索过程中以AA颁发给U2的角色分配证书RAC为起点,然后通过目录属性收集所有与特权处理相关的其它证书。此外,特权验证者还要依据系统的匹配规则对U2声称的特权OID与系统的OID表作比较,判断其是否真正拥有本域中所定义的特权属性。最后特权验证者将特权是否拥有的裁决结果发给客户端。做出是否允许对资源访问的最终裁决。裁决将依据以下几条主要原则进行。首先特权验证者根据系统特权策略对所提交特权与对象方法敏感度作比较。其次,特权验证者还需证实验证时间必须落在证书的有效期内。最后,特权验证者还得考虑具体应用服务中有关的环境变量。如果以上这些条件均满足,特权验证者将允许U2执行其访问请求。

我们知道,U2拥有的角色R2是由多个子角色构建而成的。因此产生了多条不同的子角色的权限验证。但对于特权验证者来说,没有必要就每个角色的权限都进行验证处理,实际上特权验证者仅证实与U2声称角色R2相关的权限就可以了。只有在U2利用别的角色权限通过验证服务器客户端提出新的访问请求后,特权验证者才再执行与该角色相关的另一个角色的验证。在验证过程中如发现某一属性证书已到期,特权验证者可指示U2向其上级再次申请签发。属性证书的更新重发工作将具体由系统中的证书配置管理员根据原证书中的相关信息协助AA一同完成。

特权验证模块主要通过角色指派属性证书和角色规范属性证书来动态灵活确定和验证用户的访问权限,从而对用户的访问实现安全控制。该模块主要由下列函数模块组成:

(1) GetassignmentAC(userPKC):由用户的公钥证书(userPKC) 得到其ID ,然后检索证书库,获取该用户的角色指派属性证书。

(2) CheckassignmentAC ( userassignmentAC):对该用户的角色指派属性证书(userassignmentAC)进行真实性有效性的检查。

(3) Getuserroles(userassignmentAC):从该用户的角色指派属性证书获取该用户的角色。

(4) GetspecificationAC(userroles):从用户角色(userroles)获取与该角色对应的角色规范证书。

(5) CheckspecificationAC(rolespecificationAC):对该角色的角色规范属性证书(rolespecificationAC)进行真实性有效性的检查。

(6) Getpermisssions(rolespecificationAC):从该角色规范属性证书获取用户的访问权限集合(userpermissions) 。

(7) Accessdeciosion(userrequest ,userpermissions):比较用户访问请求(userrequest) 和用户访问权限集合(userpermissions) ,决定是否响应用户的访问请求。

2 结语

本文详细介绍了RPMI系统中关键部分“特权验证过程”的实现。RPMI模型在证书验证过程中使用了对象标识号OID增加安全性,使用缓存机制加快证书查找速度,整体提升RPMI系统性能。

参考文献

[1] 许长枫,刘爱江,何大可.基于属性证书的PMI及其在电子政务安全建设中的应用[J].计算机应用研究,2004,21(1):119-122.

[2] 安晓江,李大兴.PMI系统中RBAC策略的实现与管理[J].计算机工程与应腔北调用,2004,40(7):115-117,132.

[3] 张志勇.基于角色的访问控制及其面向对象的建模[J].计算机工程与设计,2004,25(8):1367-1369,1374.

热点推荐

上一篇:基于VRRP的可用性网络设计

下一篇:如何对幼儿进行德育教育论文 幼儿园关于德育教育之类的论文

2023年幼儿园中秋节班会安全教案反思 幼儿园班会教案(汇总9篇) 2023年央企挂职工作总结(大全6篇)