首页> 中国专利> 一种基于构件的分布式系统访问控制方法及访问控制系统

一种基于构件的分布式系统访问控制方法及访问控制系统

摘要

本发明公开了一种基于构件的分布式系统访问控制方法,属于计算机软件技术领域。本发明方法包括下列步骤:a)用户发起访问请求;b)标准授权决策接口获得该访问请求中的用户属性信息并将其重组为策略决策请求后提交给策略决策服务;c)策略决策服务根据该策略决策请求检索已有策略并获得和该策略决策请求相匹配的策略;d)若策略决策请求缺少所述相匹配的策略所需的用户属性信息,则策略决策服务调用属性检索模块检索所需的用户属性信息并更新策略决策请求;e)策略决策服务根据更新后的策略决策请求和匹配的策略作出决策;f)标准授权决策接口根据该决策授权或忽略用户的访问请求。本发明可用于分布式系统的访问控制。

著录项

  • 公开/公告号CN101398771A

    专利类型发明专利

  • 公开/公告日2009-04-01

    原文格式PDF

  • 申请/专利权人 中国科学院软件研究所;

    申请/专利号CN200810226844.2

  • 发明设计人 吴槟;冯登国;张立武;王雅哲;

    申请日2008-11-18

  • 分类号G06F9/46(20060101);

  • 代理机构北京君尚知识产权代理事务所;

  • 代理人余长江

  • 地址 100190 北京市海淀区中关村南四街4号

  • 入库时间 2023-12-17 21:40:45

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-11-06

    未缴年费专利权终止 IPC(主分类):G06F9/46 授权公告日:20100818 终止日期:20171118 申请日:20081118

    专利权的终止

  • 2010-08-18

    授权

    授权

  • 2009-05-27

    实质审查的生效

    实质审查的生效

  • 2009-04-01

    公开

    公开

说明书

技术领域

本发明涉及一种分布式系统访问控制方法及访问控制系统,更具体地说,本发明涉及一种利用构件化的设计思想和方法进行设计、开发与部署使用的基于Web Service技术的访问控制方法及访问控制中间件系统,属于计算机软件技术领域。

背景技术

随着计算机和国际互联网使用的普及,计算机之间的交互日益频繁和多样,访问控制问题受到了越来越多的关注。然而现今的访问控制系统绝大多数都是与应用密切相关的,缺乏对访问控制模型和访问控制过程实施的抽象。如何保证这些与底层应用强相关的访问控制系统的正确性、可靠性与易用性,已经成为当前信息安全技术领域较为棘手的问题之一。

同时,伴随着计算环境和资源共享模式的发展变化,系统对访问控制模型和机制也提出了许多新的需求,由于这些新的要求的出现,传统访问控制模型日益暴露出自身的一些缺陷和不足。主要问题有:

1.访问控制粒度不够细致。传统访问控制模型在授权时大都仅仅考虑用户的某一种特定属性,而忽略其它属性,并且具有相同属性值的用户访问权限相同。

2.实施多策略支持的代价太高。传统访问控制模型都定义自己特定的属性、函数和配置方法,使用自己专有实施机制。多策略系统需要实现每种策略对应的访问控制机制。

3.延展性较差。当用户的数量巨大或者授权过程中需要考虑较多的用户属性时,传统访问控制模型的管理代价通常会急剧提高。

4.将授权与访问控制过程混为一体。在早期小规模系统中,管理员直接登录到系统中手工修改授权信息,授权管理很少受到重视;随着组织和系统规模的扩大,授权信息和策略的管理成为了一项繁琐而又艰巨的任务,传统的混合式管理难以满足要求。因此,必须将授权管理与访问控制进行明确的区分。

5.难以满足分布式系统的访问控制需求。分布式系统是由一个个孤立的安全域通过网络互联而形成的系统,每个安全域都管理着本地的资源和用户。通常每个域都有各自本地管理的资源和本地用户身份认证,当需要跨安全域进行资源访问控制时,来自外域的用户要访问本域的资源,外域的用户身份标识对本域而言往往是不可理解的;不同域的访问控制策略也通常是异质的,外域中用户的安全属性难以直接用于本域的访问控制决策。因此必须提供一种统一的访问控制框架,以满足分布式系统中跨域资源访问控制的需求。

