在服务与应用之间的多级分布式访问控制的制作方法

文档序号:19351684发布日期:2019-12-06 21:28阅读:168来源:国知局
在服务与应用之间的多级分布式访问控制的制作方法



背景技术:

计算机系统当前被广泛使用。一些这样的计算机系统运行从云系统操作的应用。这样的应用的示例包括文档管理和共享系统、基于云的数据存储系统、诸如电子邮件(email)服务的服务、生成文字处理文档的文字处理应用、生成幻灯片演示文档的幻灯片演示应用、生成电子表格文档的电子表格应用以及多种其他应用。

这样的系统和应用常常在包括各种不同的服务和资源的云网络上运行。在这些系统和应用的操作期间,其常常访问位于网络上的不同的服务和资源。同样地,在系统或应用中开发新特征的开发者可能希望新特征能访问服务和资源,以确保新特征正常操作。

在服务和资源位于网络上的情况下,由于这些应用的性质,不受约束的访问会对整个系统造成安全风险。然而,过度约束的系统会导致整个系统的性能下降。

上文的讨论仅仅提供一般性的背景信息,而并不旨在用于辅助确定所要求保护的主题的范围。



技术实现要素:

一种计算系统控制组件之间的访问。令牌发布者至少部分地基于访问策略向请求组件发布访问令牌,所述请求组件正在请求对被请求的服务组件的访问。所述请求组件将所述令牌发送到被请求的服务组件,所述被请求的服务组件包括令牌认证模块,所述令牌认证模块验证所述访问令牌并且授权所述请求组件访问所述被请求的服务组件,并且接收对访问所述被请求的服务组件的授权。

提供本发明内容以简化的形式介绍了一些概念,这些概念将在下文的详细描述中进一步描述。本发明内容既不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于辅助确定所要求保护的主题的范围。所要求保护的主题并不限于解决背景技术中指出的任何或所有缺点的实现方式。

附图说明

图1示出了计算系统架构的一个示例的框图。

图2是示出了在计算系统架构中的令牌交互的一个示例的框图和数据流程图。

图3示出了令牌处理和允许访问被请求的服务组件的一个示例的流程图。

图4示出了服务访问策略记录的一个示例的框图。

图5是示出了部署在云计算环境中的在图1中所图示的架构框图。

图6-8示出了移动设备的示例。

图9示出了计算环境的一个示例,所述计算环境能够是先前图中所示的架构的一部分或者与其一起使用。

具体实施方式

图1是计算系统架构100的一个示例的框图。架构100包括内部计算系统102、外部计算系统104、用户应用域106以及身份提供器108。架构100的各组件通过网络110彼此通信。网络110能够是多种网络中的任意一种网络或者网络的组合,所述网络诸如是广域网、局域网、近场通信网络、蜂窝网络或者其他网络。在更详细地描述架构100的总体操作之前,将首先提供对架构100中的一些项目以及其操作的简短描述。

在一个示例中,内部计算系统102包括系统逻辑112、令牌发布服务(tis)逻辑114、处理器/服务器116、网络接口118、数据存储119以及其他项目120。因为本文的描述将描述由系统120在基板或平台上开发的服务126如何获得对系统102内部的其他服务124或资源126的访问,以及对在多种外部计算系统104中的任意外部计算系统上运行的外部服务和资源的访问。系统逻辑112本身包括服务集合124、资源126以及内核122(在其中存储核心系统和功能)。用户应用(app)域106包括被标记为105的一个或多个应用(0-n)。外部计算系统104能够包括一个或多个处理器或服务器133、被标记为139的服务(0-n)集合、被标记为141的资源(0-n)集合以及一个或多个数据存储143。

tis114例示性地向架构100中的内部计算系统102中的各个项目发布令牌,使得这些项目能够安全地彼此访问并且访问外部服务139和资源141。例如,在用户应用域106中的应用105以及服务124和资源126能够调用内核122,以及彼此调用,并且能够调用外部服务139和外部资源141以用于访问。在授权对服务124或资源126的访问之前,将令牌提供给请求服务或资源。所述请求服务或资源将令牌以及访问请求提供给被请求的组件(例如,被请求的服务或资源或内核)。所述被请求的组件接收并且认证所述令牌,并且如果所述令牌被成功认证,则授权访问。能够从tis114请求令牌。对于令牌以及由此对于访问,在用户应用域106中的第三方应用105也能够从身份提供器108接收身份。例如,身份提供器108能够是向每个用户应用提供独有身份的身份提供器服务。应用105能够例如调用获取令牌以访问其他服务或资源的服务124。

网络接口118例示性地管理所有网络访问。其可以使用多种不同的协议以多种方式中的任何一种来执行该操作。

图2是更详细地示出了内部计算系统102的一个示例的框图,其中箭头指示一些可能的通信或数据流。图2中的内部计算系统102类似于在图1中所示的内部计算系统,并且相似的项目被相似地编号。系统逻辑112本身包括服务124、资源126、内核122以及其他项目120。服务124能够包括任意数量的服务(0-n),所有这些都被标记为124。服务124能够是狭义的服务,例如函数。服务124能够是更广义的服务,例如程序或应用编程接口(api)。资源126能够包括任意数量的资源(1-n)126。资源126能够被狭窄地定义,例如单个变量。资源126也能够被更广泛地定义,例如数据表或数据表集、文档、图像、数据库等。内核122包含系统逻辑112的核心功能以及逻辑和/或(一个或多个)应用编程接口(api)。还能够管理一些输入/输出请求,并且将其转换为在处理器/服务器116和计算系统102的其他组件中的计算系统中央处理单元的数据处理指令。

