CN101572603B - 分布式环境中的组成服务的统一访问控制系统及方法 - Google Patents
分布式环境中的组成服务的统一访问控制系统及方法 Download PDFInfo
- Publication number
- CN101572603B CN101572603B CN2008100959709A CN200810095970A CN101572603B CN 101572603 B CN101572603 B CN 101572603B CN 2008100959709 A CN2008100959709 A CN 2008100959709A CN 200810095970 A CN200810095970 A CN 200810095970A CN 101572603 B CN101572603 B CN 101572603B
- Authority
- CN
- China
- Prior art keywords
- role
- service
- user
- token
- composition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
提供对分布式环境中的多个组成服务进行统一访问控制的系统和方法。所述方法包括:获取用户在第一组成服务中的角色;响应于第一组成服务对第二组成服务的调用请求,根据用户在第一组成服务中的角色和预先定义的角色-角色映射关系确定所述用户在第二组成服务中的角色,所述角色-角色映射关系描述多个组成服务各自包含的角色之间的映射关系;和将所确定的第二组成服务中的角色发送给该第二组成服务。根据本发明的统一访问控制系统和方法提供了轻量级和独立的服务安全联邦解决方案,并且具有良好的易管理性、可伸缩性和安全性。
Description
技术领域
本发明涉及分布式环境中的多个组成服务的安全联邦访问(securityfederation),具体地,涉及采用集中和分布相结合的方式对分布式环境中的多个组成服务进行统一访问控制的系统及其方法。
背景技术
随着SOA和Web服务的迅猛发展,越来越多的应用程序由不同组织和企业拥有的分布的Web服务组成。容易理解,用户在不同的服务中拥有的权限往往是不同的。在运行应用程序时,当用户请求访问某一服务的一个或多个功能时,除非用户具有允许访问所述功能的角色,否则不允许用户进行访问。因此,对于由不同组织和企业拥有的分布的Web服务组成的应用程序,当用户访问某一组成服务以调用其中的功能、并且所述功能在执行过程中需要从其它的组成服务请求信息来完成完整服务时,就需要相对于每个组成服务对用户重新进行安全验证。举例来说,用户需要访问网络组成服务A以调用其中的功能,并在该服务A通过了安全验证。由于服务A中的所述功能在运行时需要调用另一个组成服务B中的功能操作以完成完整服务,并且服务B由另一个企业所拥有并具有其自己的安全验证信息,因而服务B要求再次对该用户进行安全验证。这种重复的验证对于应用程序来说是费时和影响效率的;而对于用户来说,由于必须再次输入其用户名、密码和角色等安全信息,显然是非常不便和烦琐的。
针对这一问题,提出了所谓的网络服务安全联邦访问,以便对多个组成服务提供统一的安全管理。通过网络服务安全联邦,服务A在调用服务B时能够将安全认证信息带给服务B,从而服务B能够直接对用户进行验证,而不需要用户再次输入安全认证信息。因此,服务A调用服务B对于用户来说是透明的。
安全联邦访问的验证可以分为三个层次,即身份认证(identification)、权限验证(authentication)和授权验证(authorization)。身份认证通过用户标识符(ID)和登录密码来验证要求对服务进行访问的用户确实是其声称的用户;权限验证决定通过身份认证的用户在服务中具有什么角色;授权验证决定具有某一角色的用户对于执行请求的功能所涉及的资源具有什么样的操作权限(例如,只读、编辑等)。
为了实现所述的网络服务安全联邦访问,一种传统的方法是采用如图1所示的集中式管理架构。在该解决方案中,利用统一访问控制系统为多个组成服务提供身份认证、权限验证和授权验证。如图1所示,统一访问控制系统的管理员创建访问控制列表ACL。在该表中,对于各组成服务的每个用户记录其在所有组成服务中的角色、所述角色能够执行哪些操作、以及操作将涉及哪些资源。这样,当用户意欲访问某一服务以请求该服务中的一个或多个功能时,系统根据访问控制列表匹配该用户的角色,进而确定该用户是否有权执行所请求的功能。例如,如图1所示,在用户Ester访问服务A以请求对账户进行编辑时,系统根据ACL确定其在服务A中的角色是管理员,并且可以进行所请求的编辑操作。服务A中的账户编辑操作在执行过程中需要调用服务B中的币种创建操作,此时,系统将会自动从所述ACL中获取用户Ester在服务B中的角色为VIP,并判断出该用户有权进行所调用的创建操作。随后,服务B允许用户Ester进行操作,并返回操作结果给服务A。
然而在上述解决方案中,由于系统管理员需要在ACL中记录每个用户所拥有的角色、角色能够执行的操作、以及操作涉及的资源,因此当用户数量很多时,其工作量相应地也会很大。而且,当系统中加入了新的组成服务、角色信息发生了改变或者安全策略发生改变时,管理员都必须手动地对ACL进行修改。因此,系统管理员的负担是很大的,并且这一方案的扩展性也较差。
另一种实现网络服务安全联邦访问的传统方法是将安全特征,例如角色,固化在代码,其意味着安全必须通过提供适当的声明直接以代码解决。这一方法在访问逻辑发生改变时需要对代码进行改变,这显示是更加不便的。
因此,需要一种统一的安全访问控制系统和方法,其能够提供灵活、动态和轻量级的安全解决方案。
发明内容
本发明对于分布式环境中的一系列组成服务提供了统一的安全访问控制。
根据本发明的一个方面,提供一种对分布式环境中的多个组成服务进行统一访问控制的方法,包括:获取用户在第一组成服务中的角色;响应于第一组成服务对第二组成服务的调用请求,根据用户在第一组成服务中的角色和预先定义的角色-角色映射关系确定所述用户在第二组成服务中的角色,所述角色-角色映射关系描述多个组成服务各自包含的角色之间的映射关系;将所确定的第二组成服务中的角色发送给该第二组成服务。
根据本发明的另一个方面,提供一种对分布式环境中的多个组成服务进行统一访问控制的系统,包括:角色获取组件,获取用户在第一组成服务中的角色;角色确定组件,响应于第一组成服务对第二组成服务的调用请求,根据用户在第一组成服务中的角色和预先定义的角色-角色映射关系确定所述用户在第二组成服务中的角色,所述角色-角色映射关系描述多个组成服务各自包含的角色之间的映射关系;角色发送组件,将所确定的第二组成服务中的角色发送给该第二组成服务。
建立角色-角色映射关系以描述多个组成服务各自包含的角色之间的映射关系是本发明的一个关键所在。通过应用角色-角色映射关系,每次应用程序改变安全策略时,这一改变都将自动地应用到应用程序的所有组成服务,从而具有良好的易管理性。具体表现在,用户只需要插入角色映射关系记录,而不用插入大量的用户记录和用户角色信息,而且如果源服务中的角色发生改变,则在目标服务中将会自动进行处理。另外,本发明的角色-角色映射关系提供了更多表达能力。通过为每个映射添加例如约束和优先权等属性,能够获得更多的授权能力。另外,由于在本发明中集中地进行身份认证和权限验证,因此所有安全信息可以在中央控制点被集中,从而防止任何无意的改变和错误,增强了安全性。另外,因为能够通过委托的服务管理员来管理安全策略,因而具有较好的可伸缩性。最后,根据本发明的统一访问控制系统和方法提供了轻量级和独立的服务安全联邦解决方案,安全管理员不需要与开发者沟通并修改代码,而是可以简单地修改规则映射策略。
附图说明
结合附图,从下面对实施例的描述中,本发明的这些和/或其他方面、特征和优点将变得清楚和更加容易理解,其中:
图1是传统方法中实现网络服务安全联邦访问的系统架构图。
图2示出了按照本发明实施例的、采用集中和分布相结合的方式实现网络服务安全联邦访问的架构图。
图3描述了用户在源服务中的角色与用户在目标服务中的角色之间的映射关系。
图4示出了根据本发明实施例的角色-角色映射列表。
图5示出了根据本发明优选实施例的、对多个组成服务进行统一访问控制的系统的结构框图。
图6描述了根据本发明优选实施例的、对多个组成服务进行统一访问控制的方法的流程图。
图7是更加详细地描述图6所示方法中的步骤的流程图。
图8示出了根据本发明实施例的统一访问控制系统的结构框图。
图9示出了根据本发明实施例的统一访问控制方法的流程图。
具体实施方式
现在将参考本发明的示例性实施例进行详细的描述,在附图中图解说明了所述实施例的示例,其中相同的参考数字始终指示相同的部件。但是,本发明可以以许多不同的形式来具体化,并且不应当被解释为限定于此处所阐述的实施例。下面通过参考附图来描述示例性实施例,以解释本发明。
本发明的思想是:采用集中和分布相结合的方式实现网络服务安全联邦访问;并且采用角色-角色映射列表来替代现有技术中的访问控制列表ACL,以减少系统管理员的工作负担并使得系统具有良好的可扩展性。
图2示出了按照本发明实施例的、采用集中和分布相结合的方式实现网络服务安全联邦访问的结构图考虑到安全联邦访问验证中的第三个层次——授权验证往往与具体服务更加密切相关,因此如图2所示,在本发明的实施例中,统一访问控制系统为各个组成服务提供统一的身份验证和权限验证,而对于授权验证则在各个组成服务A-C中进行。这一架构使得安全验证过程更加清晰,并具有较高的整体效率。另一方面,如图2所示,在本发明的实施例中,统一访问控制系统中采用角色-角色映射列表来替代现有技术中的访问控制列表ACL。从而与现有技术相比,减少了系统管理员的工作负担并使得系统具有良好的可扩展性。
需要说明的是,图2中所示的是一种优选的示例性架构,而本发明也可以采用其它架构来实现。例如,尽管在上述内容中将身份验证描述为由统一访问控制系统集中进行,但是根据应用程序和用户的具体需要,其完全可以在各个组成服务A-C中分别进行,并将验证结果通知统一访问控制系统。下面首先结合图3和图4对角色-角色映射列表进行描述。
如图3所示,角色-角色映射列表描述了用户在源服务中的角色与用户在目标服务中的角色之间的映射关系。对于某一用户来说,如果其具有源服务中的一个角色,那么他在目标服务中就相应地具有所映射的角色。
图4示出了根据本发明实施例的角色-角色映射列表的示例。如图4的表格所示,根据表格中的第一条记录,如果用户在源服务DMS中具有普通用户的角色,那么他相应地在目标服务DCM中具有普通用户的角色;类似地,根据表格中的第二条记录,如果用户在源服务DMS中具有程序编写者的角色,那么他相应地在目标服务DCM中具有出纳的角色。同样,第三和第四条记录也描述了类似的映射关系,此处不再赘述。此外,可以看到,图4的表格中还具有约束和优先级字段,其为角色之间的映射关系提供了更进一步的描述。例如,根据第二条和第四条记录可知,当用户在源服务DMS中具有程序编写者的角色时,其在目标服务DCM中既具有出纳的角色也具有普通用户的角色。为此可以根据约束和优先级来判断应将DMS.程序编写者映射到哪个角色。具体来说,由于第四条记录具有较高的优先级2,因此当满足限制条件“星期一”时,优先将DMS中的程序编写者映射到DCM中的普通用户;当不满足限制条件时,根据较低优先级1,DMS中的程序编写者将被映射到DCM中的出纳。约束和优先级字段并非是角色-角色映射列表必须的,其仅仅是用来对角色映射提供更多的描述;另一方面,对于角色映射的描述不限于约束和优先级,还可以根据应用程序的具体需要从其它方面对映射关系进行描述。
图8示出了根据本发明实施例的、应用上述角色-角色映射关系的统一访问控制系统的结构框图。如图8所示,该统一访问控制系统包含有角色获取组件801,用于获取用户在组成服务A中的角色;角色确定组件802,其响应于组成服务A在执行过程中对组成服务B的调用请求,根据预先定义的角色-角色映射关系确定所述用户在组成服务B中的角色,所述角色-角色映射关系描述多个组成服务各自包含的角色之间的映射关系;和角色发送组件803,用于将所确定的组成服务B中的角色发送给该组成服务B。
以上已经对根据本发明实施例的统一访问控制系统进行了描述,在不背离本发明的精神和实质的前提下,本领域的技术人员可以对其做出各种修改和变型。例如,为了获得更好的信息安全性,本系统可以进一步包括令牌管理组件,用于生成和管理令牌,以将令牌作为验证和授权的凭证。图5示出了所述统一访问控制系统的一种示例性的优选实现方式。下文中将结合图5对该优选实施方式进行详细的描述。
如图5所示,根据本发明的统一访问控制系统可以进一步包括:服务注册组件501、角色管理组件502、安全验证组件503、令牌管理组件504和映射列表管理组件505。
服务注册组件501对利用本系统作为其安全解决方案的各个组成服务进行注册,从而为注册的服务提供统一的安全访问控制。在一种示例实现中,服务注册组件记录进行注册的服务以及服务的对应的管理员。
角色管理组件502管理服务角色,并为用户分配角色或取消已经为用户分配的角色。每个已注册服务的管理员通过角色管理组件来定义在其服务中使用的所有角色,并将例如系统管理员、VIP等具有较高权限的特殊角色分配给相应的用户。角色管理组件502随后根据注册服务管理员的设定建立用户-角色分配列表以记录特殊角色和用户之间的对应关系。对于不具有特殊角色的用户,当其首次请求访问注册的组成服务时,角色管理组件502自动为该用户分配具有较低权限的普通用户的角色,并记录在用户-角色分配列表中。虽然此处将角色管理组件502描述为包含在统一访问控制系统中,然而这仅仅是一种示例性结构。事实上,该组件也可以包含在各个注册的组成服务中,并从所述组成服务向统一访问控制系统提供所需的用户和角色信息。
安全验证组件503用于对用户在所请求的组成服务中的身份和角色进行验证。当例如服务A接收到用户的访问请求时,其将该用户在登录时输入的用户ID、登录密码以及角色等安全信息传送到安全验证组件503。安全验证组件503基于在数据库中预先存储的用户身份信息和所创建的用户-角色分配列表对用户进行验证。如果所接收到的用户ID、登录密码和角色与预先存储的用户身份信息以及用户-角色分配列表中的记录一致,则认为该用户通过了身份验证和权限验证。此处将安全验证组件503描述为包含在统一访问控制系统中,但是容易想到,该安全验证组件503显然可以包括在各个组成服务中,并从这些组成服务向统一访问控制系统提供验证结果(即,在各个组成服务中执行身份验证)。
映射列表管理组件505用于创建并管理记录角色-角色映射关系的角色-角色映射列表。所述角色-角色映射关系可以由各个组成服务的管理员预先设定。另外,虽然此处描述为通过映射列表管理组件505创建的列表来记录映射关系,但是容易想到,映射关系也可以通过树形结构或文本等其它方式进行记录。
如前所述,服务A中的功能操作在执行时需要调用另一个组成服务B中的操作。响应于这一调用请求,角色确定组件802根据角色获取组件801获取的用户在服务A中的角色,查询角色-角色映射列表,以确定该角色在服务B中的相应角色。角色发送组件803将所确定的、在服务B中的角色通知服务B。服务B通过查询其维护的访问控制列表,判定该角色是否可以进行服务A调用的操作,并且当判定结果为“是”时,允许服务A调用所请求的操作。
此外,在本优选实施例中,为了保证信息传递的安全性,采用令牌作为验证和授权的凭证。当用户通过了身份验证和权限验证时,令牌管理组件504为该用户生成包含有用户在所请求的组成服务(例如服务A)中的角色信息的令牌,并将这一令牌发送给服务A,同时在系统中保存令牌的副本。服务A根据接收到的令牌中包含的角色信息确定用户是否可以进行所请求的功能操作。根据本发明的一个示例,令牌可以包含有令牌ID、用户ID、登录密码、以及用户在所请求的组成服务中的角色信息。当服务A中的功能操作在执行过程中调用另一个组成服务B中的操作时,服务A将调用请求和接收到的令牌ID一起发送给服务B;而服务B则将令牌ID传送给令牌管理组件504。令牌管理组件504在接收到令牌ID之后,从保存的令牌副本中找到和令牌ID相匹配的令牌,从中读出用户在服务A中的角色,并将这一角色通知角色获取组件。
尽管上文中将令牌管理组件504描述为在生成令牌后,在系统中保存令牌的副本;并且在从服务B接收到令牌ID之后,从保存的令牌副本中找到相匹配的令牌并从中读出角色信息,然而这仅仅是一个示例而已。换句话说,这是根据为令牌管理制定的示例管理策略的实现方式。实际上,针对令牌的生成和管理可以采用其它的管理策略。例如,可以制定策略,使令牌管理组件在生成令牌后仅把该令牌发送给服务A而不保存任何副本,而服务A在请求调用服务B的时候,直接把令牌传送给服务B,从而令牌管理组件可以从服务B获得令牌,并从中读取角色信息。
另一方面,对于令牌管理,还可以设定许多其它的令牌管理策略。例如,为令牌设定状态信息,即在为通过安全验证的用户生成令牌时,将令牌状态设定为活动,而当用户注销或超时的时候则将令牌状态设定为无效,并且规定当令牌状态为无效时,令牌不可用;以及规定当用户登录一个服务并获得一个令牌后,当他再登录其它服务或调用其它服务,都不再生成新的令牌。总之,可以根据应用程序的需要,灵活地设定各种令牌管理策略。
另外,如前所述,根据本发明的统一访问控制系统所管理的多个组成服务由不同组织和企业拥有,从而访问由多个组成服务构成的应用程序的用户身份信息往往存储在不同企业或组织的数据库中。因此,为了提高身份验证的效率,可选地,根据本发明实施例的统一访问控制系统还可以包括用户管理组件(未示出),用于记录已经在注册的任一服务中登录过的用户的数据源,以显示该用户的身份信息存储在哪一个数据库。通过应用该组件,当已访问过组成服务的用户再次请求访问时,安全验证组件可以基于记录的用户数据源,直接到相应的数据库中进行查询以对用户的身份进行验证,而不必再遍历每一个可能的数据库,由此提高了身份验证的速度和效率。
另外,可选地,根据本发明实施例的统一访问控制系统还可以包括用户组管理组件(未示出),用于为了应用程序用户方便或满足特定商业需求而提供定义用户组的功能。用户组管理组件支持静态用户组定义和动态用户组定义,并且动态用户组不指定组的用户名,而仅仅定义用于形成组的查询条件。通过这一组件,使得本发明的统一访问控制系统更加友好,能够更好地满足用户和企业的需要。
图9示出了根据本发明实施例的、应用角色-角色映射关系的统一访问控制方法的流程图。如图9所示,在步骤901中,获取用户在组成服务A中的角色。在步骤902中,响应于组成服务A在执行过程中对组成服务B的调用请求,根据用户在组成服务A中的角色和预先定义的角色-角色映射关系确定所述用户在组成服务B中的角色,所述角色-角色映射关系描述多个组成服务各自包含的角色之间的映射关系。随后,在步骤903中,将所确定的组成服务B中的角色发送给该组成服务B。以上已经对根据本发明实施例的统一访问控制方法进行了描述,在不背离本发明的精神和实质的前提下,本领域的技术人员可以对其做出各种修改和变型。例如,为了获得更好的信息安全性,优选地,生成令牌作为验证和授权的凭证。图6示出了统一访问控制方法的一种示例性的优选实现方式。下文中将结合图6对该优选实施方式进行详细的描述。
在图6所示的流程图中,利用令牌作为验证和授权的凭证,并将令牌管理策略设定为:在为成功登录某一服务的用户生成令牌时,保存令牌副本,并将令牌状态设定为活动;当用户注销或超时的时候,令牌状态为无效;当令牌状态为无效时,令牌不可用;当用户再次成功登录所述服务时,用新的令牌副本更新旧的令牌副本并将其状态再次设置为活动。容易理解,上述策略仅仅是为了便于描述根据本发明实施例的方法而给出的一种示例而已,系统用户可以根据其具体需要设定不同的令牌管理策略。
如图6所示,在步骤601,从例如组成服务A接收用户请求访问该服务中的功能时输入的用户ID、登录密码和角色等安全信息。随后,在步骤602,安全验证组件基于在数据库中预先存储的用户身份信息和所创建的用户-角色分配列表对用户进行验证,以确定所接收的用户ID、登录密码和角色与预先存储的用户身份信息以及用户-角色分配列表中的记录是否一致。当信息一致时,则验证成功,并且流程进行到步骤603;而当信息不一致时,则在步骤604中向服务A返回验证失败信息,并且随后处理流程结束(容易想到,步骤601和602并非只能在本发明的统一访问方法中执行,其当然也可以在组成服务A中执行)。在步骤603中,令牌管理组件生成一令牌、将该令牌传送给服务A、在系统中保存令牌的副本、并将令牌的状态设定为活动。令牌中可以包含有令牌ID、用户ID、登录密码、以及用户在所请求的组成服务中的角色等信息。服务A在接收到令牌后,根据其保存的访问控制列表确定用户是否可以进行所请求的功能操作。
如前所述,服务A中的功能操作在执行时需要调用另一个组成服务B中的某一个操作。因此,当服务A将调用请求和令牌ID发送至服务B,并且令牌管理组件接收到服务B响应于该调用请求而转发的所述令牌ID时,在步骤605,令牌管理组件查询与接收到的令牌ID对应的、所保存的令牌副本,并从中读取用户在服务A中的角色。在步骤606中,角色确定组件802将所读取的用户在服务A中的角色与预先定义的角色-角色映射关系进行匹配,以确定用户在服务B中的角色。在步骤607中,角色发送组件将所确定的角色发送至服务B,并且随后处理流程结束。另一方面,服务B在接收到所确定的角色后,根据其保存的访问控制列表判断用户是否有权进行服务B中的所述操作。当有权进行时,允许服务A调用这一操作;否则,向服务A返回调用失败信息。
下面,将结合图7对上述统一访问控制方法中的步骤605进行更加详细的描述。如图7所示,当服务A中的功能操作在执行时需要调用另一个组成服务B中的操作时,在步骤6051,服务A将调用请求以及所接收的令牌中的令牌ID发送至服务B。在步骤6052,服务B接收所述调用请求和令牌ID,并将令牌ID传递至令牌管理组件。在步骤6053,令牌管理组件根据接收到的令牌ID查询与之对应的、所保存的令牌副本。随后,在步骤6054,令牌管理组件检查令牌状态以确定其是否是活动的。当令牌状态为活动时,令牌管理组件在步骤6055读取令牌中包含的角色信息;否则,在步骤6066中向服务B返回令牌错误信息,并且处理流程结束。
以上已经结合图6和图7对根据本发明优选实施例的示例性统一访问控制方法进行了描述。在具体实现时,本发明的上述方法可以遵循AXIS2架构,利用例如SOAP协议和Handler技术来实现令牌的传递。
尽管已经示出和描述了本发明的一些示例性实施例,本领域的技术人员应当理解,在不背离权利要求及它们的等价物中限定的本发明的原则和精神的情况下,可以对这些示例性实施例做出变化。
Claims (15)
1.一种对分布式环境中的多个组成服务进行统一访问控制的方法,包括:
获取用户在第一组成服务中的角色;
响应于第一组成服务对第二组成服务的调用请求,根据用户在第一组成服务中的角色和预先定义的角色-角色映射关系确定所述用户在第二组成服务中的角色,所述角色-角色映射关系描述多个组成服务各自包含的角色之间的映射关系;
将所确定的第二组成服务中的角色发送给该第二组成服务;
其中:
响应于用户对第一组成服务的访问请求对该用户在第一组成服务中的身份和角色进行验证;
响应于用户通过所述身份和角色验证生成包含有该用户在第一组成服务中的角色信息的令牌;
将该令牌传递给第一组成服务;
保存所生成的令牌的副本;以及
将令牌状态设置为活动。
2.如权利要求1所述的方法,其中所述响应于用户对第一组成服务的访问请求对该用户在第一组成服务中的身份和角色进行验证包括:
基于用户身份信息和用户角色分配信息分别对用户的身份和角色进行检验,其中所述用户身份信息包括用户标识符和相应的登录密码,所述用户角色分配信息包括用户标识符及相应的角色。
3.如权利要求1所述的方法,其中所述令牌还包括令牌标识符,用户标识符和登录密码。
4.如权利要求3所述的方法,其中所述根据用户在第一组成服务中的角色和预先定义的角色-角色映射关系确定所述用户在第二组成服务中的角色包括:
接收第二组成服务发送的令牌标识符并查询与该令牌标识符对应的、所保存的令牌副本,其中所述令牌标识符是第一组成服务请求调用该第二组成服务时发送至该第二组成服务的;
根据查询到的令牌副本检查令牌状态;
如果令牌状态为活动,则从所述令牌副本中读取角色信息;
通过将读取的角色信息与角色-角色映射关系进行匹配确定所述用户在第二组成服务中的角色。
5.如权利要求4所述的方法,还包括:
响应于用户从第一组成服务注销或者访问超时将令牌状态设置为无效。
6.如权利要求5所述方法,还包括:
响应于所述用户再次请求访问第一组成服务确认该用户有权访问并生成新的令牌;
用所述新的令牌的副本更新原令牌的副本;
将新的令牌的令牌状态重新设置为活动。
7.一种对分布式环境中的多个组成服务进行统一访问控制的系统,包括:
角色获取组件,获取用户在第一组成服务中的角色;
角色确定组件,响应于第一组成服务对第二组成服务的调用请求,根据用户在第一组成服务中的角色和预先定义的角色-角色映射关系确定所述用户在第二组成服务中的角色,所述角色-角色映射关系描述多个组成服务各自包含的角色之间的映射关系;
角色发送组件,将所确定的第二组成服务中的角色发送给该第二组成服务;
安全验证组件,用于响应于用户对第一组成服务的访问请求对该用户在第一组成服务中的身份和角色进行验证;
令牌管理组件,用于响应于用户通过所述身份和角色验证生成包含有该用户在第一组成服务中的角色信息的令牌并将该令牌传递给第一组成服务;以及保存所生成的令牌的副本并将令牌状态设置为活动。
8.如权利要求7所述的系统,还包括:
服务注册组件,用于注册利用所述系统进行安全验证的各个组成服务;
角色管理组件,用于对已注册的各个组成服务中的各个角色进行管理;
映射列表管理组件,用于创建并管理记录所述角色-角色映射关系的映射列表。
9.如权利要求7所述的系统,其中所述安全验证组件基于用户身份信息和用户角色分配信息分别对用户的身份和角色进行检验,其中所述用户身份信息包括用户标识符和相应的登录密码,所述用户角色分配信息包括用户标识符和相应的角色信息。
10.如权利要求8所述的系统,其中所述角色管理组件预先将除了普通用户角色之外的、具有较高优先权的特殊角色分配给相应用户,并且当不具有所述特殊角色的用户首次请求访问服务时,自动将普通用户角色分配给该用户。
11.如权利要求7所述的系统,其中所述令牌还包括令牌标识符,用户标识符和登录密码。
12.如权利要求11所述的系统,其中所述令牌管理组件接收第二组成服务发送的令牌标识符并查询与该令牌标识符对应的、所保存的令牌副本,并从所述令牌副本中读取角色信息,
其中所述令牌标识符是第一组成服务请求调用第二组成服务时发送至该第二组成服务的。
13.如权利要求12所述的系统,其中所述角色确定组件根据令牌管理组件读取的角色信息查询角色-角色映射列表,以确定所述用户在第二组成服务中的角色。
14.如权利要求8所述的系统,还包括用户管理组件,用于当用户请求访问在服务注册组件中注册的任一组成服务时,记录该用户的数据源,以指示该用户是来自哪个数据库。
15.如权利要求8所述的系统,还包括用户组管理组件,其根据用户的请求建立静态用户组或动态用户组定义。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100959709A CN101572603B (zh) | 2008-04-30 | 2008-04-30 | 分布式环境中的组成服务的统一访问控制系统及方法 |
US12/431,909 US8769653B2 (en) | 2008-04-30 | 2009-04-29 | Unified access control system and method for composed services in a distributed environment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100959709A CN101572603B (zh) | 2008-04-30 | 2008-04-30 | 分布式环境中的组成服务的统一访问控制系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101572603A CN101572603A (zh) | 2009-11-04 |
CN101572603B true CN101572603B (zh) | 2012-05-30 |
Family
ID=41231845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008100959709A Expired - Fee Related CN101572603B (zh) | 2008-04-30 | 2008-04-30 | 分布式环境中的组成服务的统一访问控制系统及方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8769653B2 (zh) |
CN (1) | CN101572603B (zh) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9608988B2 (en) * | 2009-02-03 | 2017-03-28 | Inbay Technologies Inc. | Method and system for authorizing secure electronic transactions using a security device having a quick response code scanner |
US9736149B2 (en) | 2009-02-03 | 2017-08-15 | Inbay Technologies Inc. | Method and system for establishing trusted communication using a security device |
US8615548B1 (en) * | 2009-11-17 | 2013-12-24 | Applied Micro Circuits Corporation | System and method for deferred data downloading |
US9088580B2 (en) * | 2009-12-31 | 2015-07-21 | Microsoft Technology Licensing, Llc | Access control based on user and service |
EP2400445A3 (en) * | 2010-06-28 | 2012-05-23 | Samsung Electronics Co., Ltd. | Image device, receiving method of contents, server and providing method of contents |
US20120079125A1 (en) * | 2010-09-23 | 2012-03-29 | Mark Nixon | Service oriented framework for communicating with devices in a process control system |
US8458486B2 (en) | 2010-10-13 | 2013-06-04 | International Business Machines Corporation | Problem-based account generation |
CN102541906B (zh) * | 2010-12-24 | 2014-07-16 | 阿里巴巴集团控股有限公司 | 分布式业务处理方法及分布式系统 |
US20120174205A1 (en) * | 2010-12-31 | 2012-07-05 | International Business Machines Corporation | User profile and usage pattern based user identification prediction |
US9838351B2 (en) | 2011-02-04 | 2017-12-05 | NextPlane, Inc. | Method and system for federation of proxy-based and proxy-free communications systems |
US8875269B2 (en) * | 2011-02-23 | 2014-10-28 | International Business Machines Corporation | User initiated and controlled identity federation establishment and revocation mechanism |
US9077726B2 (en) | 2011-03-31 | 2015-07-07 | NextPlane, Inc. | Hub based clearing house for interoperability of distinct unified communication systems |
US9203799B2 (en) | 2011-03-31 | 2015-12-01 | NextPlane, Inc. | Method and system for advanced alias domain routing |
US9716619B2 (en) | 2011-03-31 | 2017-07-25 | NextPlane, Inc. | System and method of processing media traffic for a hub-based system federating disparate unified communications systems |
US8943574B2 (en) | 2011-05-27 | 2015-01-27 | Vantiv, Llc | Tokenizing sensitive data |
US9407626B2 (en) * | 2011-09-29 | 2016-08-02 | Red Hat, Inc. | Security token management service hosting in application server |
US10083247B2 (en) * | 2011-10-01 | 2018-09-25 | Oracle International Corporation | Generating state-driven role-based landing pages |
US9002890B2 (en) * | 2012-03-14 | 2015-04-07 | International Business Machines Corporation | Rule-based access control list management |
DE102012214018B3 (de) * | 2012-08-07 | 2014-02-13 | Siemens Aktiengesellschaft | Autorisierung eines Nutzers durch ein tragbares Kommunikationsgerät |
CN103179111B (zh) * | 2013-03-11 | 2015-10-28 | 无锡中科泛在信息技术研发中心有限公司 | 一种防止Web服务被非法调用的方法 |
US9405930B2 (en) * | 2013-03-12 | 2016-08-02 | Jacqueline K. Vestevich | User-controlled centralized privacy marketplace system |
CN103152349B (zh) * | 2013-03-14 | 2016-02-17 | 成都康赛信息技术有限公司 | 非侵入式数据整合平台安全访问联动控制方法 |
US20140359457A1 (en) * | 2013-05-30 | 2014-12-04 | NextPlane, Inc. | User portal to a hub-based system federating disparate unified communications systems |
US9705840B2 (en) | 2013-06-03 | 2017-07-11 | NextPlane, Inc. | Automation platform for hub-based system federating disparate unified communications systems |
US9819636B2 (en) | 2013-06-10 | 2017-11-14 | NextPlane, Inc. | User directory system for a hub-based system federating disparate unified communications systems |
JP6354132B2 (ja) * | 2013-10-09 | 2018-07-11 | 富士ゼロックス株式会社 | 中継装置、中継システム及びプログラム |
US9691044B2 (en) * | 2013-11-05 | 2017-06-27 | Bank Of America Corporation | Application shell login role based access control |
US20150135296A1 (en) * | 2013-11-14 | 2015-05-14 | International Business Machines Corporation | Catalog driven order management for rule definition |
US10198558B2 (en) * | 2014-10-06 | 2019-02-05 | Red Hat, Inc. | Data source security cluster |
US10305967B2 (en) * | 2016-03-14 | 2019-05-28 | Business Objects Software Ltd. | Unified client for distributed processing platform |
CN105827645B (zh) * | 2016-05-17 | 2020-09-22 | 北京优炫软件股份有限公司 | 一种用于访问控制的方法、设备与系统 |
US10423914B2 (en) * | 2016-07-08 | 2019-09-24 | International Business Machines Corporation | Industrial setup composition |
US10673831B2 (en) * | 2017-08-11 | 2020-06-02 | Mastercard International Incorporated | Systems and methods for automating security controls between computer networks |
CN109033809A (zh) * | 2018-07-06 | 2018-12-18 | 航天星图科技(北京)有限公司 | 一种基于应用角色托管的用户集成系统及方法 |
CN110138741B (zh) * | 2019-04-15 | 2022-06-17 | 平安科技(深圳)有限公司 | 基于统一管理平台的微服务管理方法、装置和计算机设备 |
CN110198318A (zh) * | 2019-06-03 | 2019-09-03 | 浪潮云信息技术有限公司 | 一种容器服务用户认证方法 |
CN112182522A (zh) * | 2019-07-05 | 2021-01-05 | 北京地平线机器人技术研发有限公司 | 访问控制方法和装置 |
CN113472771B (zh) * | 2021-06-29 | 2023-03-24 | 福建华通银行股份有限公司 | 一种智能化中台系统 |
US11907229B2 (en) * | 2022-03-31 | 2024-02-20 | Gm Cruise Holdings Llc | System and method for platform-independent access bindings |
CN116821879B (zh) * | 2023-08-31 | 2023-11-07 | 四川集鲜数智供应链科技有限公司 | 一种可视化的系统角色管理系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1481115A (zh) * | 2002-09-18 | 2004-03-10 | 联想(北京)有限公司 | 家庭网络中不同子网设备间描述信息的转换方法 |
CN1633085A (zh) * | 2004-12-29 | 2005-06-29 | 北京邮电大学 | 一种基于无等级角色间映射的访问控制方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1269425A2 (en) * | 2000-02-25 | 2003-01-02 | Identix Incorporated | Secure transaction system |
US6871232B2 (en) * | 2001-03-06 | 2005-03-22 | International Business Machines Corporation | Method and system for third party resource provisioning management |
US7284271B2 (en) * | 2001-03-14 | 2007-10-16 | Microsoft Corporation | Authorizing a requesting entity to operate upon data structures |
US20030229812A1 (en) * | 2002-06-05 | 2003-12-11 | Cristina Buchholz | Authorization mechanism |
US6917975B2 (en) * | 2003-02-14 | 2005-07-12 | Bea Systems, Inc. | Method for role and resource policy management |
US7454786B2 (en) * | 2003-03-27 | 2008-11-18 | International Business Machines Corporation | Method for integrated security roles |
EP1697818B1 (en) * | 2003-12-23 | 2018-05-30 | Wells Fargo Bank, N.A. | Authentication system for networked computer applications |
US7774601B2 (en) * | 2004-04-06 | 2010-08-10 | Bea Systems, Inc. | Method for delegated administration |
US7434252B2 (en) * | 2004-07-14 | 2008-10-07 | Microsoft Corporation | Role-based authorization of network services using diversified security tokens |
US8065712B1 (en) * | 2005-02-16 | 2011-11-22 | Cisco Technology, Inc. | Methods and devices for qualifying a client machine to access a network |
GB2435115B (en) | 2006-02-09 | 2010-11-03 | Thales Holdings Uk Plc | Secure computer networking |
US8887241B2 (en) * | 2006-02-22 | 2014-11-11 | International Business Machines Corporation | Virtual roles |
US7730095B2 (en) * | 2006-03-01 | 2010-06-01 | Microsoft Corporation | Controlling transactions in accordance with role based security |
US8151317B2 (en) * | 2006-07-07 | 2012-04-03 | International Business Machines Corporation | Method and system for policy-based initiation of federation management |
US8719894B2 (en) * | 2007-03-29 | 2014-05-06 | Apple Inc. | Federated role provisioning |
US8977845B2 (en) * | 2007-04-12 | 2015-03-10 | International Business Machines Corporation | Methods and apparatus for access control in service-oriented computing environments |
-
2008
- 2008-04-30 CN CN2008100959709A patent/CN101572603B/zh not_active Expired - Fee Related
-
2009
- 2009-04-29 US US12/431,909 patent/US8769653B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1481115A (zh) * | 2002-09-18 | 2004-03-10 | 联想(北京)有限公司 | 家庭网络中不同子网设备间描述信息的转换方法 |
CN1633085A (zh) * | 2004-12-29 | 2005-06-29 | 北京邮电大学 | 一种基于无等级角色间映射的访问控制方法 |
Also Published As
Publication number | Publication date |
---|---|
US8769653B2 (en) | 2014-07-01 |
US20090276840A1 (en) | 2009-11-05 |
CN101572603A (zh) | 2009-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101572603B (zh) | 分布式环境中的组成服务的统一访问控制系统及方法 | |
US8060922B2 (en) | Consumer internet authentication device | |
US20100299738A1 (en) | Claims-based authorization at an identity provider | |
CN103109298B (zh) | 认证协作系统以及id提供商装置 | |
US8955037B2 (en) | Access management architecture | |
US20110214165A1 (en) | Processor Implemented Systems And Methods For Using Identity Maps And Authentication To Provide Restricted Access To Backend Server Processor or Data | |
JP5383838B2 (ja) | 認証連携システム、idプロバイダ装置およびプログラム | |
US8255507B2 (en) | Active directory object management methods and systems | |
JP5422753B1 (ja) | ポリシ管理システム、idプロバイダシステム及びポリシ評価装置 | |
CN105871914A (zh) | 客户关系管理系统访问控制方法 | |
CN102422298A (zh) | 分布式计算资源的访问控制系统和方法 | |
CN106534199A (zh) | 大数据环境下基于xacml和saml的分布式系统认证与权限管理平台 | |
US11552948B1 (en) | Domain management intermediary service | |
CN103778379B (zh) | 管理设备上的应用执行和数据访问 | |
Li et al. | H-RBAC: a hierarchical access control model for SaaS systems | |
US7831999B2 (en) | System and method for single security administration | |
US7669246B2 (en) | System and method for linking user accounts to business entitlement objects | |
US7865600B2 (en) | Transparent resource administration using a read-only domain controller | |
JP2012137995A (ja) | リソース提供システム、アクセス制御プログラム及びアクセス制御方法 | |
JP2007004786A (ja) | 顧客サポートシステム及び顧客サポート方法 | |
CN109309686A (zh) | 一种多租户管理方法及装置 | |
CN112037048B (zh) | 企业用户的网上银行使用方法及装置 | |
Rech et al. | A decentralized service-platform towards cross-domain entitlement handling | |
US7702787B1 (en) | Configurable user management | |
JP5377616B2 (ja) | 情報流通システムとそのアクセス制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120530 |