近来,跨机构的通用的访问控制中间件技术在国际上得到广泛的重视,涌现了一大批相关的技术规范和开源项目,如Cardea,Shibboleth,EU资助下的PERMIS项目等。但是,值得注意的是,所有这些项目还没有提供一整套独立的访问控制中间件架构为异构平台下的Web应用系统提供集中的访问控制决策服务。

Shibboleth是Internet2/MACE(Middleware Architecture Committee for Education)和IBM合作开发的一个项目。该项目的目的是提供多个组织(主要是大学和科研机构)之间Web服务共享和访问控制的技术。该项目重在分析提供这种跨组织的服务时系统需要满足的结构性要求。Shibboleth采用了SAML(Security Assertion Markup Language,安全断言标记语言)作为系统组件之间消息交互的格式。Shibboleth主要关注三大问题:跨组织的单点登录,联合(Federation)和隐私保护。由于Shibboleth主要关注跨域认证功能,只提供了较为简单的跨域访问控制机制,不但功能较弱,且策略制定采用的是专有机制,仅针对单一场景,缺乏对多种应用场景的普遍的支持,无法实现通用的访问控制接口。

PERMIS(Privilege and Role Management Infrastructure)是英国Kent大学的一个PMI项目,该项目采用RBAC作为底层的访问控制机制。PEMIS的主要思想是:用户访问组织的资源时的访问权限取决于该组织或者该组织信任的第三方属性权威给该用户授予的角色。PERMIS项目的一个重要特色是它充分考虑了分布式环境下用户属性(主要是角色属性)的可信发布问题,采用了RFC2459定义的属性证书来可靠地发布用户的属性信息。但同时PERMIS也有一些缺点:如PERMIS将授权管理和访问策略管理集成在一起,管理机制缺乏松耦合性,不符合构件化的系统开发模式;同时策略制定采用的是专有机制,缺乏对多种应用场景的广泛的支持,难以提供通用的访问控制接口。此外,PERMIS的体系结构和软件组成不支持Web Service等远程调用封装机制,没有很好地实现构件化和模块化,代码复用性较差造成了必须对系统进行过多的限制,缺乏即插即用的易用性。

Cardea是美国NASA(国家航空和宇宙航行局)开发的一个项目,基于JAVA实现。Cardea的目标是为跨管理域的动态资源访问提供一个安全的分布式环境,允许用户正确地访问一个没有维护他的标识信息的域的资源。值得注意的是,Cardea项目也存在一些问题需要改进,由于Cardea的目标仅仅是为跨管理域的动态资源访问提供一个安全的分布式环境,缺乏与其他各种系统进行有效结合的接口和标准,这就会造成在以后功能扩展时,缺乏对外围部件自由替换或自由裁剪的支持,而这在大型的分布式系统中是尤为重要的。

发明内容

本发明的目的是克服现有技术中存在的问题,提供一种用于分布式环境下的构件化的访问控制方法和访问控制中间件系统。

本发明基于构件的分布式系统访问控制方法,包括下列步骤:

a)用户发起访问请求;

b)标准授权决策接口获得该访问请求中的用户属性信息(优选符合SAML规范)并将其重组为策略决策请求(优选符合XACML规范)后提交给策略决策服务;

其中用户属性信息的组合方式可以包括:主体-资源-行为-环境、主体-资源-行为、匿名ID、匿名ID-主体、或匿名ID-属性查询;

c)策略决策服务根据该策略决策请求检索已有策略(优选符合XACML规范)并获得和该策略决策请求相匹配的策略;

d)若策略决策请求缺少所述相匹配的策略所需的用户属性信息,则策略决策服务调用属性检索模块检索所需的用户属性信息并更新策略决策请求;

e)策略决策服务根据更新后的策略决策请求和匹配的策略作出决策;

f)标准授权决策接口根据该决策授权或忽略用户的访问请求。

本发明基于构件的分布式系统访问控制系统包括下列组件:标准授权决策接口,策略决策服务,策略管理服务和属性检索模块,所述各个组件均具有统一的接口标准,以便各个组件之间可以协同工作,比如,各组件之间可以顺利接收或识别来自其他构件的信息,即使不同的组件由不同的开发者所开发;