(一个或多个)处理器/服务器116能够实施先前组件/逻辑的功能、逻辑、数据调用等。内部计算系统102使用网络接口118来连接到网络110以及其他系统。内部计算系统102并不限于如由其他项目120所指示的所示组件。其他组件的一些示例是显示器、输入组件、输出组件等。

内部计算系统102的组件和外部计算系统104的组件能够相互连接以彼此通信(直接地或间接地,诸如通过网络)。连接131图示了在各组件之间的可能连接的一些示例。连接131能够被用于在服务与内核122之间、在服务与资源126或外部服务135或资源141之间,从一个服务或资源向另一服务或资源进行服务或资源访问请求。连接131能够将令牌传输表示为请求的一部分。在一个示例中,能够通过诸如经由https或oauth2.0或者其他协议的一种或多种协议来进行令牌传输连接131。

如所示的,所述组件中的一些组件能够包括应用逻辑133、令牌客户端逻辑130和/或令牌认证逻辑132。将意识到,在一些示例中,系统102中的所有服务和资源都包括所有这些项目。在其他示例中,仅子集包括所有这些项目。在本文中设想到了这些和其他架构。

应用逻辑133提供服务124的功能或资源126的对象或者其他项目。令牌客户端逻辑130促进与tis逻辑114的通信和交互,诸如向tis逻辑114进行令牌请求以及从tis逻辑114接收令牌。令牌客户端逻辑130还能够包括用于高速缓存、超时/重入策略以及异常管理的逻辑。令牌客户端逻辑130还能够暴露能够直接从应用使用的api,所述应用例如是在用户应用域106(图1)上的应用105。当访问令牌被作为对另一服务的访问请求的一部分而被接收到时,能够由对应的服务使用令牌认证逻辑132来认证访问令牌。因此,逻辑132能够在传入请求处理管线中运行,并且检查服务调用者随请求传递的令牌。令牌认证逻辑132能够验证诸如令牌签名、目标受众或者其他访问策略的项目,并且其还能够提取身份信息以及用于创建身份对象的许可。然后,能够在服务的应用逻辑133中使用该身份对象来做出授权决策。

tis逻辑114本身能够包括访问策略(ap)逻辑134、令牌发布逻辑135、访问策略(或记录)136(其也能够被存储在别处)以及其他逻辑137。ap逻辑134本身能够包括过滤器逻辑202和ap应用逻辑204。其将示例性地存储针对各种服务的ap记录136,并且基于那些ap记录136来运行符合性检查。例如,服务124希望访问另一服务。作为响应,在ap逻辑134中的过滤器逻辑202访问针对请求服务的ap记录。其将过滤ap记录以识别要应用的记录。然后,在ap逻辑134中的ap应用逻辑204将检查针对与所识别的ap记录136的符合性的请求,并且如果符合,则令牌发布逻辑135将令牌发布给请求服务。在一个示例中,存在与能够向tis逻辑114进行请求的每个服务124相对应的ap记录(或ap记录文件)。ap记录136也能够对应于服务组。下文在图5中示出了针对服务的ap记录136的一个示例。出于安全目的,tis逻辑114能够以其自己的身份在专用过程中运行,并且其可以仅访问其所需的资源。tis逻辑114能够将证书用于令牌签名和安全通信。出于安全目的,能够由安全证书管理系统(未示出)来管理这些证书以及其私钥。在一个示例中,发布的令牌能够是javascript对象表示法(json)web令牌(jwt)。其也能够是其他令牌。

图3示出了例示架构100在实施基于令牌的访问约束中的操作的一个示例的流程图,所述基于令牌的访问约束基于由tis逻辑114发布的令牌来约束对内核122、各种服务124和135以及资源126的访问。首先,假设服务操作如由框302所指示地正在运行。服务操作能够是许多服务,包括如由框304所指示的服务124的内部服务、如由框306所指示的外部服务或者另一服务308。

在服务的操作期间,应用逻辑133能够确定需要被访问的另一服务124或资源126。这由框310指示。对另一服务/资源的需要可能出于各种原因。例如,可能是开发者正在开发由应用133在服务0中实施的特征,并且该特征是从资源126或另一服务124获得数据。这由框312指示。在另一示例中,特征在服务1中的生产环境中,并且该特征由在用户应用域106中的应用105来调用。这由框314指示。对另一服务或资源的访问也能够在多种其他情境中进行,并且这由框316指示。

