访问控制信息的修订的基于策略的触发的制作方法

文档序号:27611884发布日期:2021-11-27 04:27阅读:157来源:国知局
访问控制信息的修订的基于策略的触发的制作方法

1.本公开涉及信息技术领域。更具体地,本公开涉及对信息技术系统的访问的控制。


背景技术:

2.本公开的背景技术是利用讨论与其上下文有关的技术来介绍的。然而,即使当该讨论涉及文档、动作、制品等时,它也不暗示或表示所讨论的技术是现有技术的部分或者是与本公开有关的领域中的公知常识。
3.对信息技术系统的访问的控制对于它们的管理是关键问题。一般而言,这与用于控制可以由不同主体(例如,(人类)用户)在信息技术系统的(所保护的)资源上执行的活动的过程有关。访问控制过程旨在使(正确的)主体能够在正确的时间并且针对正确的原因执行(正确的)活动;这避免(或至少显著地减少)未经授权的主体可能在信息技术系统中执行不期望的(并且通常是危险的)活动的风险。这对于保证数据安全性和监管合规性是非常重要的。


技术实现要素:

4.根据本发明的第一方面,提供了一种用于促进对一个或多个主体对信息技术系统的访问的控制的计算机实现方法、计算机程序产品、计算机系统和控制计算系统。该方法包括由控制计算系统检索一个或多个触发策略,每个触发策略基于与信息技术系统有关的一个或多个状态参数,由控制计算系统检索状态参数,由控制计算系统根据对应的状态参数来评估触发策略,由控制计算系统根据所述评估触发策略的结果来确定触发指示符,并且输出;由控制计算系统触发指示符的指示,以触发对访问控制信息的修订,该访问控制信息用于根据触发指示符来控制对信息技术系统的访问。
5.本文呈现了本公开的简化概述以提供对以下内容的基本理解;然而,本概述的唯一目的是以简化形式引入本公开的一些概念作为其以下更详细描述的序言,并且其不被解释为其关键元素的标识或其范围的描绘。
6.概括地,本公开是基于提供对访问控制信息的修订的基于策略的触发的构思。
7.具体地,实施例提供了一种用于促进对信息技术系统的访问的控制的方法。根据与信息技术系统有关的一个或多个状态参数来评估一个或多个触发策略。根据触发策略的评估结果,触发用于控制对信息技术系统的访问控制信息的修订。
8.另一方面提供了用于实现该方法的计算机程序。
9.另一方面提供了对应的计算机程序产品。
10.另一方面提供了对应的控制计算系统。
11.更具体地,本公开的一个或多个方面在独立权利要求中阐述,并且有利特征在从属权利要求中阐述,其中所有权利要求的措辞通过引用逐字并入本文(其中任何有利特征参考任何具体方面提供,该具体方面在必要的变更下应用于每个其它方面)。
附图说明
12.本发明的这些和其它目的、特征和优点将从以下结合附图阅读的对其说明性实施例的详细描述中变得明显。附图的各种特征不是按比例的,因为为了清楚起见,图示是为了促进本领域技术人员结合详细描述理解本发明。在附图中:
13.图1a至图1d描绘了根据本公开的实施例的解决方案的应用的示例;
14.图2描绘了其中可以实践根据本公开的实施例的解决方案的信息技术基础设施的示意性框图;
15.图3描绘了根据本公开的实施例的可以用于实现解决方案的主要软件组件;
16.图4a至图4c示出了描述与根据本公开的实施例的解决方案的实现有关的活动的流程的活动图;
17.图5描绘了根据本发明的实施例的云计算环境;以及
18.图6示出了根据本发明实施例的抽象模型层。
具体实施方式
19.本文公开了所要求保护的结构和方法的详细实施例;然而,可以理解,所公开的实施例仅是对可以以各种形式具化的所要求保护的结构和方法的说明。然而,本发明可以以许多不同的形式具化,并且不应被解释为限于本文所阐述的示例性实施例。在描述中,可以省略公知的特征和技术的细节,以避免不必要地模糊所呈现的实施例。
20.本发明实施例涉及信息技术领域。更具体地,本公开涉及对信息技术系统的访问的控制。
21.以下所描述的示例性实施例提供了一种系统、方法和程序产品,以便尤其提供对信息技术系统中的访问控制信息的修订的基于策略的触发。因此,本实施例具有通过促进由一个或多个主体、或用户、或系统对信息技术系统的访问的控制来改进计算技术领域的能力。
22.访问控制过程通常由身份和访问管理(以下称为“iam”)应用来实现。简而言之,iam应用允许管理与主体相关的数字身份(例如,具有其密码的用户的账户)。iam应用还允许授予特定的许可,该许可授权每个主体执行信息技术系统中的特定活动(例如,读取/写入文件)。iam应用然后允许由主体根据其许可(例如,具有针对文件的读取许可的主体可能不更新它)来强制执行对信息技术系统的访问。此外,iam应用允许监视对信息技术系统的访问与治理访问控制过程的安全策略的遵守性。
23.访问控制过程可以基于不同的安全模型。例如,最常见的安全模型是基于角色的访问控制(下文中称为“rbac”)模型。在这种情况下,定义一个或多个角色,每个角色具有一个或多个许可(以在信息技术系统中执行活动)。每个主体被分配一个或多个角色,并且然后被分配对应的许可。另一有希望的安全模型是基于属性的访问控制(abac)模型,也被称为基于策略的访问控制(pbac)或基于声明的访问控制(cbac)。在这种情况下,基于一个或多个属性定义一个或多个规则,每个规则用于许可;每个主体被分配由对应属性满足的规则的许可。这促进访问控制过程的管理,尤其是在大型组织(具有数千个主体和许可)中。
24.然而,访问控制过程通常受到动态要求(其以相对高的频率改变)的影响;例如,这可能是由于重组、获取和外包操作以及监管的修改。因此,用于控制对信息技术系统的访问
控制信息被不断地修订(以试图使其满足实际需求)。特别地,在访问控制过程是基于rbac/abac模型的情况下,可以应用角色/规则挖掘技术来发现主体到资源映射的典型模式,其被用于相应地改变角色/规则。在任何情况下,该角色/规则挖掘活动都是耗时的;在任何情况下,都要求繁重的人工干预。所有上述内容使访问控制信息的修订相当昂贵。
25.因此,通常仅响应于被认为涉及显著改变的事件来执行对访问控制信息的修订;例如,这可以是组织图中的剧增、新公司的合并、业务分支的资产分拆、新战略区域的创建等情况。
26.然而,可能发生的是,尽管一些事件似乎是用于修订访问控制信息的有效原因,但是所获得的结果不值得其成本;反之亦然,可能发生的是,看上去并不显著的事件反而将需要访问控制信息中的重大改变。在任何情况下,即使不涉及任何显著变化的个别次要事件也可以在长时间连续发生时这样做。
27.因此,确定用于修订访问控制信息的正确时间是有挑战性的;在任何情况下,这是完全手动的任务,其强烈地依赖于个人技能,易于出错并且几乎不可重复。因此,存在执行访问控制信息的无用修订的风险;这不利地影响了信息技术系统的管理成本。相反,存在延迟访问控制信息的有用修订的风险;这可能使数据安全和/或监管合规性暴露。
28.本文呈现了本公开的简化概述以便提供基本理解;然而,该概述的唯一目的是以简化形式引入本公开的一些概念作为其以下更详细描述的序言,并且其不被解释为其关键元素的标识或其范围的描绘。
29.概括地,本公开基于提供对访问控制信息的修订的基于策略的触发的构思。
30.具体地,实施例提供了一种用于促进对访问控制信息的维护的方法,该访问控制信息用于控制由一个或多个主体对信息技术系统的一个或多个资源的访问。根据与资源、主体和/或主体对资源的访问有关的一个或多个策略参数来评估一个或多个触发策略。根据触发策略的评估结果,触发包括用于将主体映射到资源的挖掘活动的访问控制信息的修订。
31.另一方面提供了用于实现该方法的计算机程序。
32.另一方面提供了对应的计算机程序产品。
33.另一方面提供了对应的控制计算系统。
34.更具体地,本公开的一个或多个方面在独立权利要求中阐述,并且有利特征在从属权利要求中阐述,其中所有权利要求的措辞通过引用逐字并入本文(其中任何有利特征参考任何具体方面提供,该具体方面在必要的变更下应用于每个其它方面)。
35.附图说明
36.参考图1a至图1d,示出了根据本公开的实施例的解决方案的应用的示例。
37.如图1a所示,实现访问控制过程以控制对信息技术系统100的访问。具体地,根据对应的访问控制信息来控制可以由不同主体(例如,(人类)用户)在信息技术系统100的一个或多个资源上执行的活动。例如,在访问控制过程基于rbac模型的情况下,访问控制信息指示具有用于执行活动的许可的角色以及角色对主体的分配,其中在访问控制过程是基于abac模型的情况下,访问控制信息指示限定当由对应的属性满足时由主体执行活动的许可的规则。
38.在根据本公开的实施例的解决方案中,提供了一个或多个触发策略,用于确定何
时需要对访问控制信息进行修订。每个触发策略基于与资源、主体和/或主体对资源的访问有关的一个或多个策略参数(例如,它们中新的策略参数的数目)。随着时间的过去,例如周期性地,触发策略以及其策略参数被检索。
39.如图1b所示,根据相应的策略参数评估触发策略;例如,通过确定每个触发策略是真还是假来评估每个触发策略。
40.如图1c所示,根据触发策略的评估来确定触发指示符;例如,触发指示符是通过根据对应的得分(取决于它们在触发访问控制信息的修订中的有效性)对为真的触发策略进行加权来计算的触发索引。
41.如图1d所示,输出(例如,所显示的)触发指示符以便作为响应(例如,当触发索引超过阈值时)使修订访问控制信息,特别地,这涉及用于将主体映射到资源的挖掘活动(例如,针对rbac模型的角色挖掘和针对abac模型的规则挖掘)和基于挖掘活动的结果的访问控制信息的可能更新。
42.上述解决方案促进确定用于修订访问控制信息的正确时间;例如,现在可以查明是否需要对访问控制信息进行修订(即,是否适当、有用或必要)。该结果以基本上自动的方式实现,使得它是高度准确的、可靠的并且可再现的。因此,避免了(或至少基本上减少了)执行访问控制信息的无用修订的风险;这对信息技术系统100的管理成本具有有益效果。相反,避免了(或至少基本上减少了)延迟访问控制信息的有用修订的风险;这防止了数据安全和/或监管合规性暴露。
43.参考图2,示出了其中可以实践根据本公开的实施例的解决方案的信息技术基础设施200的示意性框图。
44.信息技术基础设施200具有基于客户端/服务器模型的分布式架构。特别地,一个或多个服务器计算机器或简单地服务器205向一个或多个客户端计算机器或简单地客户端210提供服务。针对该目的,客户端210通过(通信)网络215(例如,基于互联网)与服务器205通信。服务器205中的一个或多个服务器是资源服务器,利用附图标记205r来区分,其实现了其访问必须被保护的上述信息技术系统;资源服务器205r(例如,提供像客户关系管理(crm)、轻量级目录访问协议(ldap)、安全信息和事件管理(siem)、软件即服务(saas)、电子邮件等服务)具有仅可由客户端210的(授权)用户访问的硬件和/或软件资源(例如,设备、机器、文件、程序、web页等)。服务器205(或多个)中的一个服务器是控制服务器,利用附图标记205c来区分,其控制客户端210的用户对资源服务器205r的资源的访问(例如,使用设备、开始/停止机器、读取/写入文件、运行程序、下载web页等)。
45.上述计算机器(即,服务器205和客户端210)中的每一个计算机器包括通过具有一个或多个级别(具有根据计算机器205、210的类型适当缩放的架构)的总线结构220在它们之间连接的多个单元。特别地,一个或多个微处理器(μp)225控制计算机器205、210的操作;非易失性存储器(rom)230存储用于引导计算机205、210的基本代码,而易失性存储器(ram)235被微处理器225用作工作存储器。计算机205、210具有用于存储程序和数据的大容量存储器240(例如,其中实现服务器205的数据中心的存储设备和针对客户端210的硬盘)。此外,计算机器205、210包括针对外围设备的多个控制器,或输入/输出(i/o)单元245;例如,每个服务器205的外围设备245包括网卡,用于将服务器205插入到对应的数据中心中,并且然后将其连接到数据中心的控制台用于其控制(例如,个人计算机,还被提供有用于对可移
动存储单元进行读取/写入的驱动器,诸如光盘,如dvd),并且连接到数据中心的交换机/路由器子系统用于其与网络215的通信,而每个客户端210的外围设备245包括键盘、鼠标、监视器、用于连接到网络215的网络适配器(nic)以及用于对可移动存储单元进行读取/写入的驱动器。
46.参考图3,示出了可以用于实现根据本公开的实施例的解决方案的主要软件组件。
47.特别地,所有软件组件(程序和数据)作为整体利用附图标记300表示。软件组件300通常存储在大容量存储器中,并且当程序运行时被(至少部分地)加载到控制服务器的工作存储器中。程序最初例如从可移动存储单元或从网络(图中未示出)安装到大容量存储器中。在这方面,每个程序可以是模块、代码段或代码部分,其包括用于实现所指定的逻辑功能的一个或多个可执行指令。
48.访问控制管理器305控制从客户端(图中未示出)对信息技术系统的访问。访问控制管理器305作为服务在后台运行;访问控制管理器305拦截来自客户端的、用于执行所选择的活动(在信息技术系统的对应资源上)的任何请求,并且根据所授予的对应主体(例如,登录客户端的用户)的授权来允许或阻止它。访问控制管理器305访问(在读取/写入模式下)许可数据库310和身份数据库315,其存储用于控制对信息技术系统的访问控制信息。特别地,当访问控制管理器305基于rbac模型时,许可数据库310具有针对每个角色的条目(由对应的唯一标识符所标识);条目指示分配给用于执行一个或多个活动的角色的一个或多个许可(例如,开发者被授权读取/写入他/她正在工作的项目,团队领导者被授权读取/写入他/她的团队的开发者的所有项目,经理被授权读取向其报告的开发者的所有项目等等)。
49.身份数据库315具有针对每个用户的条目,其向访问控制管理器305注册(由对应的唯一标识符标识);该条目指示用户的账户和密码,以及分配给用户的一个或多个角色。备选地,当访问控制管理器305基于abac模型时,许可数据库310具有针对每个规则的条目。该条目指示当满足规则时被授予或拒绝用于执行活动(或更多)的许可。规则基于一个或多个属性;属性可以与资源(例如,它们的类型、位置、分类等)、用户(例如,责任、职责、能力、部门等)、活动(例如,读取、写入、删除、批准等)和/或上下文(例如,日期、时间等)有关。例如,规则可以指示雇员在她/他处于特定位置时被授权更新报告,开发者在其处于测试模式时被授权更新程序,在某个日期之前没有用户被授权读取文档等等。身份数据库315具有针对每个用户的条目,其向访问控制管理器305注册;该条目指示用户的账户/密码及其一个或多个属性。访问控制管理器305的商业示例是ibm公司的“ibm安全身份和访问管理器”。ibm是国际商业机器公司的注册商标。
50.在根据本公开的实施例的解决方案中,触发管理器320触发访问控制信息的修订。触发管理器320与访问控制管理器305交互。触发管理器320访问(在读取/写入模式下)触发策略存储库325(例如,由系统管理员通过触发管理器320的用户界面手动填充)。触发策略存储库325具有针对每个触发策略(由对应的唯一标识符标识)的条目;该条目指示触发策略和对应的得分。触发策略由产生逻辑值(真或假)的逻辑表达式限定;逻辑表达式包括一个或多个条件(每个条件根据一个或多个策略参数产生逻辑值),其可以与逻辑运算符(例如and、or、not等)组合。策略参数是与整个信息技术系统的条件或其有关部分(即,不在单个资源/用户的级别)有关的宏指示符;特别地,策略参数可以与资源(例如,新资源的数目、
特定位置中新资源的数目等)、用户(例如,新用户的数目、部门中新用户的数目、组织图中改变的数目等)和/或用户对资源的访问(例如,新角色/规则的数目、与角色/规则相对应的新用户的数目、角色/规则中新许可的数目、规则中新属性的数目等)有关。
51.触发策略的简单示例可以是:
52.tp1=(nu>thu)和(na>tha),
53.其中nu是自从触发策略的最后的评估以来添加到身份数据库的新用户的数目,thu是对应的阈值,na是自从触发策略的最后的评估以来添加到人力资源数据库的新账户的数目,tha是对应的阈值,并且tp1是触发策略的逻辑值。触发策略还可以由一个或多个评估条件来调节,在可以评估(所调节的)触发策略之前要满足该评估条件。每个评估条件基于调节任务的完成(诸如,由管理器验证信息、达到项目的一定进度等)。转而,评估条件可以依赖于逻辑表达式(限定触发策略的逻辑值的逻辑表达式的部分或者独立于触发策略的逻辑值的部分),诸如以if/then构造的形式。
54.具有简单评估条件的触发策略的其他示例可以是:
55.tp2=(nr>thr)|ev,
56.tp3=(nr>thr)|如果(tp3)然后ev,
57.tp4=(nr>thr)|如果(np>thp)然后ev,
58.其中nr是分配给特定部门的用户的角色的数目,thr是对应的阈值,np是分配给该部门的角色的许可的数目,thp是对应的阈值,ev是由管理器分配给该部门的角色的验证,以及tp2、tp3和tp2是触发策略的逻辑值。因此,在第一种情况下,执行任务ev,并且一旦完成任务ev,则评估逻辑表达式(nr>thr)以确定触发策略的逻辑值tp2,在第二种情况下,如果限定触发策略tp3的逻辑表达式(nr>thr)为真,则执行任务ev,并且一旦完成任务ev,则再次评估逻辑表达式(nr>thr)以确定触发策略的逻辑值tp3,并且在第三种情况下,如果逻辑表达式(np>thp)为真,则执行任务ev,并且一旦完成任务ev,则评估逻辑表达式(nr>thr)以确定触发策略的逻辑值tp4。触发策略的得分是数字(例如,从0到1),触发策略在触发访问控制信息的修订的有效性越高,其得分越高。此外,触发管理器320访问(在读取模式中)一个或多个策略参数源330。策略参数源330是提供策略参数的值的实体(诸如,存储器结构、服务、应用等);例如,策略参数源330包括许可数据库310、身份数据库315、信息技术系统的库存数据库、与信息技术系统相关联的组织的人力资源数据库等。
59.触发管理器320访问(以写入模式)历史信息数据库335。历史信息数据库335具有针对访问控制信息的每个修订的条目,该修订例如在最近1至5年中已经由上述解决方案触发。条目指示已经被评估为真的(有关)触发策略,意味着它们已经有助于触发访问控制信息的修订;此外,条目指示由其修订引起的访问控制信息的改变(例如,已经创建、更新或删除的角色/规则、针对每个所更新的角色/规则已经添加、更改或移除的许可、针对每个用户已经添加或移除的角色、针对每个角色/用户已经添加或移除的属性等)。排名引擎340利用反馈机制更新策略的得分。针对该目的,排名引擎340访问(以读取模式)历史数据库335,与访问控制管理器305交互并且访问(以读取/写入模式)触发策略数据库325。
60.触发管理器320访问(在写入模式中)存储触发索引(其的最后值)的触发索引表345。输出驱动器350例如通过与监视器驱动器、电子邮件客户端、访问控制管理器305等交互来输出触发索引的指示。输出驱动器350访问(在读取模式中)触发索引表345。
61.参考图4a至图4c,示出了描述与根据本公开的实施例的解决方案的实现有关的活动的流程的活动图。
62.特别地,活动图表示可以被用于利用方法400触发访问控制信息的修订的示例性过程。该方面,每个框可以对应于用于在控制服务器上实现所指定的逻辑功能的一个或多个可执行指令。
63.如图4a所示,当发生事件时,该过程从框402处的验证转到框404处的检索,开始针对需要修订访问控制信息的验证操作。例如,这可以在限定触发策略的策略参数的显著改变(诸如,超过10

20%的改变)之后发生,和/或周期性地(例如,每1至7天)发生。在框404处,触发管理器从对应的数据库中检索触发策略及其得分。然后进入用于处理触发策略的循环。该循环开始于框406处,其中触发管理器考虑(当前)触发策略(从任意顺序的第一个开始)。触发管理器在框408处检索在触发策略中所指示的策略参数;策略参数可能利用高速缓存机制从策略参数源检索。
64.活动流在框410处根据触发策略的类型来分支。如果触发策略是被调节的,则进入用于处理(所调节的)触发策略的评估条件的进一步的循环。循环开始于框412处,其中触发管理器考虑(当前)评估条件(从触发策略中所指示的对应顺序中的第一个开始)。活动流在框414处根据评估条件的类型来分支。如果评估条件取决于逻辑表达式,则触发管理器在框416处对其进行评估。活动流在框418根据由逻辑表达式产生的逻辑值来分支。如果逻辑表达式已经被评估为真,则该过程下降到框420;如果评估条件不依赖于任何逻辑表达式,则也从框414直接到达相同点。在该点处,引起调节任务的执行(例如,通过向人发送对应的通知、向软件应用发送对应的命令等)。然后,触发管理器在框422处进入空闲循环,等待调节任务的完成。一旦完成了调节任务(例如,如由对应消息通知的),并且在任何情况下在预定义的超时之后,该过程下降到框424中;如果逻辑表达式被评估为假,则从框418也可以直接到达相同的点。触发管理器现在验证是否已经考虑了最后的评估条件。如果否,则过程返回到框412,用于对触发策略的下一评估条件重复相同的操作。相反,一旦考虑了触发策略的所有评估条件,则通过下降到框426中离开了对应的循环;如果触发策略没有被调节,则也直接从框410到达同样的点。
65.触发管理器现在评估触发策略的逻辑表达式,以在框426处确定其逻辑值(当触发策略的任何调节任务由于任何原因(即,假逻辑表达式或超时期满)还没有被完成时,总是设置为假),将该逻辑值保存到工作变量中。触发管理器在框428处验证是否已经处理了最后的触发策略。如果不是,则该过程返回到框406,用于对下一触发策略重复相同的操作。相反,一旦所有触发策略都已经被处理,则通过下降到框430中退出对应的循环。
66.如图4b所示,在框430,触发管理器根据触发策略的逻辑值和得分(适当归一化)来确定触发索引。例如,通过应用以下公式来计算触发索引:
[0067][0068]
其中totp是触发策略的总数目,tp
i
是对应于第i个触发策略的逻辑值的数值(从对应的工作变量中检索),诸如1表示真,0表示假,r
i
是第i个触发策略的得分,以及ti是触发索引的值(如果在触发策略的评估期间递增地计算触发索引,则类似的考虑应用)。以该
方式,触发索引具有范围从0到1的值。特别地,只有被评估为真的触发策略有助于触发索引,这些触发策略的贡献与它们的得分成比例。
[0069]
触发管理器在框432处将触发索引与(触发)阈值(例如,0.5

0.7)进行比较。如果触发索引(可能严格地)高于触发阈值,则触发管理器在框434处输出指示以触发访问控制信息的修订;例如,触发管理器向系统管理员发送触发消息(诸如,经由电子邮件、sms等)。触发消息指示修订访问控制信息的需要;触发消息还可以包括关于这样做的原因的附加信息(诸如触发索引、具有已经被评估为真的最高得分的触发策略等)。同时,触发管理器在框436处将新条目添加到针对该访问控制信息的修订的历史数据库(例如,由对应的时间戳所标识);触发管理器然后将已经被评估为真(并且然后已经有助于触发访问控制信息的修订)的触发策略的指示添加到新条目。当触发索引(可能严格地)低于触发阈值时(并且然后不需要访问控制信息的任何修订),处理现在从框436或直接从框432返回到框402(等待针对触发验证过程的下一事件)。
[0070]
无论何时访问控制信息的修订已经被触发,在框438处,访问控制管理器在用于其完成的等待状态中。具体地,该修订涉及挖掘活动,其中根据需要访问资源的用户的典型模式来发现用户到资源的映射;例如,挖掘活动可以用自底向上的方法、自顶向下的方法或通过示例的方法来执行。然后根据挖掘活动的结果,即映射用户到资源(例如,在针对rbac模型的角色和被指派到针对rbac模型的角色的用户中,或者在针对abac模型的规则和针对abac模型的规则/用户的属性中),确定要应用于访问控制信息的一个或多个改变。然后,根据挖掘活动导致的变化来更新许可数据库和/或身份数据库(例如,通过添加角色/规则、更新被指派给角色的用户、更新规则、添加/删除属性、删除角色/规则等)。一旦触发管理器接收到访问控制信息的修订完成的通知(例如,经由系统管理员手动输入的命令),则该过程转到框440。响应于此,触发管理器从许可数据库和身份数据库(通过访问控制管理器)检索已经被应用于访问控制信息的更新的指示。触发管理器在框442将这些更新保存到历史数据库的对应条目中。然后,该过程返回到框438,等待访问控制信息的下一修订的完成。
[0071]
以完全独立的方式,一旦(排名)周期期满,该过程就从在框444的排名转到在框446处检索,用于执行触发策略的排名操作以更新它们的得分(例如,每7

14天)。响应于此,排名引擎从对应的数据库检索触发策略及其得分。然后进入用于处理触发策略的循环。循环开始于框448处,其中排名引擎考虑(当前)触发策略(从任意顺序的第一个开始)。在框450处,排名引擎(从历史数据库)检索已经由触发策略影响的受影响的控制项(如果有)的指示;受影响的控制项是在(有关)触发策略已经有助于触发其修订(即,其已经被评估为真)的访问控制信息的每个修订期间已经创建和/或更新的角色/规则。
[0072]
进入进一步的循环,用于处理触发策略的受影响的控制项。该循环开始于框452,其中排名引擎验证是否还有任何受影响的控制项仍待处理。如果是,则在框454处,排名引擎考虑(当前)仍要处理的受影响的控制项(从任意顺序的第一个开始)。在框456处,排名引擎(通过访问控制管理器从许可数据库)检索所影响的控制项的生存状态。活动流程根据该生存状态在框458处分支。如果受影响的控制项不再存在,则在框460处,排名引擎将受影响的控制项的生存期指示符设置为低值(例如,0)。相反,如果所影响的控制项仍然存在,则在框462处,排名引擎将所影响的控制项的生存期指示符设置为高值(例如,1)。在后一种情况下,在框464处,排名引擎还计算所影响的控制项的范围指示符。
[0073]
范围指示符取决于受影响的控制项的许可和/或取决于对应的用户,即被分配给(受影响的)角色的用户或其属性与(受影响的)规则的属性相匹配的用户(通过访问控制管理器,根据从角色数据库和身份数据库中所检索的信息)。例如,通过应用以下公式来计算范围指示符:
[0074][0075]
其中nu是与所影响角色相对应的用户数目,totu是用户的总数目,tota是信息技术系统的(所保护的)资源(诸如,软件应用)的总数目,np(a
i
)是与第i个软件应用有关的、所影响控制项的许可的数目,totp(a
i
)是与第i个软件应用有关的许可的总数目,并且s是得分指示符的值(然后范围从0到1)。通过该方式,与受影响的控制项和/或受影响的控制项的许可相对应的用户越高,受影响的控制项的范围指示符就越高。
[0076]
然后,该过程返回到框452以重复相同的操作。再次参考框452,一旦不再有受影响的控制项要处理(当触发策略没有影响控制项时总是为真,因为它没有有助于对访问控制信息的任何修订),则该过程下降到框466。
[0077]
在该点处,排名引擎根据其所影响的控制项的生存期指示符和范围指示符来计算触发策略的得分。例如,通过应用以下公式计算得分:
[0078][0079]
其中totr是受影响的控制项的总数目,l(r
i
)是第i个受影响的控制项的生存期指示符,s(r
i
)是第i个受影响的控制项的范围指示符,而w是触发策略的得分(然后范围从0到1)。以该方式,所影响的控制项的生存期指示符和/或范围指示符越高,触发策略的得分就越高。
[0080]
备选地,可以递增地更新得分。例如,对于每个所影响的控制项,当所影响的控制项不再存在时,得分递减,当所影响的控制项仍然存在时,得分递增,当范围指示符(可能严格)低于(范围)阈值时,得分递减,并且当范围指示符(可能严格)低于范围阈值时,得分递增;递减和递增是通过对应的增量值,例如,分别为1的1至5%的得分和1至5%的其补数。
[0081]
在两种情况下,在框468,排名引擎将触发策略的(新)得分保存到触发策略数据库的对应条目中(通过替换其先前值,手动初始化或初始化到默认值)。在框470处,排名引擎验证是否已经处理了最后的触发策略。如果不是,则过程返回到框448用于对下一触发策略重复相同的操作。相反,一旦所有触发策略都已经被处理,则通过返回到框444等待针对排名周期的下一期满,来退出对应的循环。
[0082]
结果,触发策略的得分自适应于它们在触发访问控制信息的修订时的有效性。实际上,针对其一个或多个有关触发策略已经有助于触发其执行的任何修订过程已经涉及访问控制信息的更新;特别地,一个或多个受影响的控制项可能已经被创建/更新。对于每个受影响的控制项,如果在执行排名过程时在稍后的(排名)时间它仍然存在,则这意味着它的有用性可能是高的;相反,如果受影响的控制项在稍后的排名时间不再存在,则这意味着
其有用性可能低的。更重要的是,如果受影响的控制项具有大的范围(例如,由大量的许可和/或大量的对应用户限定),则这意味着其有用性可能很高;相反,如果受影响的控制项具有稀少的范围(例如,由少量许可和/或少量对应用户限定),则这意味着其有用性可能低。当认为最受影响的对应具有高有用性时,修订也可能已经有用,并且然后有关触发策略(其已经有助于触发它)可能非常有效;在这种情况下,有关触发策略的得分被增加,使得它们在接下来的验证过程中将具有更高的权重。相反,当认为最受影响的对应具有低有用性时,修订也可能是无用的,并且然后相关触发策略(其已经有助于触发它)可能是效果不佳的;在这种情况下,有关触发策略的得分被降低,使得它们在接下来的验证过程中将具有较低的权重。
[0083]
当然,为了满足局部和特定的要求,本领域技术人员可以对本公开应用许多逻辑和/或物理修订和变更。更具体地,尽管本公开已经参考其一个或多个实施例以一定程度的特殊性进行了描述,但是应当理解,形式和细节上的各种省略、替换和改变以及其他实施例是可能的。特别地,本公开的不同实施例甚至可以在没有前述说明中所阐述的具体细节(诸如,数值)的情况下实践,以提供对其更透彻的理解;相反,为了不使不必要的细节混淆本说明,可能省略或简化了公知的特征。此外,明确地意图是,结合本公开的任何实施例所描述的具体元素和/或方法步骤可以作为一般设计选择的事项来并入任何其它实施例中。此外,在相同组和不同实施例、示例或备选中呈现的项目不被解释为实际上彼此等同(但是它们是分离的和自主的实体)。在任何情况下,每个数值应当被读取为根据适用容差来修改;特别地,术语“基本上”、“大约”、“近似”等应当被理解为“在10%内”。此外,数值的每个范围应当旨在明确地指定沿着该范围内的连续体(包括其端点)的任何可能的数值。序数或其它限定词仅用作标签以区分具有相同名称的元素,但其本身并不意味着任何优先级、位次或顺序。术语包括、包含、具有、含有、涉及等应当旨在具有开放的、非穷举的含义(即,不限于所列举的项),基于、取决于、根据其功能等的术语应当被认为是非排他性的关系(即,涉及可能的另外的变量),术语“一/一个”应当被认为是一个或多个项(除非另外明确指出),并且术语“用于
……
的部件”(或任何部件加功能的表述)应当被认为是适于或被配置用于实现相关功能的任何结构。
[0084]
例如,实施例提供了用于促进访问控制信息的维护的方法。然而,访问控制信息可以是用于证明任何类型的控制(例如,启用/拒绝每个活动、请求诸如输入第二级密码的进一步动作以启用一些活动等)的任何类型(例如,基于针对rbac模型的角色、针对abac模型的规则和属性、针对访问控制列表(acl)模型的表等)。
[0085]
在实施例中,访问控制信息用于控制一个或多个主体对信息技术系统的一个或多个资源的访问。然而,信息技术系统可以是任何类型(例如,基于局域、广域、全球、蜂窝或卫星网络,利用任何类型的有线和/或无线连接,具有独立架构等),具有任何数目和类型的资源(例如,相对于上述资源的部分、不同或附加资源),其访问必须由任何数目和类型的主体(例如,用户、程序、服务等)控制。
[0086]
在实施例中,该方法包括由控制计算系统执行的以下步骤。然而,控制计算系统可以是任何类型(见下文),并且可以在任何时间执行步骤(例如,周期性地、在手动请求时、其任何组合等响应于访问控制信息的任何显著改变)。
[0087]
在实施例中,该方法包括(由控制计算系统)检索一个或多个触发策略。然而,触发
策略可以任何数目和任何方式来检索(例如,经由读取/查询操作、本地/远程命令等从诸如数据库、文件等的任何存储器结构)。
[0088]
在实施例中,每个触发策略基于与资源、主体和/或主体对资源的访问有关的一个或多个策略参数。然而,触发策略可以以任何方式(例如,经由逻辑表达式、规则、语句等)基于任何数目和类型的策略参数(例如,相对于上述策略参数的部分、不同或附加策略参数,提供与资源、主体、主体对资源的访问、其任何组合等有关的任何宏信息)。
[0089]
在实施例中,该方法包括(由控制计算系统)检索策略参数。然而,可以以任何方式(例如,经由读取/查询操作、本地/远程命令等,从相对于上述策略参数源的部分、不同或附加策略参数源)检索策略参数。
[0090]
在实施例中,该方法包括(由控制计算系统)根据对应的策略参数来评估触发策略。然而,该操作可以以任何方式(例如,通过评估逻辑表达式、计算公式、应用规则、利用分析技术等)来执行以确定每个触发策略的任何值(例如,逻辑值、离散级别、数值等)。
[0091]
在实施例中,该方法包括(由控制计算系统)根据所述评估触发策略的结果来确定触发指示符。然而,触发指示符可以是任何类型(例如,逻辑值、可以采用任何数目的级别的离散值、数值等),并且它可以以任何方式来确定(例如,通过基于触发策略的值计算任何公式、应用任何阈值处理技术、利用认知技术等)。
[0092]
在实施例中,该方法包括(由控制计算系统)输出触发指示符的指示。然而,触发指示符可以任何方式(例如,所显示的、传输到(多个)任何个人、提供到任何软件应用程序等)和任何形式(例如,通过其值、解释性文本、警报或其任何组合等)输出。
[0093]
在实施例中,响应于触发指示符来触发访问控制信息的修订。然而,可以以任何方式(例如,简单地指示所需要的访问控制信息、基于其值提供对应的优先级等)根据触发指示符以任何方式(例如,向(多个)任何个人建议访问控制信息、自动启动访问控制信息等)触发访问控制信息的修订。
[0094]
在实施例中,访问控制信息的修订包括用于将主体映射到资源的挖掘活动。然而,挖掘活动可以是任何类型(例如,角色挖掘、规则挖掘等)并且以任何方式(例如,手动地、在自动工具的帮助下,诸如基于分析技术等)执行。
[0095]
在实施例中,访问控制信息的修订包括基于挖掘活动的结果的访问控制信息的可能更新。然而,可以以任何方式(例如,通过在任何存储器结构(诸如,一个或多个数据库或文件等)中添加/更新/删除角色、规则、属性、身份、访问控制列表等)更新访问控制信息,直到没有。
[0096]
在实施例中,该方法包括响应于触发指示符具有指示需要修订的正值来执行挖掘活动。然而,触发指示符的正值可以是任何类型(例如,指示简单地需要修订,修订是适当的、有用的或必要的等)。
[0097]
在实施例中,该方法包括根据挖掘活动的结果来更新访问控制信息。然而,可以根据挖掘活动的结果以任何方式(例如,手动地、自动地、接受所提议的更新等)来更新访问控制信息。
[0098]
在实施例中,访问控制信息包括一个或多个角色的指示。然而,角色可以是任何数目和任何类型(例如,执行人、管理者、开发者、会计师等)。
[0099]
在实施例中,每个角色具有一个或多个许可,以在信息技术系统中执行一个或多
个活动。然而,许可/活动可以是任何数目和任何类型(例如,相对于上述许可/活动的部分、不同或附加许可/活动)。
[0100]
在实施例中,访问控制信息包括分配到主体中的每个主体的角色中的一个或多个角色的指示。然而,可以为每个主体分配任何数目的角色。
[0101]
在实施例中,挖掘活动是角色挖掘。然而,角色挖掘可以是任何类型的(例如,自底向上、自顶向下、导致添加角色、更新角色的许可/分配、删除角色等)。
[0102]
在实施例中,访问控制信息包括一个或多个规则。然而,规则可以是任何数目和任何类型(例如,if/then构造、逻辑表达式等)。
[0103]
在实施例中,每个规则基于一个或多个属性。然而,属性可以是任何数目和任何类型(例如,与资源、主体、活动、上下文或其任何组合相关)。
[0104]
在实施例中,当满足规则时,每个规则指示与信息技术系统中的活动有关的至少一个许可。然而,规则可以以任何方式(例如,启用、拒绝等)指示与活动有关的任何数目和类型的许可(见上文)。
[0105]
在实施例中,挖掘活动是规则挖掘。然而,规则挖掘可以是任何类型(例如,自底向上、自顶向下、通过示例,导致规则的添加/更新/删除、属性的改变等)
[0106]
在实施例中,该方法包括(由控制计算系统)根据分配到触发策略的对应得分来确定触发指示符。然而,得分可以是任何类型(例如,离散/连续权重、标志、固定/可变等),并且它们可以被用以任何方式确定触发指示符(例如,通过加权触发策略的值、启用/禁用它们的考虑等);在任何情况下,在简化的实现中也可以省略该特征。
[0107]
在实施例中,该方法包括(由控制计算系统)存储指示修订的历史信息。然而,历史信息可以是任何类型(例如,应用于访问控制信息或仅其部分的所有改变,诸如相对于上述信息的部分、不同或附加信息片段)并且以任何方式存储(例如,在诸如数据库、文件等的任何存储器结构中)。
[0108]
在实施例中,历史信息指示与有助于触发修订的触发策略中的有关的一个或多个触发策略相关联的修订。然而,有关的触发策略可以是任何数目的并且以任何方式被限定(例如,所有被评估为真的触发策略、被评估为真并且具有高于阈值的得分的触发策略、被评估为真并且具有最高得分的预定义数目的触发策略等)。
[0109]
在实施例中,该方法包括(由控制计算系统)更新有关触发策略的得分。然而,可以根据(多个)任何信息源(例如,历史信息、访问控制信息、策略信息参数、其任何组合等)以任何方式(例如,通过重新计算、通过增加/减少增量值等)更新得分。
[0110]
在实施例中,在修订后的排名时间,根据历史信息和访问控制信息来更新有关触发策略的得分。然而,可以在任何排名时间(例如,以预定义的延迟、连续地根据预定义的时段等)根据历史信息(例如,仅参考最后的修订、根据其年龄等可能所加权的一个或多个修订)和访问控制信息(例如,根据其上下文、与历史信息的比较等)以任何方式更新得分。
[0111]
在实施例中,该方法包括(由控制计算系统)存储历史信息,该历史信息包括有助于限定由修订影响的访问控制信息的一个或多个受影响的控制项的指示。然而,受影响的控制项可以是任何数目和任何类型(例如,角色、规则、所有所创建/更新的控制项、仅所创建的控制项等)。
[0112]
在实施例中,该方法包括(由控制计算系统)根据在排名时间处受影响的控制项来
更新有关触发策略的得分。然而,可以以任何方式(例如,根据其生存期、范围、或其任何组合等)根据所影响的控制项来更新得分。
[0113]
在实施例中,该方法包括(由控制计算系统)检索在排名时间处受影响的控制项的对应的生存期指示符。然而,生存期指示符可以是任何类型(例如,简单地指示受影响的控制项是否仍然存在,测量从它们的创建或最后修订所经过的时间等)。
[0114]
在实施例中,该方法包括(由控制计算系统)根据所影响的控制项的生存期指示符来更新有关的触发策略的得分。然而,可以根据生存期指示符以任何方式更新得分(例如,以任何线性/非线性方式使用它们来计算得分,通过固定值或通过与其成比例的值来增加/减少得分等)。
[0115]
在实施例中,该方法包括在排名时间处检索(由控制计算系统)受影响的控制项的对应范围指示符。然而,范围指示符可以是任何类型的(例如,基于对应于受影响的控制项的用户、所影响的控制项的许可、或其任何组合等)。
[0116]
在实施例中,该方法包括(由控制计算系统)根据所影响的控制项的范围指示符来更新有关触发策略的得分。然而,可以根据范围指示符以任何方式更新得分(例如,以任何线性/非线性方式使用它们来计算得分,当它们低于/高于任何阈值时,将得分增加/减少固定值或与其成比例的值,等等)。
[0117]
在实施例中,每个受影响的控制项的范围指示符基于与受影响的控制项相对应的主体。然而,范围指示符可以以任何方式基于与受影响的控制项对应的主体(例如,基于分配到受影响角色的主体、其属性与受影响规则中的一个规则匹配的主体、它们的数目、通过根据主体的类型对主体加权而计算的它们的数目等)。
[0118]
在实施例中,受影响的控制项的每个控制项的范围指示符基于受影响的控制项的许可,以执行信息技术系统中的活动。然而,范围指示符可以以任何方式基于受影响的控制项的许可(例如,一般基于它们的数目、它们相对于每个资源的数目、可能根据资源类型来加权等)。
[0119]
在实施例中,触发策略中的、所调节的一个或多个触发策略包括一个或多个评估条件的指示。然而,所调节的触发策略可以是任何数目(低至零),每个触发策略包括任何数目和类型的评估条件(例如,请求任务的完成、事件的发生,或者取决于或者不取决于任何逻辑表达式等)。
[0120]
在实施例中,该方法包括调节(由控制计算系统)所调节的触发策略中的每个触发策略在对应的评估条件上的所述评估。然而,可以以任何方式调节对每个所调节的触发策略的评估(例如,等待调节任务的完成、等待事件的发生、有或没有对应的超时等等)。
[0121]
在实施例中,评估条件中的至少一个评估条件是对应的调节任务的完成。然而,调节任务可以是任何类型的(例如,相对于上述任务的部分、不同或附加的调节任务)。
[0122]
在实施例中,该方法包括(由控制计算系统)确定策略参数的显著改变。然而,显著改变可以以任何方式(例如,参考已经在绝对或相对方面改变的任何数目的策略参数)来限定并且以任何方式(例如,通过监视策略参数、通过接收对应的通知等)来确定。
[0123]
在实施例中,该方法包括响应于策略参数的显著改变而(由控制计算系统)执行验证过程(包括所述检索触发策略、检索策略参数、评估触发策略、确定触发指示符以及输出触发指示符的指示)。然而,可以响应于策略参数的显著改变以任何方式(例如,自动地,需
要手动确认等)执行验证过程。
[0124]
通常,如果相同的解决方案利用等同的方法来实现(通过使用具有更多步骤或其部分的相同功能的类似步骤,移除一些非必要步骤或添加另外的可选步骤),则类似的考虑适用;此外,可以以不同的顺序、同时或以交错的方式(至少部分地)执行这些步骤。
[0125]
实施例提供了计算机程序,其被配置为使控制计算系统执行上述方法。实施例提供了用于促进对一个或多个主体对信息技术系统的访问的控制的计算机程序产品。该计算机程序产品包括计算机可读存储介质,该计算机可读存储介质具有随其具化的程序指令。程序指令可由控制计算系统执行以使控制计算系统执行上述方法。然而,软件程序可以被实现为独立模块、实现为用于预先存在的软件程序(例如,访问控制管理器)的插件、或者甚至直接实现在后者中;很明显,还可以将相同的解决方案部署为经由网络(诸如,在互联网中)访问的服务。此外,程序可以在任何控制计算系统上执行(参见下文)。在任何情况下,根据本公开的实施例的解决方案有助于甚至利用硬件结构(例如,通过集成在半导体材料的一个或多个芯片中的电子电路)或者利用适当编程或以其他方式配置的软件和硬件的组合来实现其自身。
[0126]
实施例提供了控制计算系统,其包括被配置用于执行上述方法的步骤的部件。实施例提供了控制计算系统,其包括用于执行相同方法的步骤的每个步骤的电路(即,例如通过软件被适当配置的任何硬件)。然而,控制计算系统可以是任何类型(例如,一个或多个物理/虚拟机、其静态或动态组合,诸如在云计算环境中,与用以控制对信息技术系统的访问的计算环境相同或不同的系统等)。
[0127]
通常,如果控制计算系统具有不同的结构或包括等同的组件或其具有其它操作特性,则类似的考虑适用。在任何情况下,其每个组件可以被分成更多的元素,或者两个或更多个组件可以被一起组合成单个元素;此外,每个组件可以被复制以支持并行执行对
·
应的操作。此外,除非另外指明,不同组件之间的任何交互通常不需要连续,并且它可以是直接的或通过一个或多个中介间接的。
[0128]
本发明可以是任何可能的技术细节集成级别的系统、方法和/或计算机程序产品。计算机程序产品可以包括其上具有计算机可读程序指令的计算机可读存储介质(或多个介质),计算机可读程序指令用于使处理器执行本发明的各方面。
[0129]
计算机可读存储介质可以是能够保留和存储用于由指令执行设备使用的指令的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述的任何合适的组合。计算机可读存储介质的更具体示例的非穷举列表包括以下:便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式光盘只读存储器(cd

rom)、数字多功能盘(dvd)、记忆棒、软盘、诸如上面记录有指令的打孔卡或凹槽中的凸起结构的机械编码设备,以及上述的任何适当组合。如本文所使用的计算机可读存储介质不被解释为瞬态信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤线缆的光脉冲)、或通过导线传输的电信号。
[0130]
本文所描述的计算机可读程序指令可以从计算机可读存储介质下载到相应的计算/处理设备,或者经由网络(例如,互联网、局域网、广域网和/或无线网络)下载到外部计
算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或网络接口从网络接收计算机可读程序指令,并且转发计算机可读程序指令用于存储在相应计算/处理设备内的计算机可读存储介质中。
[0131]
用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(isa)指令、机器相关指令、微代码、固件指令、状态设置数据、针对集成电路的配置数据,或者以一种或多种编程语言(包括面向对象的编程语言,诸如smalltalk、c++等)和过程编程语言(诸如“c”编程语言或类似的编程语言)的任意组合编写的源代码或目标代码。计算机可读程序指令可以完全在用户的计算机上执行,部分在用户的计算机上执行,作为独立的软件包执行,部分在用户的计算机上并且部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(lan)或广域网(wan),或者可以连接到外部计算机(例如,使用互联网服务提供商通过互联网)。在一些实施例中,为了执行本发明的各方面,包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla)的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化。
[0132]
本文参考根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的各方面。将理解,流程图和/或框图的每个框以及流程图和/或框图中的框的组合可以由计算机可读程序指令来实现。
[0133]
这些计算机可读程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现流程图和/或框图的一个或多个框中所指定的功能/动作的部件。这些计算机可读程序指令还可以存储在计算机可读存储介质中,其可以引导计算机、可编程数据处理装置和/或其他设备以特定方式运行,使得其中存储具有指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图的一个或多个框中所指定的功能/动作的各方面的指令。
[0134]
计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图的一个或多个框中指定的功能/动作。
[0135]
附图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这方面,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现所指定的(多个)逻辑功能的一个或多个可执行指令。在一些备选实现案中,框中所注明的功能可以不按图中所注明的次序发生。例如,连续所示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意,框图和/或流程图图示的每个框以及框图和/或流程图图示中的框的组合可以由执行所指定的功能或动作或执行专用硬件和计算机指令的组合的专用的基于硬件的系统来实现。
[0136]
本文所描述的程序是基于在本发明的特定实施例中实现它们的应用来标识的。然而,应当理解,本文的任何特定程序术语仅是为了方便而使用,因此本发明不应当限于仅在
由这样的术语标识和/或暗示的任何特定应用中使用。
[0137]
本发明的实施例可以通过云计算基础设施提供给终端用户。云计算通常是指通过网络提供可缩放的计算资源作为服务。更正式地,云计算可以被限定为提供计算资源与其底层技术架构(例如,服务器、存储装置、网络)之间的抽象的计算能力,从而实现对可配置计算资源的共享池的方便的按需网络访问,可配置计算资源可以以最小的管理努力或服务提供商交互被快速供应和释放。因此,云计算允许用户访问“云”中的虚拟计算资源(例如,存储、数据、应用,甚至完整的虚拟化计算系统),而不考虑用于提供计算资源的底层物理系统(或那些系统的位置)。
[0138]
通常,云计算资源在按使用付费的基础上被提供给用户,其中用户仅针对实际使用的计算资源(例如,用户消耗的存储空间量或用户实例化的虚拟化系统的数量)被收费。用户可以在任何时间以及从互联网上的任何地方访问驻留在云中的任何资源。在本发明的上下文中,用户可以访问归一化的搜索引擎或云中可用的相关数据。例如,归一化搜索引擎可以在云中的计算系统上执行并且执行归一化搜索。在这种情况下,归一化的搜索引擎可以将信息语料库标准化并且将归一化的索引存储在云中的存储位置处。这样做允许用户从附接到与云连接的网络(例如,互联网)的任何计算系统访问该信息。
[0139]
应当理解,尽管本公开包括关于云计算的详细描述,但是本文中记载的教导的实现不限于云计算环境。相反,本发明的实施例能够结合现在已知或以后开发的任何其它类型的计算环境来实现。
[0140]
云计算是服务递送模型,用于实现对可配置的计算资源(例如,网络、网络带宽、服务器、处理、存储器、存储装置、应用、虚拟机和服务)的共享池的方便的按需网络访问,可配置的计算资源可以利用最小的管理努力或与服务的提供方的交互来快速供应和释放。该云模型可以包括至少五个特性、至少三个服务模型和至少四个部署模型。
[0141]
特性如下:
[0142]
按需自助:云消费者可以单方面地自动地根据需要供应计算能力(诸如,服务器时间和网络存储)而不需要与服务的提供方进行人工交互。
[0143]
广域网接入:能力在网络上可用,并且通过促进由异构的、薄的或厚的客户端平台(例如,移动电话、膝上型计算机和pda)使用的标准机制来访问。
[0144]
资源池化:提供方的计算资源被池化以使用多租户模型来服务多个消费者,其中不同的物理和虚拟资源根据需求被动态地分配和重新分配。存在位置无关的意义,因为消费者通常不控制或不知道所提供的资源的准确位置,但是能够在较高抽象级别(例如国家、州或数据中心)指定位置。
[0145]
快速弹性:在一些情况下,可以快速并且弹性地提供快速向外扩展的能力和快速向内扩展的能力。对于消费者,可用于提供的能力通常看起来是不受限制的,并且可以在任何时间以任何数量购买。
[0146]
所测量的服务:云系统通过利用在适合于服务类型(例如,存储、处理、带宽和活动用户账户)的某个抽象级别的计量能力来自动地控制和优化资源使用。可以监视、控制和报告资源使用,针对所利用服务的提供方和消费者两者提供透明度。
[0147]
服务模型如下:
[0148]
软件即服务(saas):提供到消费者的能力是使用在云基础设施上运行的提供方的
应用。应用程序可通过诸如web浏览器(例如,基于web的电子邮件)等瘦客户端接口从各种客户端设备访问。消费者不管理或控制包括网络、服务器、操作系统、存储、或甚至个体应用能力的底层云基础设施,可能的例外是有限的用户专用应用配置设置。
[0149]
平台即服务(paas):提供给消费者的能力是将消费者创建或获取的应用部署到云基础设施上,该消费者创建或获取的应用是使用由提供方所支持的编程语言和工具创建的。消费者不管理或控制包括网络、服务器、操作系统或存储的底层云基础设施,但是具有对所部署的应用和可能的应用托管环境配置的控制。
[0150]
基础设施即服务(iaas):提供给消费者的能力是提供处理、存储、网络和消费者能够部署和运行任意软件的其它基本计算资源,软件可以包括操作系统和应用。消费者不管理或控制底层云基础设施,但是具有对操作系统、存储、所部署的应用的控制,以及可能对选择的联网组件(例如,主机防火墙)的有限控制。
[0151]
部署模型如下:
[0152]
私有云:云基础设施仅针对组织操作。它可以由组织或第三方管理,并且可以存在于建筑物内或建筑物外。
[0153]
社区云:云基础设施由多个组织共享,并且支持具有共享关注(例如,任务、安全要求、策略和合规性考虑)的特定社区。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
[0154]
公有云:云基础设施可用于一般公众或大型工业群体,并且由销售云服务的组织拥有。
[0155]
混合云:云基础设施是两个或更多个云(私有、社区或公共)的组合,云保持唯一实体,但是通过使数据和应用能够移植的标准化或私有技术(例如,用于云之间的负载平衡的云突发)绑定在一起。
[0156]
云计算环境是面向服务的,其焦点在于无状态、低耦合、模块性和语义互操作性。在云计算的核心是包括互连节点的网络的基础设施。
[0157]
现在参考图5,描绘了说明性云计算环境500。如图所示,云计算环境500包括云消费者使用的本地计算设备可以与其通信的一个或多个云计算节点510,本地计算设备诸如例如个人数字助理(pda)或蜂窝电话540a、台式计算机540b、膝上型计算机540c和/或可以通信的汽车计算机系统540n。云计算节点510可以彼此通信。它们可以被物理地或虚拟地分组(未示出)在一个或多个网络中(诸如,如上文描述的私有云、社区云、公共云或混合云或其组合)。这允许云计算环境500提供基础设施、平台和/或软件作为服务,云消费者不需要针对其维护本地计算设备上的资源。应当理解,图5中所示出的计算设备540a