所述标准授权决策接口获得用户访问请求,并将其中的用户属性信息重组为策略决策请求后提交给策略决策服务;

所述策略决策服务根据策略决策请求检索策略发布点上储存的已有策略并获得和该策略决策请求相匹配的策略,同时在需要的时候调用属性检索模块检索策略决策请求中不包含但所述匹配的策略需要的用户属性;

所述策略管理服务用于对外提供策略管理的服务接口以供策略编写和维护工具调用;

所述属性检索模块用于检索用户属性,支持跨域检索。

本发明访问控制系统还可包括属性发布点,用于储存用户属性凭证,所述属性发布点和属性检索模块数据连接。

通过上述技术方案内容的描述可见,本发明将访问控制中的决策部分抽取出来,通过对访问控制请求的组装、访问控制策略的制订和匹配、访问控制结果的判断,使得对于应用业务端则只需要插入一个过滤插件,从而实现与应用无关。

本发明的访问控制中间件系统通过加入支持跨域的属性检索模块支持跨域的访问控制,可通过采用基于属性的策略管理服务支持多属性描述的XACML策略语言,提供动态和细粒度的访问控制功能。也可通过SAML属性服务把传统属性权威发布的属性凭证(例如属性证书)转换成符合SAML规范的格式,以保证整个中间件系统实现完整的SAML安全消息传输机制,保证属性的安全查询和应答以及访问控制决策的安全与可靠。

通过使用本发明的构件化的技术方案,对于希望利用最新的技术和方案的用户,可以避免重复开发。本发明技术方案还能够根据具体应用场景的不同,支持某些外围模块在不同的应用场景中的自由替换或裁剪;能做到既支持大规模、分布式、多信任域、多应用系统的复杂网络环境,也支持单信任域、少量应用系统的简单网络环境。通过将访问控制与业务系统分离的思想,做到统一授权,统一管理,减少单个系统的开发代价。此外,也可通过本系统提供一种新的服务式应用模式:基于web services的访问控制服务,支持面向SOA的业务开发。

基于本发明技术方案,用户可将访问控制系统的开发与使用按流程分为四个部分,即访问控制构件服务开发、构件服务发布、构件服务组装、系统级调试与部署。每个阶段所生成的结果与产品成为下一阶段的输入,整个流程完成后,构建成一个完整的访问控制系统,达到最终对受控资源进行访问控制的目的。

在第一部分的构件服务开发阶段中,本发明已对分布式环境下的访问控制判定过程进行抽象,将其划分为以下四大构件服务模块,并按各自功能进行开发,这四大构件服务模块如下:

1.标准授权决策接口(LOIS ADI)

LOIS ADI接口主要作用是提供一组接口服务,它负责收集主体属性、访问资源属性、动作属性、环境属性和访问决策请求等访问控制信息,构造XACML规范定义的标准化格式的策略决策请求,提交给策略决策服务。由于某些接口标准无法与XACML描述的格式完全兼容,可在实现的过程中扩展和修改某些数据结构和服务的定义,以便能够与XACML规范协同工作并维持XACML的表达能力。

2.策略决策服务

策略决策服务负责从标准授权决策接口接受决策请求,查找适用策略并对策略进行评估,产生一个决策结果,然后将这个结果返回给标准授权决策接口(LOIS ADI)。策略决策服务包括三个子模块:XACML策略引擎、属性检索器和策略检索器。XACML策略引擎负责接收策略决策请求,利用策略检索器检索适用策略,然后对找到的策略进行评估,在评估过程中如果发现策略决策请求中的主体属性不充分,则调用属性检索器通过属性检索模块检索主体属性。

3.策略管理服务

策略管理服务负责策略管理的服务接口以供图形化的XACML策略编写和维护工具调用,可包括两个部分:策略管理模块和策略发布点。策略管理模块实现对XACML策略的定义和维护提供服务接口的功能,并提供服务将定义好的策略发布到策略发布点上。策略发布点是一个策略存储数据库,供策略检索器进行适用策略检索。然而,作为对系统的一种合理的简化,可以不设置策略管理模块,比如,采用商用的策略库以降低单独的策略开发成本,缩短系统构建的时间耗费。