为了访问受约束的服务,请求项目(出于本讨论的目的,将假设服务0正在请求对内核122的访问)将请求令牌。在框318中,请求服务0的令牌客户端逻辑130因此从tis逻辑114请求令牌以访问受约束的服务或资源(例如,内核122)。该请求能够包括:应用id320,其识别进行请求的应用;目标受众322,其识别谁将有权访问响应于所述访问请求而生成的数据;许可324;租户id326,其识别所述请求所源自的租户;请求服务的开发状态327(例如,测试、生产等);在公用密钥基础结构中所使用的签名328以及不同的或者其他的信息330。在一个示例中,能够在识别相关的访问策略记录136中考虑架构的结构拓扑。因此,所述请求能够包括指示符329,指示符329也指示该拓扑。例如,tis逻辑114能够与受约束的服务/资源位于同一服务器上。这有时被称为模型b拓扑。在另一示例中,tis逻辑114能够位于与受约束的服务/资源相同的数据中心中,但是位于不同的服务器上。这有时被称为模型c拓扑。在另一示例中,tis逻辑114能够被部署在云系统内的数据中心外部,这有时被称为模型d拓扑。在示例中,在tis逻辑114被部署在云系统中的情况下,在请求中会需要其他信息,例如,拥有证明请求服务持有适当的私钥的数据元素的证明。注意,能够存在若干不同的tis逻辑114位置,并且能够通过权衡性能和安全性因素或者其他因素来选择特定位置。例如,tis逻辑114的实例能够被部署在为对应服务提供工作负荷容量(capacity)的每个容量服务器上。每个服务能够访问跨多个服务器定位的tis逻辑114的多个实例,以防止任何中心点故障。同样地,跨多个服务器具有tis逻辑114的多个实例允许令牌发布跨一个数据中心或多个数据中心而扩展。数据中心也能够在逻辑上和物理上分区为不同的维度。在一个示例中,数据中心的分区维度中的一些分区维度能够是服务环/环境、服务林、租户和/或服务数据可用性组。能够在应用访问策略和发布令牌时考虑架构的拓扑。如果从一个服务环向另一服务环进行访问请求,则可以应用一种访问策略。然而,如果在访问环内进行访问请求,则可以应用不同的(或多或少约束性的)访问策略。在本文中设想到了所有这些以及其他场景。由请求服务提供的访问请求能够包括所有这些项目的指示符。

如由框331所指示的,一旦在tis逻辑114处接收到访问请求(针对令牌的请求),则tis逻辑114处理所述访问请求并且生成响应。这由框332指示。能够以多种方式来处理所述访问请求。例如,所述访问请求能够首先由ap逻辑134中的过滤器逻辑202来处理以识别将应用于所述请求的ap记录136。这由框334指示。ap逻辑134可以具有针对每个请求服务的一个或多个相关联的ap记录,其指示所述服务能够请求什么访问。基于多个不同的维度或过滤标准,待应用于所述请求的特定ap记录136可能有所不同。例如,过滤器逻辑202可以基于拓扑、部署结构(例如,开发状态)、信任域等来过滤ap记录集合。过滤器逻辑202因此过滤各种ap记录136,以基于过滤标准来识别待应用于所述请求的特定记录。然后,ap应用逻辑204相对于识别出的ap记录136来检查所述请求,以确定所述请求是否符合识别出的ap记录136。如果请求服务的请求不符合对应的ap记录(例如,如果访问请求正在请求对根据其ap记录无权访问的内核122的功能或者服务或资源进行访问),则针对访问的所述请求将被拒绝。

假设所述请求符合ap136,则令牌发布逻辑135将所述令牌发布给所述请求服务。tis逻辑114还能够利用令牌消费策略336来标记所发布的令牌。在被请求的服务/资源的令牌认证逻辑132处施行令牌消费策略336。这将在下文更详细地描述。如由框338所指示的,其他标记或处理也能够由tis逻辑114来完成。

所述请求服务一旦接收到令牌,就调用待访问的服务/资源(例如,被请求的服务/资源),并且将所述令牌与访问请求一起传递给被请求的服务。这由框340指示。

如由框348所指示的,令牌认证逻辑132(在被请求的服务/资源处)接收并验证传入的令牌。在另一示例中,能够通过一些其他逻辑352或者以其他方式354来验证所述令牌。不管在何处验证所述令牌,确定所述令牌是否有效。所述验证能够采取许多步骤。例如,能够在令牌验证时再次应用识别出的访问策略。这由框353指示。在令牌发布时和令牌验证时两者处应用单个访问策略允许系统决定是否应当执行对访问策略的早期绑定或稍后评估。例如,假设所述访问令牌是由不同的但是受信任的发布者所发布的。然后,尽管在令牌发布时访问令牌可能尚未经受访问策略,但是在令牌验证时仍经受访问策略。在这样的场景下,能够在发布和验证时使所述访问策略可供用于消费。例如,能够验证对于发布所述令牌的tis逻辑114存在有效签名(基于元数据)。在一些情况下,令牌认证逻辑132可能需要从tis逻辑114或请求服务请求额外信息以施行令牌消费策略336。令牌消费策略可以列出由服务消费所述令牌所需的内容。例如,在消费策略指示需要拥有证明来消费所述令牌的情况下,被访问的服务可能需要(并且因此请求)额外元数据或请求服务的私钥的拥有证明。这仅仅是一个示例。

