确定第一租户关于第二租户的许可的利记博彩app

文档序号:10557118阅读:337来源:国知局
确定第一租户关于第二租户的许可的利记博彩app
【专利摘要】提供系统的多个租户之间的特权的第一表示。租户具有根据层次结构的关系,层次结构包括租户的多个层次级,其中,特权中的至少一个指定对第一租户执行关于第二租户的任务的许可。第一表示独立于多个租户之间的关系的表示。响应于来自第一租户的执行关于第二租户的任务的请求,系统基于第一表示确定第一租户是否被许可执行关于第二租户的任务。
【专利说明】
确定第一租户关于第二租户的许可
【背景技术】
[0001]云系统包括可由云系统的供应商的客户共享的资源或服务。资源可包括处理资源、存储资源、通信资源等。服务可由应用或其他机器可执行指令提供。云系统允许其资源或服务被客户按需访问。
【附图说明】
[0002]参照以下附图描述一些实施方式。
[0003]图1是根据一些实施方式的租户特权层次结构(hierarchy)的示意图。
[0004]图2是根据一些实施方式的租户关系层次结构的示意图。
[0005]图3是根据一些实施方式的包括身份管理系统和租户系统的示例性布置的框图。;
[0006]图4是根据进一步的实施方式的包括云系统和租户系统的示例性布置的框图。
[0007]图5是根据一些实施方式的租户对租户(tenant-to-tenant)特权管理过程的流程图。
[0008]图6是根据一些实施方式的示例性系统的框图。
【具体实施方式】
[0009]云系统的基础结构可由供应商拥有或管理,供应商可为诸如商行、政府机关、教育机构或个人的实体。云系统的基础结构可位于特定的地理位置中,或者可分布在多个地理位置。基础结构包括可由云系统的供应商的客户可用的云资源和云服务。此类客户也被称为是租户,其可位于任何位置,只要其能够通过网络访问云系统。租户可指单个用户或者用户的集合,诸如作为商行、政府机关或教育机构的成员的用户。
[0010]云资源可包括以下中的任何一个或者一些组合:处理资源(其可包括一个或多个计算机的处理器)、存储资源(其可包括存储装置,诸如基于磁盘的存储装置或者固态存储装置)、通信资源(其可包括通信装置以允许由用户进行通信,其中通信装置的示例可包括路由器、交换机、通信设施服务器等)以及其他资源。
[0011]除了云资源之外,云系统还可提供诸如网页服务的云服务,其可由云系统的租户的用户调用。租户的用户可指机器或人。云服务指的是可由租户调用的功能。该功能可由机器可读指令提供。网页服务指的是可通过诸如因特网的网络访问的服务。
[0012]虽然在本讨论中参照了云系统,但应该注意的是,根据一些实施方式的技术或机制也可应用于可包括可由多个租户共享的资源和/或服务的其他类型的系统。
[0013]云系统可包括身份管理系统,其存储信息以能够对用户尝试访问云系统进行认证并且能够对访问所请求的该云系统的资源或服务进行授权。其他实体可与身份管理系统交互以执行授权和认证。身份管理系统可定义与云系统的资源和服务的访问相关的特权。特权可指:对给定用户执行动作的许可,该动作可涉及访问云系统的资源或服务。
[0014]身份管理系统还提供与创建、读取、更新或删除用户的配置文件(profile)信息的能力相关联的特权。由身份管理系统维持的用户的配置文件信息可包括各种类型的用户数据,包括用户名、邮件地址、登录名(用于登入到云系统)、允许用户访问云系统的一个或多个认证证书(认证证书的示例可包括密码、用户的生物识别信息、密钥等)等。
[0015]“多租户”身份管理系统是一种能够执行对多个租户(诸如云系统的多个租户)的身份管理的身份管理系统。
[0016]在一些实施方式中,多租户身份管理系统还可存储租户信息和租户关系信息。租户信息包括描述租户的信息,其中,信息可包括租户名、由租户提供的产品或服务以及与租户有关的其他信息。租户关系信息描述了租户之间的关系。例如,第一租户可为各种产品的制造商。第二租户可为第一租户的转销商,其中,第二租户出售第一租户的某些产品。第三租户可为第二租户的客户。在前述示例中,第二租户可被视为是第一租户的子租户,而第三租户可被视为是第二租户的子租户。租户之间的子租户关系也可被称为租户从属(tenant-of-tenant)关系。租户从属关系可指租户之间已建立的关系,其中,该关系可通过协议建立,可基于公司布置(例如,母公司的子公司)建立,或者通过其他类型的布置或理解而建立。
[0017]取决于在租户之间提供的特定服务或租户的特定交互,一个租户可以访问另一租户的租户资源。租户资源可包括租户的信息、租户的处理资源、租户的存储资源、租户的通信资源等。注意到,租户的租户资源不同于云系统的云资源。
[0018]在一个示例中,转销商可向该转销商的客户提供高级服务,诸如维持服务、支持服务等等。在此类关系中,转销商可部分访问或完全访问转销商的客户的或信息。在另一示例中,如果转销商未向特定客户提供任何高级服务(例如,转销商仅仅向特定客户出售产品而没有在出售产品之后提供进一步的服务),则转销商不会被允许访问该特定客户的信息。
[0019]在租户特权信息中指示了一个租户访问另一租户的资源的能力。租户特权信息可指定一个租户关于另一租户具有什么特权。通常来说,租户之间的特权可由租户对租户关系来暗示。例如,一个租户访问子租户的信息,但不可访问另一租户的信息。然而,以这种静态的方式指定租户之间的特权减少了租户之间特权的赋予的灵活性。
[0020]根据一些实施方式,提供技术或机制来管理多租户环境中的租户对租户特权,其中,租户具有层次结构中的关系,该层次结构包括多个不同层次级。在租户对租户关系层次结构中,处于层次结构的顶层的租户可具有处于第二、较低层次级的一个或多个子租户。处于第二层次级的租户又可具有处于租户对租户关系层次结构的第三、较低层次级的子租户。
[0021 ] 可提供多个租户之间的特权的明确租户特权表示(representat1n)。该租户特权表示对于多个租户之间的关系的表示而言是额外的并且是独立的。由此,租户之间的特权的表示不必依赖于租户之间的关系。以此方式,可在持续的基础上动态地修改租户之间的特权的表示,无论租户之间的关系是否已被修改。
[0022]可在租户特权表示中指定的租户之间的特权的示例可包括以下,作为示例:
[0023]将新的子租户添加至租户;
[0024]从租户中移除子租户;
[0025]访问租户的资源,其中,资源可包括包含在特定租户的租户记录中的信息、或者与该特定租户相关联的任意其他资源,诸如处理资源、存储资源、通信资源等等;
[0026]访问包含在与租户相关联的身份管理系统中的信息(包含在身份管理系统中的信息包括:由身份管理系统用来认证用户或者授权对云系统的云资源或云服务的访问的用户身份数据);或
[0027]访问包含在与租户相关联的外部系统中的信息,其中,外部系统可为文档存储库或其他外部系统。
[0028]更普遍而言,租户特权表示指定对各个层次级处的租户执行关于各个层次级处的其他租户的任务(例如,诸如前述的任何一项)的许可。
[0029]图1是租户之间的特权的租户特权表示的示例,其中,从第一租户到第二租户的箭头指示已从第一租户向第二租户赋予某些权限。图1中描绘的租户特权表示是租户特权层次结构100。基础租户位于租户特权层次结构100的第一(顶)层次级102。在一些示例中,基础租户可为产品的制造商或服务的供应商。基础租户的子租户位于租户特权层次结构100的下一层次级104,其中,子租户包括转销商1、转销商2和服务承包商。第二层次级104处的租户的其他子租户位于下一较低层次级106。层次级106处的租户包括客户1.1、客户1.2、客户2.1和客户2.2。客户1.1和1.2是转销商I的子租户,而客户2.1和2.2是转销商2的子租户。
[0030]虽然在图1中描绘了三个层次级102、104和106,但应注意的是,不同的租户特权层次结构可包括不同数量的层次级(例如,小于三个或多于三个)。
[0031]在图1的租户特权层次结构100中,基础租户关于其子租户中的每个而被赋予特权(诸如上文中列出的那些),子租户包括转销商1、服务承包商和转销商2。而且,转销商2被赋予关于客户2.1和客户2.2的特权。虽然在服务承包商与客户1.2、2.1之间不存在租户对租户关系,但赋予服务承包商关于客户1.2、2.1的特权,因为客户1.2和2.1可能已被选为使用服务承包商的服务。
[0032]注意到,在图1中,没有在转销商I及其客户1.1、1.2之间指定特权关系。结果是,转销商I不被赋予任何关于客户1.1和1.2的特权。
[0033]虽然示例性租户特权层次结构100示出了处于较高层次级的租户被赋予关于较低层次级处的租户的特权,但应注意的是,在进一步的示例中,较低级租户可被赋予关于较高级租户的特权。例如,客户2.1可被赋予关于转销商2的特权。此外,在额外的示例中,给定层次级处的第一租户可能被赋予关于同一给定层次级处的第二租户的特权。
[0034]在进一步的示例中,还可在基础租户与远离基础租户的多于一个层次级的租户之间建立特权关系。例如,可在基础租户与客户1.1、1.2、2.1中的每个之间建立特权关系,以允许基础客户具有关于客户的特权。
[0035]图1还描绘了“完全访问”特权(由实线箭头表示)和“部分访问”特权(由虚线箭头表示)。在图1的示例中,基础租户具有关于基础租户的子租户中的每个的完全访问特权,子租户包括转销商1、服务承包商和转销商2。完全访问特权指定基础租户具有所有可能的特权,例如,包括上文中进一步列出的所有示例性特权。图1中的示例性租户特权层次结构指定服务承包商具有关于客户1.2和2.1的部分访问特权,转销商2具有关于客户2.1和2.2的部分访问特权。部分访问特权指示租户具有的特权少于关于另一租户的所有可用的特权。注意到,对于具有多个子租户的第一租户,租户特权层次结构100可指定第一租户关于相应的多个子租户的不同特权。
[0036]图2示出了图1中描绘的租户之间的关系的租户关系表示。在一些示例中,租户关系表示可以以租户关系层次结构200的形式。从第一租户到第二租户的箭头指示第二租户是第一租户的子租户。租户关系层次结构200具有多个层次级202、204和206。基础租户处于顶层次及202,转销商1、服务承包商和转销商2处于第二层次级204,而客户1.1、1.2、2.1和2.2处于第三层次级206。
[0037]在其他示例中,租户关系层次结构200可包括不同数量的层次级。
[0038]在租户关系层次结构200中,客户1.1和1.2是转销商I的子租户,并且客户2.1和
2.2是转销商2的子租户。然而,应注意,客户1.1、1.2、2.1和2.2不是服务承包商的子租户。即使在租户关系层次结构200中不存在服务承包商与客户之间的租户对租户关系,图1中的租户特权层次结构100也允许特权关系在服务承包商与客户1.1、2.1之间被建立。
[0039]图3示出了包括通过网络302连接至租户系统304的身份管理系统300的示例性布置。租户系统指的是与租户相关联的系统。系统可包括一个或多个计算机,并且可能还包括其他装置。
[0040]身份管理系统300可为(图4中描绘的)云系统的一部分,云系统具有可由租户系统304访问的云资源和/或云服务。租户系统对云资源和/或云服务的访问是由身份管理系统300控制的。身份管理系统300包括身份管理引擎306,其可使用用户的配置文件信息(未示出)来认证租户的用户,并且确定用户是否被许可访问云系统的云资源和/或云服务。
[0041 ]身份管理系统300还包括租户信息库308,其存储租户之间的特权(例如,图1中的租户特权层次结构100)的租户特权表示310和租户之间的关系(例如,图2中的租户关系层次结构200)的租户关系表示312。
[0042]虽然描绘了作为同一库308的一部分的表示310和312,但应注意的是,在其他示例中,表示310和312可存储在独立的库中。
[0043]身份管理系统300包括租户对租户特权管理引擎314,其可访问租户信息库308。租户对租户特权管理引擎314能够访问租户特权表示310,以确定指定租户之间是否存在特权关系。租户对租户特权管理引擎314能够访问租户关系表示312,以确定指定租户之间是否存在租户对租户关系。
[0044]租户对租户特权管理引擎314能够更新租户关系表示312。在一个示例中,如果特定的特权关系指示第一租户能够将子租户添加到第二租户,则租户对租户特权管理引擎314将会允许第一租户将子租户添加到第二租户,这可能引起租户关系表示312的修改(第二租户的新的子租户将会被添加至租户关系表示312)。
[0045]可在动态的基础上通过租户对租户特权管理引擎314修改该租户特权表示310。例如,身份管理系统300的管理员可决定添加特权、修改特权或删除指定租户之间的特权,这可能通过修改租户特权表示310来实现。注意到,可改变租户特权表示310而不必改变租户关系表不312。
[0046]身份管理系统300的引擎中的每个(例如,包括引擎306和314)可为实施各个引擎的功能的硬件和程序的任意组合。硬件和程序的此类组合可以以多种不同方式实施。例如,用于引擎的程序可包括存储在非暂时性机器可读存储介质上的可执行指令,而用于引擎的硬件可包括执行那些指令的处理器。在此类示例中,机器可读存储介质可存储当被处理器运行时实施引擎的功能的指令。存储该指令的机器可读存储介质可集成在计算装置中,计算装置包括运行该指令的处理资源,或者该机器可读存储介质可以是独立的但可由该计算装置和处理资源访问。处理资源可包括包含在单个计算装置中或者分布在多个计算装置中的一个处理器或多个处理器。在其他示例中,任一引擎的功能可以以电路的形式实施。
[0047]图4是另一示例性布置的框图,其包括通过网络302连接至租户系统304的云系统400。云系统400包括结合图3讨论过的身份管理系统300。此外,云系统400包括管理对云服务404和云资源406的访问的一个或多个应用402。通过访问应用402,租户系统304可按需访问云服务404和云资源406。
[0048]图5是租户对租户特权管理过程的流程图,该方法可通过根据一些示例的租户对租户特权管理引擎314执行。租户对租户特权管理引擎314将租户之间的特权的租户特权表示310(图3)存储在租户信息库308中(在502处)。该表示310的特权中的至少一个指定第一层次级处的第一租户对层次级(其可与第一层次级相同或不同)处的第二租户的资源的访问许可。此外,还可指定其他特权,包括上文列举的那些。
[0049]响应于来自第一租户的对第二租户的资源的请求,租户对租户特权管理引擎314可基于租户特权表示310确定第一租户是否被许可访问第二租户的资源(504处)。在其他示例中,来自第一租户的请求可为添加第二租户的子租户的请求,或者可为从第二租户移除子租户的请求,或者可为执行关于第二租户的其他任务的请求。响应于此类其他请求,租户对租户特权管理引擎314可类似地询问该租户特权表示310以确定是否可赋予该请求。
[0050]可使用访问控制机制来指定租户特权表示310,访问控制机制可包括一个或多个访问控制列表(ACL)。例如,ACL可与租户中的每个相关联,其中,给定租户的ACL可指定其他租户具有关于给定租户的什么特权以及那些特权是什么。
[0051]在进一步的示例中,可使用加密机制来指定租户之间的关系。例如,加密机制可防止另一租户对租户的资源的未授权访问。加密机制可包括以下的一个或一些组合。在一些示例中,为了访问给定租户的资源,就必须使用访问证书。此访问证书可被加密,并且可仅向指定租户提供密钥以解密被加密的访问证书。具有用于解密被加密的访问证书的密钥的租户将能够访问给定租户的资源。
[0052]在进一步的示例中,可采用数字签名的访问策略和基于这些签名的强制执行。作为示例,可使用策略管理和强制执行机制,诸如可扩展访问控制标记语言(XACML)机制。此类机制可包括策略管理点,其以数字签名访问策略的形式创建授权策略。当第一租户希望访问第二租户的资源时,策略决策点可基于由第一租户呈现的数字签名访问策略来决定是否可赋予此类访问请求。通过策略管理点事先应用于访问策略的数字签名允许策略决策点独立于策略管理点来验证访问策略。数字签名可为非对称数字签名(例如,数字签名算法或DSA签名),在这种情况下,策略管理点和策略决策点不必共享公共加密机密。
[0053]在又进一步的示例中,可使用已采用哈希信息认证码(HMAC)保护的访问策略,并且强制执行可基于该HMAC。作为上述通过使用非对称数字签名来保护访问策略的替代方案,策略管理点和策略决策点可共享公共加密机密,其允许使用对称HMAC技术来验证访问策略,诸如在 1997年2月的题为“HMAC:Keyed_Hashing for Message Authenticat1n”的征求评议文件中描述的。
[0054]图6是根据一些实施方式的包括一个或多个计算机602的示例性身份管理系统300的框图。每个计算机602包括一个或多个处理器604,其可连接至网络接口606以允许计算机602通过数据网络进行通信。
[0055]处理器604可联接至非暂时性机器可读存储介质(或存储媒介)608,其可存储指令和其他信息。指令可包括机器可读指令610,其可包括身份管理指令612(其为图3的身份管理引擎306的一部分)和租户对租户管理指令614(其为图4的租户对租户管理引擎314的一部分)。机器可读指令610可在处理器604上执行。处理器可为微处理器、微控制器、处理器模块或子系统、可编程集成电路、可编程门阵列或其他控制或计算装置。
[0056]存储介质(或存储媒介)608还可存储上述租户信息库308。在此使用的“机器可读存储介质”可为包含或存储诸如可执行指令、数据等的电、磁、光或其他物理存储设备。例如,在此描述的任意机器可读存储介质可包括不同形式的存储器,包括:半导体存储装置,诸如动态或静态随机存取存储器(DRAM或SRAM)、可擦可编程只读存储器(EPROM)、电可擦可编程只读存储器(EEPROM)和闪存;磁盘,诸如固定硬盘、软盘和可换式磁盘;其他磁介质,包括磁带;光介质,诸如光盘(CD)或数字视频磁盘(DVD);或其他类型的存储装置。注意到,上文讨论的指令可设置在一个计算机可读或机器可读存储介质上,或者可替换地,可设置在分布在具有可能的复数个节点的大型系统中的多个计算机可读或机器可读存储介质上。此类计算机可读或机器可读存储介质或媒介被视为是物品(或者制品)的一部分。物品或制品可指任意制造的单个组件或多个组件。存储介质或媒介可位于运行机器可读指令的机器中或者位于远程位置中,可通过网络从该远程位置下载机器可读指令以运行。
[0057]在前述描述中,列举了多个细节以提供对在此描述的主题的理解。然而,各实施方式可在没有这些细节中的一些细节的情况下实施。其他实施方式可包括源自上述细节的修改和变型。随附权利要求书旨在覆盖此类修改和变型。
【主权项】
1.一种方法,包括: 通过包括处理器的系统存储所述系统的多个租户之间的特权的第一表示,所述多个租户具有根据层次结构的关系,所述层次结构包括租户的多个层次级,其中,所述特权中的至少一个指定第一层次级处的第一租户对层次级中的一个处的第二租户的资源的访问许可,并且其中,所述第一表示独立于所述多个租户之间的关系的表示;以及 响应于来自所述第一租户的对所述第二租户的所述资源的请求,通过所述系统基于所述第一表示确定所述第一租户是否被许可访问所述第二租户的所述资源。2.如权利要求1所述的方法,其中,所述至少一个特权指定所述第一租户对作为所述层次级中的不同的一个层次级的第二层次级处的所述第二租户的所述资源的访问许可。3.如权利要求1所述的方法,其中,所述至少一个特权指定所述第一租户对所述第二租户的用户身份数据的访问许可,所述用户身份数据用于授权对由所述系统提供的云服务或云资源的访问。4.如权利要求1所述的方法,其中,所述特权中的第二特权指定对所述第一租户修改所述第二租户的许可,所述方法进一步包括: 响应于所述第一租户的修改所述第二租户的请求,通过所述系统基于第一表示确定所述第一租户是否被许可修改所述第二租户。5.如权利要求4所述的方法,其中,所述第二特权指定对所述第一租户通过添加或移除所述第二租户的子租户而修改所述第二租户的许可。6.如权利要求1所述的方法,进一步包括: 动态地修改所述第一表示,以改变所述多个租户之间的所述特权,而不改变所述多个租户之间的所述关系的所述表示。7.如权利要求1所述的方法,其中,存储所述第一表示包括:将访问控制信息存储在至少一个访问控制列表中。8.如权利要求1所述的方法,其中,存储所述第一表示包括:使用加密机制来控制所述特权。9.如权利要求1所述的方法,其中,所述存储和所述确定是通过身份管理系统执行的,所述身份管理系统执行对所述系统的云服务或云资源的访问的授权。10.—种系统,包括: 至少一个处理器,用于: 从系统的第一租户接收请求以执行关于所述系统的第二租户的任务; 响应于所述请求,访问多个租户之间的特权的第一表示,所述多个租户具有根据层次结构的关系,所述层次结构包括租户的多个层次级,其中,所述特权指定对各个层次级处的租户执行关于各个层次级处的其他租户的任务的许可,并且其中,所述第一表示独立于所述多个租户之间的所述关系的表示;以及 基于所述第一表示确定所述第一租户是否被许可执行关于所述第二租户的所述任务。11.如权利要求10所述的系统,其中,确定所述第一租户是否被许可执行关于所述第二租户的所述任务包括:确定所述第一租户是否被许可访问所述第二租户的资源。12.如权利要求10所述的系统,其中,确定所述第一租户是否被许可执行关于所述第二租户的所述任务包括:确定所述第一租户是否被许可添加或移除所述第二租户的子租户。13.如权利要求10所述的系统,其中,所述系统是云系统,并且所述云系统进一步包括身份管理引擎,所述身份管理引擎包括所述至少一个处理器,所述身份管理系统授权由所述多个租户中的一个租户的用户访问所述云系统的云服务或云资源。14.如权利要求10所述的系统,其中,所述第一表示包括租户特权层次结构,所述租户特权层次结构指定所述多个租户之间的特权关系,所述租户特权层次结构包括设置有各个租户的多个层次级。15.—种制品,包括存储指令的至少一个非暂时性机器可读存储介质,所述指令在被运行时使得云系统执行如下操作: 从所述云系统的第一租户接收请求以执行关于所述云系统的第二租户的任务,所述云系统包括可由多个租户共享的至少一个云资源或至少一个云服务,并且所述云系统进一步包括身份管理系统以授权对所述至少一个云资源或至少一个云服务的访问; 响应于所述请求,访问所述多个租户之间的特权的第一表示,所述多个租户具有根据层次结构的关系,所述层次结构包括租户的多个层次级,其中,所述特权指定对各个层次级处的租户执行关于所述各个层次级处的其他租户的任务的许可,并且其中,所述第一表示独立于所述多个租户之间的所述关系的表示;以及 基于所述第一表示确定所述第一租户是否被许可执行关于所述第二租户的所述任务。
【文档编号】G06F9/50GK105917309SQ201480073659
【公开日】2016年8月31日
【申请日】2014年1月20日
【发明人】迈克尔·伯尔德·贝特
【申请人】惠普发展公司,有限责任合伙企业
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1