4.SAML属性服务

SAML属性服务有机结合现有授权基础设施和SAML安全信息传输机制,实现对安全属性验证过程的有效封装,构造了一种从属性凭证到SAML安全属性断言的转换机制,即SAML安全属性查询服务。本部分主要包含两个模块:SAML属性检索模块和和LDAP(Lightweight Directory Access Protocol,轻量级目录访问协议)属性发布点。属性发布点存放授权管理基础设施或其它属性管理系统给机构内用户颁发的安全属性凭证,然而,作为对系统的合理简化,可以不设置属性发布点,以降低对属性发布点的维护成本。SAML属性检索模块根据接收到的SAML安全属性查询请求在LDAP属性发布点中查找对应的属性凭证,通过建立凭证链确定属性的可信性,产生签名的SAML安全属性应答消息。对于用户非本域内的属性信息则通过调用外域SAML属性服务以获得用户在外域中所具有的属性。

在对以上四大构件服务模块的开发过程中,本发明为每个构件服务定义了统一的接口标准,以支持各模块在不同的应用中的自由替换和互操作。通过统一接口标准,确保每个符合标准的服务调用者在进行调用时得到相同的正确返回。一个典型的例子就是对于标准授权决策接口(LOIS ADI)所调用的策略决策服务,任意符合接口标准的决策请求都是合法和正确的,而不论该请求是否来自特定的开发者开发的LOIS ADI。换言之,用户可以根据应用的要求自己开发符合标准的模块来调用策略决策服务,从而实现采用构件化的设计思想根据具体应用的不同,进行模块间的自由替换和自由组织。

此外,各服务/构件在对外提供基本服务的同时,还通过配置管理的形式,可选择的支持某些增强功能。一个典型的例子就是对于SAML属性服务,除了可以提供对本域属性的查询服务,通过配置管理的形式,还可以通过调用对应的外域SAML属性服务以获得用户在外域中所具有的属性,并通过建立凭证链确定属性的可信性,产生签名的SAML安全属性应答消息。以保证来自外域的用户属性的安全性和可信性。

在第一部分的构件服务开发阶段完成以后,所得到的输出结果产品是以上四大构件服务模块。而该阶段的输出结果产品作为输入在下一阶段进行使用。

在第二部分的构件服务发布阶段中,对第一阶段开发完成的四大构件服务模块进行发布。在发布过程中,为了保证以上四大模块的独立性和低耦合,需要对其进行独立发布,以保证客户可自由选择使用的服务模块,并支持各模块在不同的应用中的自由替换和互操作。

服务发布阶段主要任务是将第一阶段所完成的四大构件服务模块的接口服务发布到Public UDDI Registry(公共UDDI注册中心)。大致分为以下几个步骤:

1.添加或更新发布者信息(save_publisher):用于注册一个新的发布者,或更新该发布者的详细信息。

2.添加或更新商业信息(save_business):包括发布者的认证信息,商业UUID,实体名,实体描述,实体联系方法(包括联系类型,联系人名字,电话,e-mail等)。

3.添加或更新服务信息(save_service):包括输入认证信息,商业UUID,服务UUID,服务名,服务描述,服务的绑定模板(一个服务可能对应多个绑定模板)。服务的绑定模板中包括:绑定UUID,访问点URL,tmodel细节。tmodel细节则包括:tmodel UUID,tmodel概述文档URL。其中,tmodel被用于定义服务的技术规范。

4.添加或更新绑定信息(save_binding):输入服务的绑定模板中所包括的信息,如认证信息,服务UUID,绑定UUID,绑定描述,访问点URL。

5.添加或更新tmodel信息(save_tModel):输入被用于定义服务的技术规范,如tmodelUUID,名字,描述,概述文档的描述及其URL,标识符包,类别包(包括工业代码、产品、地理等)。

6.添加发布者声明到本发布者的声明集合中(add_publisherAssertions):输入发布者的认证信息,发布者声明。发布者声明中包括:所关联两实体的UUID,UUID参考信息。

通过以上步骤即可将接口服务发布到公共UDDI注册中心,服务组装用户即可通过查找商业信息和服务,查询到以上接口服务,以便在第三阶段进行构件服务组装。