在执行验证之后,将确定访问令牌(以及因此访问请求)是有效的还是无效的。这由框355指示。如果令牌被验证,则能够如由框356所指示的将被请求的访问提供给请求组件。在一个示例中,令牌授权对所述被请求的服务的最小特权访问(需要执行期望的操作)。如果令牌未被验证,则拒绝被请求的访问。这由框358指示。

图5示出了服务访问策略记录136的一个示例。服务访问策略记录136能够包括id402、公钥404、所有者406、版本408、使用策略410以及访问策略项目414。服务访问策略记录136还能够包括由其他412所指示的其他组件。id402识别该访问策略记录136被应用于的(一个或多个)服务。公钥404指定在对服务请求上的签名的验证期间所使用的公钥集合,以及指示每个密钥组在何处有效的指示符。所有者406识别谁创建了该策略和/或谁能够进行修改。版本408识别了访问策略的版本。使用策略410指示如何在被请求的服务处使用所述令牌。例如,使用策略410可以指示相对于令牌的发布位置或者关于令牌接受的其他上下文约束能够在哪里接受令牌,诸如要求令牌或秘钥的拥有证明等。

访问策略项目414能够包括访问类型416、受众418、许可420、范围过滤器421、位置422、租户识别符423、持续时间426、开发阶段427以及其他项目424。访问策略项目414是可扩展约束,其定义何时在发布令牌时遵循该特定访问策略,以及在该策略下授权访问(或者对访问的约束)。如果请求服务的请求不符合访问策略,则将不发布令牌。

访问类型416能够定义能够被允许的访问的类型,例如,能够执行的操作的类型,诸如读、写、读/写等。受众418能够定义谁能够获得访问,例如可允许请求服务的名称。许可420能够定义请求者能够进行的操作,例如管理许可。范围过滤器421能够基于数据控制分区或者对数据或服务的其他逻辑或物理分区来定义访问的范围。位置422定义了能够在何处授权令牌,例如,仅在同一服务器上或者仅在同一数据中心上。在一个示例中,基于被请求的服务/资源的位置以及请求的服务/资源的位置,将位置422分为7个信任域。例如,被请求的服务/资源可能是在同一服务器(模型b)上、在同一数据中心(模型c)中、在远程云(模型d)中的内核,也可能来自第一方、第二方、第三方等。在另一示例中,可以通过请求和被请求的服务/资源的位置的可信性和/或基于控制方的身份来安排更少或更多的信任域。租户id423能够被用于过滤能够为其发布访问令牌的租户以及请求者使用所述令牌访问的租户数据。持续时间426定义令牌的有效性的持续时间,例如x分钟。开发阶段427定义了请求服务必须处于哪个开发阶段才能被允许访问哪些资源或其他服务。例如,在开发早期阶段的服务可能比接近生产启动或者已经投入生产很长时间的服务受到更多的约束。这样的可能优点在于:防止早期开发服务访问并且可能由于错误而损坏系统,同时允许开发后期服务访问系统更多。早期能够通过调节访问策略来完成该操作,以允许服务受限的访问在早期来测试与系统的总体兼容性,并且在系统稳定后再进行更大的访问。在一个示例中,开发阶段427由发布日期来表示。在另一示例中,其由指示请求服务的开发阶段的阶段指示符来表示。这些不是能够使用的仅有的访问策略项目,并且存在能够由其他424指示的许多其他项目。

访问策略项目414的组合允许在高度粒度的基础上应用不同的访问策略。所述项目能够被扩展为包括额外的过滤标准,因此通过简单地添加额外的标准,就能够基于额外的标准来选择或过滤访问策略。此外,注意,在一个示例中,改变访问策略项目414之一的值能够改变其他访问策略项目414的值。例如,如果许可420增加,则可以减少许可有效的持续时间426或位置422。访问策略项目414能够具有不同的数据类型,并且在一个示例中,访问策略遵守应用隔离、授权最少需要的特权以及用户和时间受约束的访问授权的原则。

因此,能够看到,本说明书例示了如何通过在可扩展数据结构中包括可过滤的标准以高度粒度的方式应用访问策略,因此令牌发布者能够基于任意或全部那些标准来选择待应用的访问策略。这大大增强了系统的安全性,因为能够基于可适用的过滤标准针对特定场景对访问进行定制。类似地,在一个示例中,通过分布所述系统,以便在服务访问请求的每个容量机器(或服务器)上存在令牌发布者(tis逻辑114的实例)和令牌认证逻辑132的实例,没有中心点故障,因此系统更加健壮。同样地,由于逻辑114和132的实例随着容量而增加,因此能够非常快速地机载新服务。

将注意,以上讨论已经描述了各种不同的系统、组件和/或逻辑。将意识到,这样的系统、组件和/或逻辑能够包括执行与那些系统、组件和/或逻辑相关联的功能的硬件项目(诸如处理器和相关联的存储器或者其他处理组件,其中的一些在下文描述)。另外,如下文所描述的,系统、组件和/或逻辑能够包括被加载到存储器中并且随后由处理器或服务器或者其他计算组件运行的软件。系统、组件和/或逻辑还能够包括硬件、软件、固件等的不同组合,下文描述了其一些示例。这些仅仅是能够用于形成上文所描述的系统、组件和/或逻辑的不同结构的一些示例。也能够使用其他结构。

