专利名称:高性能访问控制系统中资源及其访问控制策略的设计与存储方法
技术领域:
本发明涉及计算机信息安全领域,主要是一种高性能访问控制系统中资源及其访问控制 策略的设计与存储方法。
背景技术:
目前众多大型企业对访问控制系统性能和并发性的要求日益增加,这就对访问控制系统 中资源及其授权策略的存储提出了更高的要求。现代企业中的资源数量往往是海量的,资源 授权策略复杂,因此如何对分布资源及其策略进行管理并存储,保证适应企业级应用的访问 性能是访问控制系统的重要问题之一;同时访问控制系统应该能为分布资源采用统一的策略 进行统一管理,以保证资源权限的合理分配。
目前,市场上的产品往往是基于权限管理基础设施(PMI)提供的基础框架服务而开发的, 在应用到企业级海量数据环境下遇到一些问题。现有一些产品将所有的授权策略存放在一张 策略证书中,每次进行访问控制或制定资源访问策略时,都读写同一张证书,影响系统的性 能和并发访问能力。另一些产品采用使用由权威机构颁发的策略证书和由多个管理者颁发的 使用条件证书来共同进行访问控制;在进行访问控制时,它需要读取所有的使用条件证书, 同样影响系统的性能。
发明内容
本发明要解决上述技术所存在的缺陷,提供一种高性能访问控制系统中资源及其访问控 制策略的设计与存储方法。
本发明解决其技术问题所采用的技术方案这种高性能访问控制系统中资源及其访问控 制策略的设计与存储方法,本发明要解决大型企业系统对访问控制系统性能和并发性的要求, 采用了新的资源及其授权策略存储方式。本发明将为企业的所有资源建立资源树来管理庞大 的资源。资源类型或资源按组织部分来存放。在根节点下是各部门节点,在部门节点下是资 源类型节点或资源节点,在资源类型节点下可以增加相应的资源节点或资源类型节点。资源 是叶子节点,在它下面不能定义新的资源类型或资源。
资源对应着本身的访问策略,支持各种自定义的角色进行资源所具有的操作,在本发明 中将这些权限策略封装在策略证书中。策略证书遵循X. 509协议规定的ASN. 1编码证书格式, 以保证通用性。为了防止策略被篡改,用信任源对策略证书进行签名。策略证书是一种特殊 形式的属性证书,与属性证书不同的是,策略的属性域对应的是资源的访问策略。策略证书 包含了持有者、颁发者、有效期、属性等信息。属性定义了该资源支持什么角色的什么操作, 是资源访问控制决策的根本依据。它还有一个重要的域使用条件。它定义了对角色操作使 用的条件,可以包括时间约束等。时间约束指角色能够行使对资源进行操作权限的时间。
为了保证访问控制的性能和并发访问能力,在本发明中为每个资源类型或资源制定策略 证书,将它存放在资源节点下。 一个资源类型节点下的所有资源节点可能有着相同的访问控 制策略,为这类资源制定一张策略证书,控制该资源类型节点下所有资源的访问权限。同时, 策略证书具有继承性,下级资源同时拥有该资源节点下存放的策略证书所提供的访问策略, 也拥有上级资源类型节点下策略证书中制定的访问策略。在方便了策略制定的同时,它也会 使得资源的访问控制强度变弱。因此,在策略证书中设置扩展项,代表该证书能否继承上级 策略证书的访问策略。
因此,在进行访问控制时,从要求被访问的资源节点中査找策略证书,如果该节点下没 有策略证书,则沿着资源树往上査找直到找到策略证书。在验证策略证书有效性后,从属性 域中获得该资源所支持的角色操作。同时,从用户节点下获得该用户所拥有的属性证书,得 到角色信息,进而判断用户是否能够对该资源进行所请求的操作。
本发明有益的效果是
1. 按照企业部门组织资源,突出资源所有者对资源权限的控制;
2. 每个组织节点下的资源被组织成一棵资源树,这使得资源及其权限具有继承性,为 访问控制系统性能提供基础;
3. 能够满足大量用户同时访问系统。系统要求对用户的访问做出及时的反应,因此对 系统的响应时间要求比较高,要有很好地吞吐量。在大量用户并发访问时,系统能 较快地做出访问控制判断。
图l人员组织结构图2资源结构图3资源节点结构图4基于策略证书的访问控制模型;
图5某企业的人员组织结构示例图6某企业的资源结构示例图。
具体实施例方式
下面结合附图和实施例对本发明作进一步介绍 结合具体的应用来描述该访问控制系统的具体实施过程
1. 构建企业的人员组织结构
图1描述了企业的人员组织结构,人员组织采用单根树状结构,在根节点下可以设定部 门和产品。部门下可以设子部门和子产品,产品下只能设子产品。在组织结构的基础上提供
了行政和产品两种角色,分别成为行政角色(AdminRole)和项目角色(ProjectRole)。每一 个部门都可以提供若干行政角色,每一个产品都可以提供若干产品角色。可以为每个用户分 配一个或多个角色。 一个行政角色可以被多个部门所引用,如"所长"这一行政角色可以被 710所和701所两个部门引用,这两个所皆有"所长",产品也是如此。 一个人在组织中的信 息描述应该是一个二元组(部门,行政角色),(产品,产品角色), 一个人可以拥有多个这样 的二元组。我们称这样的二元组为"虚角色(VirtualRole)"。虚角色可以用于授权,但与普 通的角色不同。当为普通的角色授权时,比如对所长这个角色授予使用打印机的权力,那么 该企业中所有具有所长角色的人员都具有使用打印机的权力。如果要对某部门(比如701 所)中具有该角色的人员赋予使用打印机的权力时,使用这种授权方式是不可行的,需要提 供更加灵活的授权方式。虚角色可以完成这个需求,只需对(701所,所长)这个二元组授 予使用打印机的权力。这种设计简化了授权过程,减少了重复的工作。本发明的人员组织结 构可以为不同粒度的授权对象的授权提供良好的支持,按照授权粒度的由大到小的顺序,授 权对象可分为组织(包括某企业的各级组织)、角色(比如所长)、虚角色、用户。如图5 所示,在市场部定义了经理和销售人员两个行政角色,在研发部定义了经理和开发人员两个 行政角色。
2. 构建企业需要进行访问控制的资源树
图2描述了企业的资源结构。树的根节点是该企业,根节点下是各部门节点。每一个部 门下可以定义不同的资源类型和资源。在资源类型下可以定义不同的资源。资源属于一个特 定的部门。
本发明中的资源结构设计与传统的方法不同。传统的方法是不管资源属于哪个部门,直 接为企业中的所有资源建立一棵资源树,对资源进行统一的管理,并没有突出资源拥有者的 权力。在实际中,资源拥有者应该对自己的资源拥有完全的管理权力和操作权力。而本发明 是按照部门来管理该部门所拥有的资源,按照企业的组织结构来管理资源,同时结合传统方 法的树状资源结构检索速度快的优点。在检索资源时只需检索某部门下的资源树,而不是对 所有资源进行遍历查找,这样大大地提高了系统的性能。
图6描述了为某企业研发部构建的资源树。其中资源类型分别有URLType, HTTPUrlType, FTPUrlType 。在资源类型 HTTPUrlType下有资源类型 http资源 (http:〃localhost:8080/pmi ),在该资源类型下分别有资源管理资源 ( hUp:〃lcoalhost:8080/pmi/admin ) 和 配 置 资 源
(http://1ocalhost:8080/pmi/conf igure)。
3.授权并生成策略证书
图3描述了资源节点的结构。操作是和资源密切相关的,它表示了能对该资源进行的访 问方式,如可以对文档进行读、写、删除等操作,所以在资源类型或资源节点下要存放操作 列表或能够引用操作列表。
本发明为每个资源类型或资源制定一张策略证书并发布到该资源节点下。在策略证书中 封装了该资源的访问策略。资源策略证书的存储对访问控制系统的性能有较大的影响。如果 将所有资源的策略信息都定制在一个策略证书中,那么对于大型应用系统,其策略证书的数 据量将非常大。在进行访问控制时,读取并査找到对应资源的访问策略将耗费一定的时间, 从而影响系统的效率。我们为每个资源类型或资源制定一个策略证书,如果资源策略有变化, 只要改变该资源对应的策略证书,而不影响其它资源的策略证书;读取单个资源的策略证书 的效率也比读取整个系统资源的证书效率高。
在本应用中,在管理资源节点下制定并存储了策略证书,如图7所示,它定义了巿场部 经理这个角色可以浏览(view)资源http:〃lcoalhost:8080/pmi/adrain。在http资源类型 节点下制定并存储了策略证书,它定义了所有角色都可以浏览(view)该资源。
4.访问控制
图4描述了支持策略证书的访问控制模型,该模型包含用户、组织、角色、资源和操作 5个实体。用户是对资源进行操作的主体;组织对应于企业的不同部门或单位;(资源、操作) 二元组表示权限,权限是对某一资源具有某种操作的权利。 一个系统用户可以通过其具有的 角色的权限来判断其可以访问的系统资源和对该资源可进行的操作。该模型同样也支持角色 层次和约束。在角色层次关系中一些角色定义为另一个角色的子角色,通过角色之间的继承 关系,间接地拥有其父角色所定义的权限。通过设置约束条件,可以对角色授权、用户授权 和角色层次进行各种必要的限制。例如, 一个企业的采购主管和财务主管不能同是一个人, 如果将这两种角色都授权给同一个人的话,就会为欺诈行为创造机会,可能给企业带来不可 预测的损失;弓I入约束机制可以有效地防范这种危险。
在本应用中,当研发部的某个开发人员要访问配置资源时,在该资源节点下没有策略证 书,就沿着资源树往上査找,读取http资源类型节点下的策略证书。在验证策略证书有效性 后,解析该策略证书获取任何角色都可以访问该资源,那么该人员就可以顺利地访问配置资 源。如果他要访问管理资源,在该资源节点下就获得策略证书,通过验证解析获取只有市场 部经理和研发部经理两个角色才可以访问该资源,而该人员的角色是研发部开发人员,因此 他没有访问的权限。它会沿着资源树往上查找策略证书,但是管理资源节点下的策略证书已 经设置了不向上继承的扩展项,访问控制过程结束,该人员没有访问他所请求资源的权限。
上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要 求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。
权利要求
1、一种高性能访问控制系统中资源及其访问控制策略的设计与存储方法,其特征在于步骤如下(1)、将为企业的所有资源建立资源树来管理庞大的资源,资源类型或资源按组织部分来存放,在根节点下是各部门节点,在部门节点下是资源类型节点或资源节点,在资源类型节点下可以增加相应的资源节点或资源类型节点,资源是叶子节点,在它下面不能定义新的资源类型或资源;(2)、资源对应着本身的访问策略,支持各种自定义的角色进行资源所具有的操作,将这些权限策略封装在策略证书中,策略证书遵循X.509协议规定的ASN.1编码证书格式;策略的属性域对应的是资源的访问策略,策略证书包含了持有者、颁发者、有效期、属性信息;属性定义了该资源支持什么角色的什么操作,使用条件定义了对角色操作使用的条件,时间约束指角色能够行使对资源进行操作权限的时间;(3)、为每个资源类型或资源制定策略证书,将它存放在资源节点下,一个资源类型节点下的所有资源节点有着相同的访问控制策略,为这类资源制定一张策略证书,控制该资源类型节点下所有资源的访问权限;策略证书具有继承性,下级资源同时拥有该资源节点下存放的策略证书所提供的访问策略,也拥有上级资源类型节点下策略证书中制定的访问策略。
2、根据权利要求1所述的高性能访问控制系统中资源及其访问控制策略的设计与存储方法, 其特征在于用信任源对策略证书进行签名。
3、 根据权利要求1所述的高性能访问控制系统中资源及其访问控制策略的设计与存储 方法,其特征在于在策略证书中设置扩展项,代表该证书能否继承上级策略证书的访问策 略。
4、 根据权利要求1所述的高性能访问控制系统中资源及其访问控制策略的设计与存储 方法,其特征在于在进行访问控制时,从要求被访问的资源节点中査找策略证书,如果该 节点下没有策略证书,则沿着资源树往上査找直到找到策略证书,在验证策略证书有效性后, 从属性域中获得该资源所支持的角色操作;同时,从用户节点下获得该用户所拥有的属性证 书,得到角色信息,进而判断用户是否能够对该资源进行所请求的操作。
全文摘要
本发明涉及一种分布式文件系统多文件副本的管理方法,采用基于频率的副本管理机制,根据文件的读写访问频率和访问来源的信息动态改变文件副本的状态,通过文件副本数量的动态增减和存储位置的迁移;具体包括副本粒度管理、副本创建策略、副本选择和定位、副本的一致性维护方法;文件副本的创建方法包括用户发起的创建和结点发起的创建,采用数据网格的方法和基于利润驱动的策略;副本的定位提供将逻辑文件映射到一个合适的副本上,选择代价最小和访问效率最高的副本提供给用户使用。本发明有益的效果是提供的服务继承了分布式文件系统的优良特性,包括松散耦合、高可用性、高可靠性和高性价比。
文档编号G06Q10/00GK101197026SQ20071030058
公开日2008年6月11日 申请日期2007年12月20日 优先权日2007年12月20日
发明者健 吴, 吴朝晖, 尹建伟, 莹 李, 殷昱煜, 邓水光 申请人:浙江大学