在第三部分的构件服务组装阶段中,由服务组装用户根据所要搭建的访问控制系统的系统需求和所要实现的基本功能,对第二阶段所发布的四大构件服务模块中所需要的服务接口进行组装。在本阶段中,服务组装用户并不需要对第一阶段所开发的四大构件服务模块其中的具体实现细节有充分详尽的了解,只需要知道该服务模块所能实现的功能,以及它所提供的接口即可。服务组装用户根据访问控制系统对受控保护资源的保护需求以及最终用户的业务使用需求,选择适合自己的服务接口进行组装,并可根据自己的意愿对其中某些模块进行替换或通过配置的形式可选择的支持某些增强功能。

一个简单的例子是,某公司需要搭建一个文档管理系统,由于是只限于在本公司内部进行使用,因此不需要跨域的SAML安全属性查询服务。此外,由于该公司希望自己管理相应的访问控制策略,因此使用本公司自己的策略管理服务。在此需求下,服务组装用户将只需要把LOIS ADI授权决策接口、策略决策服务和SAML属性服务三大构件服务模块中的服务接口进行组装即可。由于只是在本公司内部使用,因此LOIS ADI授权接口只需要调用本域授权接口;SAML属性服务也不需要查询用户在外域中所具有的属性,只需在配置中设置为发布本域属性即可。在确定需要组装的服务模块以后,服务组装用户即可按照对该访问控制服务的设计进行组装。由于系统的设计、开发与部署均基于Web Service技术,因此服务组装阶段支持现有流行的开发模型和开发工具,如BPMN建模、BPEL语言等。

在第三部分的构件服务组装阶段完成以后,所得到的输出结果产品是由基本的构件服务模块所组装而成的一个符合系统需求的访问控制系统。该系统可以有自己定制的界面或访问控制实施点,也可以采用某些厂商所开发的模块进行必要的功能替换,但在符合本发明接口的前提下,该系统是一个由基本的访问控制构件服务模块组装而成的分布式访问控制系统。

在第四部分的系统级调试与部署阶段中,由实施人员对第三阶段组装生成的访问控制系统进行调试与部署实施。在本阶段中,实施人员需要进行的工作包括:对访问控制系统添加相应的策略;为系统用户颁发相应的属性凭证并保证属性凭证链的可追溯性;对跨域的属性查询,需要与外域所属机构进行协调,保证外域属性发布点的可用性;对系统进行整体调试,确保访问控制策略的正确实施。在完成以上工作以后,实施人员可将最终的访问控制系统交由系统管理员与最终用户使用。

和现有技术相比,本发明具有下述优势:

1.基于本发明技术方案提供的组装式开发与使用模式,用户可保证应用的访问控制流程安全与可靠,保证决策整体流程的可追踪、可核查与可控制。

2.利用构件化的设计思想和方法对访问控制流程进行特征提取,并通过为核心构件提供相关的功能扩展,实现独立灵活延展性好的中间件架构,保证新构件添加过程的易配置、可插拔、无冲突。

3.通过统一的、可扩展的策略管理服务,实现对访问控制系统的多策略支持。改进了以往对每种策略定义特定属性、特定函数、特定配置方法,使用专有实施机制的缺陷。

4.通过引入统一的SAML属性服务克服了传统访问控制模型在授权时大都仅仅考虑用户的某一种特定属性的缺陷,并用统一的SAML安全属性应答机制解决了外域用户身份对本域不可理解、不同域间访问控制策略异质的问题,实现了外域用户的安全属性直接用于本域的访问控制决策。

附图说明

图1为本发明实施例系统的系统结构图。

图2为本发明实施例系统的策略决策服务的运行流程图。

图3为本发明实施例系统的策略管理模块的运行流程图。

图4为本发明实施例系统的SAML属性服务的运行流程图。

具体实施方式

下面通过具体实施例和附图对本发明作进一步的描述。

本实施例系统包括标准授权决策接口(LOIS ADI),策略决策服务,策略管理服务,以及SAML属性服务四大构件,如图1所示。本实施例系统分别提供了跨域或单域访问过程中需要的访问控制信息收集、策略决策、策略管理、用户属性查询等功能,能够提供一套完整的访问控制流程所需的各种功能。此外,通过利用以上四大构件所提供的已独立实现的功能,服务组装用户可以快速的按访问控制系统需求进行组装,并可以根据具体应用场景的不同,实现功能组件的自由替换,避免重复开发。