本讨论已经提到了处理器和服务器。在一个实施例中,处理器和服务器包括具有相关联的存储器和计时电路(未单独示出)的计算机处理器。它们是其所属的系统或设备的功能部分,并且由所述系统或设备由那些系统中的其他组件或项目激活并且促进所述其他组件或项目的功能。

同样地,已经讨论了许多用户界面显示。其能够采取多种不同的形式,并且能够在其上设置多种不同的用户可致动的输入机制。例如,用户可致动的输入机制能够是文本框、复选框、图标、链接、下拉菜单、搜索框等。其还能够以多种不同的方式来致动。例如,其能够使用点击设备(诸如跟踪球或鼠标)来致动。其能够使用硬件按钮、开关、致动杆或键盘、拇指开关或拇指垫等来致动。其还能够使用虚拟键盘或者其他虚拟致动器来致动。另外,在显示其的屏幕是触敏屏幕的情况下,其能够使用触摸手势来致动。同样地,在显示其的设备具有语音识别组件的情况下,其能够使用语音命令来致动。

还讨论了许多数据存储。注意,其中的每个都能够分成多个数据存储。全部能够是访问其的系统本地的、全部能够是远程的、或者一些能够是本地的而另一些是远程的。在本文中设想到了所有这些配置。

同样地,这些图示出了许多框,每个框具有功能。注意,能够使用更少的框,因此功能由更少的组件来执行。同样地,能够使用更多的框,其中将功能分布在更多组件之间。

图5是在图1中所示的架构100的框图,除了其元件被设置在云计算架构500中。云计算提供了计算、软件、数据访问和存储服务,其不需要最终用户了解递送服务的系统的物理位置或配置。在各种实施例中,云计算使用适当的协议在诸如互联网的广域网上递送服务。例如,云计算提供商通过广域网来递送应用,并且能够通过web浏览器或者任何其他计算组件对其进行访问。架构100的软件或组件以及对应的数据能够被存储在远程位置处的服务器上。在云计算环境中的计算资源能够在远程数据中心位置处进行整合,或者其能够被分散。云计算基础设施能够通过共享数据中心来递送服务,即使其对于用户而言其看上去是单个访问点。因此,能够使用云计算架构从远程位置处的服务提供商提供在本文中所描述的组件和功能。替代地,其能够从常规服务器提供,或者其能够直接地或者以其他方式被安装在客户端设备上。

该描述旨在包括公共云计算和私有云计算两者。(公共的和私有的两者)云计算提供了实质上无缝的资源池化,以及减少了管理和配置底层硬件基础设施的需求。

公共云由供应商来管理,并且通常使用相同的基础设施来支持多个消费者。同样地,与私有云相反,公共云能够使最终用户免于管理硬件。私有云可以由组织本身来管理,并且通常不与其他组织共享基础设施。组织仍在某种程度上维护硬件,诸如安装和维修等。

在图5所示的示例中,一些项目类似于在图1中所示的那些项目,并且其被类似地编号。图5具体示出了内部计算系统102、外部计算系统102和身份提供器108能够被定位在云902中(其能够是公共的、私有的、或者部分是公共的而其他部分是私有的组合)。因此,用户510使用用户设备504通过云502来访问系统102。

图5还描绘了云架构的另一示例。图5示出了,还设想到了,系统102的一些元件能够被设置在云902中,而其他元件则不是。举例来说,数据存储119、143能够被设置在云502的外部,并且通过云502来访问。在另一示例中,tis逻辑114能够在云502的外部。无论其位于何处,都能够通过网络(广域网或局域网)直接对其进行访问,其能够由服务托管在远程站点,或者能够通过云作为服务来提供,或者由驻留在云中的连接服务来访问。在本文中设想到了所有这些架构。

还将注意到,架构100或者其一部分能够被设置在各种不同的设备上。这些设备中的一些设备包括服务器、台式计算机、膝上型计算机、平板计算机或者其他移动设备,诸如掌上型计算机、手机、智能电话、多媒体播放器、个人数字助理等。

图6是能够用作用户或客户的手持设备16的手持式或移动计算设备的一个说明性示例的简化框图,其中能够部署本系统(或者其一部分)。图7-8是手持式或移动设备的示例。

图6提供了客户端设备16的组件的总体框图,客户端设备16能够运行架构100的组件或者与架构100进行交互,或者这两者。在设备16中,提供了通信链路13,其允许手持设备与其他计算设备进行通信,并且在一些实施例中,提供了用于自动地接收信息(诸如通过扫描)的信道。通信链路13的示例包括红外端口、串行/usb端口、诸如以太网端口的电缆网络端口、以及允许通过一种或多种通信协议进行通信的无线网络端口,所述通信协议包括通用分组无线服务(gprs)、lte、hspa、hspa+以及其他3g和4g无线协议、lxrtt、以及短消息服务(其是用于提供对网络的蜂窝访问的无线服务)以及wi-fi协议和蓝牙协议(其提供到网络的本地无线连接)。

在其他示例中,在被连接到sd卡接口15的可移除安全数字(sd)卡上接收应用或系统。sd卡接口15和通信链路13与处理器17(其也能够体现根据前图的处理器或服务器)沿着总线19进行通信,总线19还被连接到存储器21和输入/输出(i/o)组件23以及时钟25和定位系统27。