n的类型仅是说明性的,并且云计算节点510和云计算环境500可以通过任何类型的网络和/或网络可寻址连接(例如,使用web浏览器)与任何类型的计算化的设备通信。
[0158]
现在参考图6,示出了由云计算环境500(如图5所示)提供的一组功能抽象层集。应当预先理解,图6中所示出的组件、层和功能仅旨在说明,并且本发明的实施例不限于此。如所描绘的,提供了以下层和对应的功能:
[0159]
硬件和软件层660包括硬件和软件组件。硬件组件的示例包括:大型机661;基于risc(精简指令集计算机)架构的服务器662;服务器663;刀片服务器664;存储装置665;以及网络和联网组件666。在一些实施例中,软件组件包括网络应用服务器软件667和数据库
软件668。
[0160]
虚拟化层670提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器671;虚拟存储672,例如图1中所示的数据存储设备106;包括虚拟专用网络的虚拟网络673;虚拟应用和操作系统674;以及虚拟客户端675。
[0161]
在一个示例中,管理层680可以提供以下所描述的功能。资源供应681提供了对被用来在云计算环境中执行任务的计算资源和其他资源的动态采购。计量和定价682提供了在云计算环境中利用资源时的成本跟踪,以及用于消耗这些资源的计费或计价。在示例中,这些资源可以包括应用软件许可证。安全性为云消费者和任务提供身份验证,以及为数据和其他资源提供保护。用户门户683为消费者和系统管理员提供对云计算环境的访问。服务级别管理684提供云计算资源分配和管理,使得满足所需的服务级别。服务级别协议(sla)计划和履行685提供对云计算资源的预安排和采购,其中根据sla预期未来需求。
[0162]
工作负载层690提供了可以利用云计算环境的功能的示例。可以从该层提供的工作负载和功能的示例包括:映射和导航691;软件开发和生命周期管理692;虚拟教室教育递送693;数据分析处理694;事务处理695;以及控制访问696。控制访问696可以管理信息技术系统的访问控制。
[0163]
已经出于说明的目的给出了本发明的各种实施例的描述,但是其不旨在是穷尽的或限于所公开的实施例。在不背离所描述的实施例的范围的情况下,许多修改和变化对于本领域的普通技术人员将是明显的。选择本文所使用的术语以最好地解释实施例的原理、实际应用或对市场上存在的技术改进,或使本领域的其他普通技术人员能够理解本文所公开的实施例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1