本实施例系统完整的访问控制流程包括下列步骤:

1.安全策略管理员通过策略管理模块定义XACML策略,然后将定义好的策略存储到策略发布点上。

2.用户发起访问请求,该访问请求被应用服务器拦截。应用服务器收集访问控制信息,并提交给标准授权决策接口(LOIS ADI)。

3.标准授权决策接口(LOIS ADI)将访问控制信息转换为符合XACML规范的策略决策请求并提交给策略决策服务。

4.策略决策服务以策略决策请求为参数调用策略检索器从策略发布点检索适用策略,并对策略进行评估。

5.在评估过程中如果发现策略决策请求中的属性是不充分的,则调用属性检索器向用户所属域的属性检索模块发出SAML属性查询请求。

6.属性检索模块通过属性发布点上的属性凭证或发起检索从而获得属性凭证,并验证凭证,对解析出的属性进行SAML格式转换。如果所查询的属性是外域中的属性,则调用对应的外域属性检索模块以获得用户在外域中所具有的属性,并通过建立凭证链确定属性的可信性,产生签名的SAML安全属性应答消息。

7.属性检索模块向策略决策服务发送SAML属性应答。

8.策略决策服务完成策略评估,返回最终决策结果。在策略评估过程,如果当前检索策略中包含引用策略,策略管理服务以被引用的策略ID调用策略检索器获取被引用的策略。

9.应用服务器根据返回的决策结果拒绝或允许用户访问。

下面描述各构件服务模块的具体实施方式:

一、标准授权决策接口(LOIS ADI)实现了一种支持多种信息格式的通用授权接口,应用服务器可以通过这个接口的调用请求访问控制服务。标准授权决策接口的另一功能是将访问控制信息转换为符合XACML规范的决策请求格式并提交给策略决策服务。由于某些接口无法与XACML描述的格式完全兼容,可在实现的过程中扩展和修改了某些数据结构和服务的定义,以便能够与XACML规范协同工作并维持XACML的表达能力。

LOIS ADI中的授权决策接口主要包括如下几类:

1.主体-资源-行为-环境类:应用通过指明访问过程中的主体信息、资源信息、行为和当前的环境信息,对接口进行调用。此类接口的优点是信息分类明确,关系对应清晰。缺点是输入信息条目过多,参数获得与构造过程复杂,不适于简单应用。

2.主体-资源-行为类:应用通过指明访问过程中的主体信息、资源信息、行为,对接口进行调用。访问过程中的环境信息在应用服务器进行接口调用时默认为统一方式,或指定环境信息查询服务的地址,由LOIS ADI协助收集环境信息,并进行组装。

3.匿名ID类:应用在对接口进行调用时,并不指明主体的真实ID,而只是传递一个匿名ID作为主体的代号,当策略决策服务需要知道主体的真实身份时,再通过指定的真假名转换服务进行转换,此类接口可有效支持匿名保护机制。

4.匿名ID-主体属性类:应用在对接口进行调用时,并不指明主体的真实ID,而只是传递一个匿名ID作为主体的代号,但却在主体信息中携带该主体所有的主体属性信息。在绝大部分基于属性的访问控制中,策略只是针对主体的属性做了详细的描述,而对主体的ID却并不关心(如某资源只对具有项目经理属性的主体开放,但并不关心是哪一位项目经理),采用此类接口,即可以有效避免在查询匿名ID所具有的属性时进行频繁的真假名转换操作。

5.匿名ID-属性查询类:应用在对接口进行调用时,只传递一个匿名ID作为主体的代号,当策略决策服务需要知道主体的属性时,通过指定的属性查询服务进行查询,获得主体所具有的属性;而当策略决策服务需要知道主体的真实身份时,再通过指定的真假名转换服务进行转换。采用此类接口,应用不需要将主体的所有属性信息收集完全,这一方面是不必要的,另一方面也会泄露主体的某些隐私。在策略决策服务进行决策判定时,再根据所缺少的属性信息通过指定的属性查询服务进行查询,可有效地支持隐私保护机制。