在一个实施例中,提供i/o组件23以便于输入和输出操作。针对设备16的各种实施例的i/o组件23能够包括:输入组件,诸如按钮、触摸传感器、多触摸传感器、光学或视频传感器、语音传感器、触摸屏、接近度传感器、麦克风、倾斜传感器和重力开关;以及输出组件,诸如显示设备、扬声器和/或打印机端口。也可以使用其他i/o组件23。

时钟25例示性地包括输出时间和日期的实时时钟组件。作为说明,其还能够为处理器17提供计时功能。

定位系统27例示性地包括输出设备16的当前地理位置的组件。这能够包括例如全球定位系统(gps)接收器、loran系统、航位推测系统、蜂窝三角测量系统或者其他定位系统。其还能够包括例如生成所需地图、导航路线以及其他地理功能的绘图软件或导航软件。

存储器21存储操作系统29、网络设置31、应用33、应用配置设置35、数据存储37、通信驱动器39以及通信配置设置41。存储器21能够包括所有类型的有形易失性和非易失性计算机可读存储设备。其还能够包括计算机存储介质(如下文所描述的)。存储器21存储计算机可读指令,所述计算机可读指令当由处理器17运行时使所述处理器根据所述指令执行计算机实施的步骤或功能。类似地,设备16能够具有客户端业务系统24,其能够运行各种应用或者体现系统102的一部分或全部。处理器17能够由其他组件来激活,以也促进其功能。

网络设置31的示例包括诸如代理信息、互联网连接信息和映射的事物。应用配置设置35包括针对特定企业或用户对应用进行定制的设置。通信配置设置41提供用于与其他计算机通信的参数,并且包括诸如gprs参数、sms参数、连接用户名和密码的项目。

应用33能够是先前已经被存储在设备16上的应用,或者是在使用期间安装的应用,但是其能够是操作系统29的一部分,或者也被托管在设备16外部。

图7示出了在其中设备16是平板计算机1100的一个示例。在图7中,示出了具有用户界面显示屏602的计算机600。屏幕602能够是触摸屏(因此,能够使用来自用户手指的触摸手势来与应用进行交互),或者是从笔或触笔接收输入的笔启用界面。其还能够使用屏幕上的虚拟键盘。当然,其例如也可以通过适当的附接机构(诸如无线链接或usb端口)附接到键盘或者其他用户输入设备。计算机1100也能够例示性地接收语音输入。

图8示出了该设备能够是智能电话71。智能电话71具有触敏显示器73,触敏显示器73显示图标或图块(tile)或者其他用户输入机制75。机制75能够由用户用于运行应用、进行呼叫、执行数据转移操作等。通常,智能电话71被构建在移动操作系统上,并且比功能电话提供更高级的计算能力和连接性。

注意,设备16的其他形式也是可能的。

图9是在其中能够(例如)部署架构100或其部分的计算环境的一个示例。参考图9,用于实施一些实施例的示例性系统包括计算机810形式的通用计算设备。计算机810的组件可以包括但不限于:处理单元820(其能够包括前图的处理器或服务器)、系统存储器830和系统总线821,系统总线821将包括系统存储器的各种系统组件耦合到处理单元820。系统总线821可以是若干类型的总线结构中的任意总线结构,包括存储器总线或存储器控制器、外围总线以及使用多种总线架构中的任意总线架构的本地总线。通过示例而非限制,这样的架构包括工业标准架构(isa)总线、微通道架构(mca)总线、增强型isa(eisa)总线、视频电子标准协会(vesa)本地总线和外围组件互连(pci)总线,也称为夹层总线。参照图1描述的存储器和程序可以部署在图9的对应部分中。

计算机810通常包括各种计算机可读介质。计算机可读介质可以是计算机810能够访问的任何可用介质,并且包括易失性和非易失性介质、可移除和不可移除介质。通过示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质不同于并且不包括经调制的数据信号或载波。其包括硬件存储介质,包括以用于存储诸如计算机可读指令、数据结构、程序模块或者其他数据的信息的任何方法或技术实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或者其他存储器技术、cd-rom、数字多功能磁盘(dvd)或者其他光盘存储设备、磁带盒、磁带、磁盘存储或者其他磁存储设备、或者能够用于存储所需信息并且能由计算机810访问的任何其他介质。通信介质通常在传输机制中体现计算机可读指令、数据结构、程序模块或者其他数据,并且包括信息传递介质。术语“经调制的数据信号”意指具有以对信号中的信息编码的方式来设置或改变其特性中的一个或多个特性的信号。通过示例而非限制,通信介质包括诸如有线网络或直接有线连接的有线介质,以及诸如声学、rf、红外和其他无线介质的无线介质。以上任何内容的组合也应当包括在计算机可读介质的范围内。

系统存储器830包括易失性和/或非易失性存储器形式的计算机存储介质,诸如只读存储器(rom)831和随机存取存储器(ram)832。基本输入/输出系统833(bios),包含诸如在启动期间帮助在计算机810内的元件之间传递信息的基本例程,通常被存储在rom831中。ram832通常包含数据和/或程序模块,这些数据和/或程序模块能立即被处理单元820访问和/或当前正在处理单元820上操作。通过示例而非限制,图9示出了操作系统834、应用程序835、其他程序模块836和程序数据837。