二、策略决策服务的主要功能是根据接收到的XACML访问控制策略决策请求,检索适用的策略和必要的属性(需要的话),对策略进行评估,获得并返回策略决策请求的决策结果。其中策略检索通过调用策略检索器完成,属性检索通过调用属性检索器完成。简要流程如图2所示,具体内容如下:

1.策略决策服务接收访问控制策略决策请求。

2.解析当前请求,并利用策略检索器检索适用策略。

3.如果请求中缺少属性信息,则利用属性检索器检索属性信息。如果不缺少,则继续进行下一步。

4.开始对策略进行评估。

5.如果发现当前策略引用了别的策略,则转到2,再次利用策略检索器检索被引用的策略。如果没有引用其它策略,则继续进行下一步。

6.产生评估结果。

7.返回给请求发起方。

三、策略管理服务的主要功能是进行访问控制策略的维护、定义、修改、删除。XACML策略是以文档为中心的,每次都是整个文档作为一个整体使用,本实施例采取了文件的存储方式,以目录的形式进行组织,每个策略作为一个单独的文件。策略管理服务就是对这样的一个存储目录进行操作,能够给管理员提供一个整体的策略视图,以便管理员能够掌握系统中包括的每个策略的作用和策略之间的引用关系。尽管每个策略都包含了作用描述和策略引用,但是通过解析每个XML文件来提取这些信息的方法太复杂和耗时,因此这些信息必须独立保存。对每一个策略,都要独立的维护该策略的类型,策略的ID,策略的简要描述,策略引用的其它策略。这些信息用一个独立的XML文件来保存,该文件称为系统信息文件,该文件对用户是不可见的。此外我们还要维护一些全局的系统信息,包括策略目录,策略schema文件等。策略管理服务的运行流程如图3所示,具体内容如下:

1.策略管理服务检测系统信息文件是否已经存在。如果存在则读取系统信息文件;如果尚不存在,则生成该系统信息文件。

2.调用系统信息文件,对策略ID、类型、策略引用等进行维护。

3.接收用户当前的操作,根据操作类型确定要进行的流程:如果用户要删除策略,则服务删除指定的策略,并更新系统信息文件;如果用户要创建策略,则服务创建策略文件,并启动策略编辑接口进行编辑。编辑完成后,服务检查策略有效性,保存策略文件并更新系统信息文件;

如果用户要修改策略,则服务启动策略编辑接口编辑选定的策略。编辑完成后,服务检查策略有效性,保存策略文件并更新系统信息文件;

4.完成操作后,转到2.

四、SAML属性服务主要是为了向策略决策服务中的属性检索器提供一种基于SAML的安全属性查询服务,这种服务是通过构造一种从属性凭证到SAML安全属性断言的转换机制实现的。授权管理基础设施(PMI)等给机构内用户颁发的安全属性凭证存放在LDAP属性数据库中。SAML属性查询服务器根据接收到的SAML安全属性查询请求和机构隐私策略判断是否允许请求者查询该安全属性,在LDAP属性数据库中查找对应的属性凭证,通过建立凭证链确定属性的可信性,产生签名的SAML安全属性应答消息。如果请求中包含有对外域属性的查询,则会通过调用外域SAML属性服务以获得用户在外域中所具有的属性。其查询过程与本域属性的查询过程一致。

SAML属性服务的运行流程如图4所示,具体内容如下:

1.SAML属性服务监听SAML属性查询请求,获得查询请求后创建服务子线程。

2.检查接收到的SAML安全属性查询请求的有效性和合法性:发送给属性服务的属性查询请求必须是经过签名的,且SAML属性服务只能为所属机构或者外部的可信机构的策略决策服务提供属性查询服务。

3.根据隐私策略判断是否允许请求者查询该安全属性,允许则进行下一步,不允许则返回出错信息。

4.在属性缓存中查找该属性SAML断言消息,存在则直接转到8,不存在则进行下一步。

5.在LDAP属性数据库中查找对应的属性凭证,存在则进行下一步,不存在则返回出错信息。

6.通过建立凭证链确定属性的可信性。

7.产生签名的SAML安全属性应答消息并写入属性缓存

8.返回属性断言。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号