计算机810还可以包括其他可移除/不可移除的易失性/非易失性计算机存储介质。仅作为示例,图9图示了从不可移除的非易失性磁性介质读取或者向其写入的硬盘驱动器841,以及从可移除的非易失性光盘856(诸如cdrom或者其他光学介质)读取或者向其写入的光盘驱动器855。能够在示例性操作环境中使用的其他可移除/不可移除、易失性/非易失性计算机存储介质包括但不限于:磁带盒、闪存卡、数字多功能磁盘、数字录像带、固态ram、固态rom等。硬盘驱动器841通常通过诸如接口840的不可移除存储器接口连接到系统总线821,并且光盘驱动器855通常通过诸如接口850的可移除存储器接口连接到系统总线821。

替代地或另外地,在本文中所描述的功能能够至少部分地由一个或多个硬件逻辑组件来执行。例如但不限于,能够使用的例示类型的硬件逻辑组件包括现场可编程门阵列(fpga)、特定于程序的集成电路(asic)、特定于程序的标准产品(assp)、片上系统(soc)、复杂可编程逻辑器件(cpld)等。

上文所讨论的并且在图9中所图示的驱动器以及其相关联的计算机存储介质为计算机810提供计算机可读指令、数据结构、程序模块和其他数据的存储。在图9中,例如,硬盘驱动器841被图示为存储操作系统844、应用程序845、其他程序模块846和程序数据847。注意,这些组件能够与操作系统834、应用程序835、其他程序模块836和程序数据837相同或不同。本文为操作系统844、应用程序845、其他程序模块846和程序数据847提供了不同的数字,以说明其至少是不同的副本。

用户可以通过诸如键盘862、麦克风863和定点设备861(诸如鼠标、轨迹球或触摸板)等输入设备向计算机810中输入命令和信息。其他输入设备(未示出)可以包括操纵杆、游戏手柄、碟形卫星天线、扫描仪等。这些和其他输入设备常常通过耦合到系统总线的用户输入接口860连接到处理单元820,但是可以通过诸如并行端口、游戏端口或通用串行总线(usb)的其他接口和总线结构相连接。视觉显示器891或者其他类型的显示设备也经由诸如视频接口890的接口连接至系统总线821。除了监视器之外,计算机还可以包括其他外围输出设备,诸如扬声器897和打印机896,其可以通过输出外围接口895相连接。

计算机810使用到一个或多个远程计算机(诸如远程计算机880)的逻辑连接在联网环境中操作。远程计算机880可以是个人计算机、手持式设备、服务器、路由器、网络pc、对等设备或者其他公共网络节点,并且通常包括上文相对于计算机810所描述的许多或所有元件。图9中所描绘的逻辑连接包括局域网(lan)871和广域网(wan)873,但是也可以包括其他网络。这样的联网环境在办公室、企业范围的计算机网络、内联网和互联网中是常见的。

当在lan联网环境中使用时,计算机810通过网络接口或适配器870被连接到lan871。当在wan联网环境中使用时,计算机810通常包括调制解调器872或者用于通过wan873(诸如互联网)建立通信的其他手段。可以在内部或外部的调制解调器872可以经由用户输入接口860或者其他适当的机制被连接到系统总线821。在联网环境中,相对于计算机810或者其部分所描绘的程序模块可以被存储在远程存储器存储设备中。通过示例而非限制,图9图示了驻留在远程计算机880上的远程应用程序885。将意识到,所示出的网络连接是示例性的,并且可以使用在计算机之间建立通信链路的其他手段。

还应当注意,在本文中所描述的不同示例能够以不同的方式进行组合。亦即,一个或多个示例的部分能够与一个或多个其他示例的部分组合。本文设想到了所有这些。

示例1是一种计算系统,包括:

访问策略逻辑,其接收来自请求服务的、请求对被请求的组件的访问的访问请求,并且基于过滤标准集合来识别多个不同的访问策略中被应用于所述请求服务的所述访问请求的访问策略,所述访问策略逻辑基于识别出的访问策略和所述访问请求来确定所述访问请求是否符合所述识别出的访问策略;以及

令牌发布逻辑,其响应于所述访问策略逻辑确定所述访问请求符合所述识别出的访问策略而向所述请求服务发布访问令牌。

示例2是任意或所有先前示例的计算系统,还包括所述请求服务,并且其中,所述请求服务被配置为将所述访问请求连同所述访问令牌一起发送到所述被请求的组件以获得对所述被请求的组件的访问。

示例3是任意或所有先前示例的计算系统,还包括被请求的组件,所述被请求的组件包括:

应用逻辑,其被配置为服务所述访问请求。

示例4是任意或所有先前示例的计算系统,其中,所述被请求的组件还包括:

令牌认证逻辑,其被配置为接收所述访问令牌并且认证所述访问令牌,并且生成对所述应用逻辑的认证指示,所述应用逻辑被配置为基于接收到所述认证指示来允许对所述被请求的组件的访问。

示例5是任意或所有先前示例的计算系统,还包括:

多个容量服务器;以及

包括所述请求服务的多个服务,所述多个服务中的每个服务被部署在容量服务器上。

示例6是任意或所有先前示例的计算系统,其中,所述多个容量服务器中的每个容量服务器包括:

所述令牌认证逻辑的实例。

示例7是任意或所有先前示例的计算系统,其中,所述访问策略逻辑包括:

策略过滤逻辑,其基于过滤标准集合通过过滤所述访问策略中的项目来识别要应用于所述访问请求的所述访问策略。

示例8是任意或所有先前示例的计算系统,其中,所述访问策略逻辑包括:

策略应用逻辑,其将所述识别出的访问策略应用于所述访问请求以确定所述访问请求中对所述被请求的组件的访问是否与由所述识别出的访问策略所允许的访问一致。

示例9是任意或所有先前示例的计算系统,其中,所述请求服务是在被提供给所述访问策略逻辑的所述访问请求中识别出的多个开发阶段中的一个开发阶段处部署的,所述策略过滤逻辑被配置为基于所述多个开发阶段中的一个开发阶段来过滤所述多个访问策略以识别所述访问策略。

示例10是任意或所有先前示例的计算系统,其中,所述请求服务是在被提供给所述访问策略逻辑的所述访问请求中识别出的多个不同的拓扑结构中的一个拓扑结构中部署的,所述策略过滤逻辑被配置为基于所述多个不同的拓扑结构中的所述一个拓扑结构来过滤所述多个访问策略以识别所述访问策略。

示例11是任意或所有先前示例的计算系统,其中,所述请求服务是在被提供给所述访问策略逻辑的所述访问请求中识别出的多个不同的信任域中的一个信任域处部署的,所述策略过滤逻辑被配置为基于所述多个不同的信任域中的一个信任域来过滤所述多个访问策略以识别所述访问策略。

示例12是一种计算机实施的方法,包括:

接收来自请求服务的、请求对被请求的组件的访问的访问请求;

基于过滤标准集合来识别多个不同的访问策略中被应用于所述请求服务的访问请求的访问策略;

基于识别出的访问策略和所述访问请求来确定所述访问请求是否符合所述识别出的访问策略;以及

响应于确定所述访问请求符合所述识别出的访问策略而向所述请求服务发布访问令牌。

示例13是任意或所有先前示例的计算机实施的方法,还包括:

将所述访问请求连同所述访问令牌一起从所述请求服务发送到所述被请求的组件以获得对所述被请求的组件的访问。

示例14是任意或所有先前示例的计算机实施的方法,还包括:

在被请求的组件处接收所述访问令牌;

认证所述访问令牌;

生成认证标识;以及

基于所述认证标识来提供对被请求的组件的访问。

示例15是任意或所有先前示例的计算机实施的方法,其中,识别访问策略包括:

基于过滤标准集合来过滤所述访问策略中的项目。

示例16是任意或所有先前示例的计算机实施的方法,其中,确定访问请求是否符合访问策略包括:

将所述识别出的访问策略应用于所述访问请求以确定所述访问请求中对所述被请求的组件的访问是否与由所述识别出的访问策略所允许的访问一致。

示例17是任意或所有先前示例的计算机实施的方法,其中,所述请求服务是在所述访问请求中识别出的多个开发阶段中的一个开发阶段处部署的,并且其中,过滤所述访问策略中的项目包括:

基于所述多个开发阶段中的一个开发阶段来过滤所述多个访问策略以识别所述访问策略。

示例18是任意或所有先前示例的计算机实施的方法,其中,所述请求服务是在所述访问请求中识别出的多个不同的拓扑结构中的一个拓扑结构中部署的,并且其中,过滤所述访问策略中的项目包括:

基于所述多个不同的拓扑结构中的所述一个拓扑结构来过滤所述多个访问策略以识别所述访问策略。

示例19是任意或所有先前示例的计算机实施的方法,其中,所述请求服务是在所述访问请求中识别出的多个不同的信任域中的一个信任域处部署的,并且其中,过滤所述访问策略中的项目包括:

基于所述多个不同的信任域中的一个信任域来过滤所述多个访问策略以识别所述访问策略。

示例20是一种计算系统,包括:

被请求的组件;

请求服务,其生成访问请求以请求对所述被请求的组件的访问;

访问策略逻辑,其接收来自所述请求服务的访问请求,并且基于过滤标准集合来识别多个不同的访问策略中被应用于所述请求服务的访问请求的访问策略,所述访问策略逻辑基于识别出的访问策略和所述访问请求来确定所述访问请求是否符合所述识别出的访问策略;以及

令牌发布逻辑,其响应于所述访问策略逻辑确定所述访问请求符合所述识别出的访问策略而向所述请求服务发布访问令牌,所述请求服务被配置为将所述访问请求连同所述访问令牌一起发送到所述被请求的组件以获得对所述被请求的组件的访问。

尽管已经用特定于结构特征和/或方法动作的语言描述了主题,但是应当理解,所附权利要求中定义的主题不必限于上述特定特征或动作。相反,上述特定特征和动作被公开为实施权利要求的示例性形式。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1