将OIDC认证扩展到服务账户以实现双重授权制造技术

技术编号:38646584 阅读:11 留言:0更新日期:2023-09-02 22:37
本发明专利技术涉及将OIDC认证扩展到服务账户以实现双重授权。一个示例方法包括:由身份和访问管理模块从第一服务接收验证用户令牌的请求,所述请求包括服务令牌。该方法还包括由所述身份和访问管理模块对所述用户令牌执行验证过程;当所述验证过程成功时,由所述身份和访问管理模块生成包括所述用户令牌和所述服务令牌的访问令牌。最后,该方法包括:由所述身份和访问管理模块向所述第一服务发送所述访问令牌,其中,在第二服务成功验证所述访问令牌后,所述访问令牌能够由所述第一服务使用以获得对所述第二服务的访问权。获得对所述第二服务的访问权。获得对所述第二服务的访问权。

【技术实现步骤摘要】
将OIDC认证扩展到服务账户以实现双重授权


[0001]本专利技术的实施方式总体涉及认证过程。更具体地,本专利技术的至少一些实施方式涉及用于在基于微服务的架构中认证用户和一个或多个服务的系统、硬件、软件、计算机可读介质和方法。

技术介绍

[0002]在基于微服务的架构中,用户可以请求访问基于web的应用程序,该应用程序包括一个或多个微服务,和/或由一个或多个微服务支持,以执行应用程序的各种功能。为了使用该应用程序,用户可能必须成功完成认证过程,该认证过程可能涉及在成功认证后创建用户令牌,该令牌可以从应用程序传递到该应用程序所涉及的微服务。微服务也可能必须获得服务令牌,该服务令牌使得微服务或调用微服务(calling microservice)能够调用一个或多个其他微服务、即被调用微服务(called microservice),这可能是执行该应用程序的功能所需的。这种认证方法至少在某些方面被证明是有问题的。
[0003]例如,调用微服务传递给被调用微服务的服务令牌并不表示调用微服务代表用户进行调用。也就是说,被调用微服务只能验证从调用微服务接收的服务令牌,并且在成功验证后,可以由调用微服务访问。在这种情况下,用户令牌只能由调用微服务评估,而不能由被调用微服务评估。因此,即使用户由于某种原因没有被授权使用微服务,也可以访问被调用微服务。
附图说明
[0004]为了描述可以获得本专利技术的至少一些优点和特征的方式,将参考附图中所示的本专利技术的具体实施方式,对本专利技术的实施方式进行更具体的描述。要理解这些附图仅描绘了本专利技术的典型实施方式,因此不应被视为对其范围的限制,将通过使用附图以附加的特征和细节来描述和解释本专利技术的实施方式。
[0005]图1公开了比较示例和操作环境的方面。
[0006]图2公开了在示例操作环境中用于认证的示例方法的方面。
[0007]图3A公开了根据一些实施方式的示例认证过程。
[0008]图3B公开了根据一些实施方式的用于刷新令牌的示例过程。
[0009]图4A和图4B公开了根据一些实施方式的示例令牌的方面。
[0010]图5公开了一种示例认证方法。
[0011]图6公开了可操作以执行所要求保护的方法、过程和操作中的任一者的示例计算实体的方面。
具体实施方式
[0012]本专利技术的实施方式总体涉及认证过程。更具体地,本专利技术的至少一些实施方式涉及用于在基于微服务的架构中认证用户和一个或多个服务的系统、硬件、软件、计算机可读
介质和方法。
[0013]一般而言,可提供本专利技术的示例实施方式以用于创建和使用单个令牌[用户+服务],例如JSON(JavaScript Object Notation,JavaScript对象表示法)Web令牌(JWT),其可使得被调用服务能够认证:(1)调用应用程序的用户,该应用程序使用被调用服务执行功能,以及(2)也可以由该应用程序使用的调用服务,该调用服务结合应用程序的操作来调用被调用服务。在一些实施方式中,单个令牌[用户+服务]可以在预定时间之后到期。如果发生这种情况,如果令牌包含用户配置文件,则调用服务可以再次检查用户授权,或者如果令牌仅包含服务配置文件,则调用服务仅检查被调用服务是否被授权使用。
[0014]如本文所使用的,“令牌”包括但不限于包含配置文件的加密签名防篡改实体。因此,用户令牌可以包括用户配置文件,服务令牌可以包括服务配置文件。用户配置文件可以简要描述用户属性,例如但不限于用户名、电子邮件、组织和组织中的角色。此类属性在本文中可称为用户令牌的“声明”。用户令牌也可以具有其他声明,例如但不限于表示令牌属性的声明,例如令牌颁发者的身份和“iat”(发布于)。服务配置文件可以简要描述服务属性,例如但不限于服务名、服务执行的功能、以及服务执行其功能所依赖的任何服务。服务配置文件的这些属性可以称为服务配置文件的“声明”。
[0015]本专利技术的实施方式,例如本文所公开的示例,在多个方面可能是有益的。例如,并且如从本专利技术中将明显的是,本专利技术的一个或多个实施方式可以以任何组合提供一个或多个有利的和意想不到的效果,其一些示例如下所述。应当注意,这些效果既不旨在也不应被解释为以任何方式限制所要求保护的本专利技术的范围。还应注意,本文中的任何内容都不应被解释为构成任何专利技术或实施方式的必要或不可或缺的元素。而是,所公开的实施方式的各个方面可以以各种方式组合,以便定义进一步的实施方式。这种进一步的实施方式被认为在本专利技术的范围内。同样,在本专利技术的范围内包含的任何实施方式都不应被解释为解决或限制于解决任何的(一个或多个)特定问题。也不应将任何此类实施方式解释为实现或限制于实现任何的(一个或多个)特定技术效果或解决方案。最后,任一实施方式不要求实现本文公开的任何有利的和意想不到的效果。
[0016]例如,本专利技术的一个实施方式可以使得被调用服务意识到调用服务是代表用户进行调用的,该用户已经调用了使用调用服务和被调用服务的应用程序的操作。作为另一示例,一个实施方式可以使得被调用服务能够检查用户的授权和调用服务的授权。在另一示例中,可以允许授权用户使用由用户被授权使用的调用服务调用的服务。作为最后一个示例,一个实施方式可以使得在成功授权后能够重新使用过期令牌。示例实施方式的各种其他特征和优点将从本专利技术中变得明显。
[0017]应注意,本专利技术的实施方式,无论是否要求保护,都不能在人的头脑中实际执行或以其他方式执行。因此,本文中的任何内容都不应被解释为教导或暗示本专利技术的任何实施方式的任何方面可以或将在人的头脑中实际或以其他方式执行。此外,除非本文另有明确指示,否则所公开的方法、过程和操作被设想为由可包括硬件和/或软件的计算系统实现。也就是说,这些方法、过程和操作被定义为计算机实现的。
[0018]A.比较示例的方面
[0019]现在注意图1,为了与本专利技术的示例实施方式进行比较,呈现了示例操作环境100和操作的方面。本专利技术的一些实施方式可以采用示例操作环境100的一部分或全部。然而,
应注意,图1和讨论不旨在以任何方式限制本专利技术的范围。
[0020]在图1的示例中,操作环境100可以包括用户102、一个或多个web应用程序104,每个web应用程序可以与一个或多个服务106和108相关联。该操作环境还可以包括IAM(身份访问管理)身份提供器110。可以在用户102的请求下调用或实例化的web应用程序104可以是容器化应用程序,其功能依赖于服务106和108的操作,这些服务106和108可以包括各自在相应容器中运行的微服务。在一些情况下,服务106可以采取API(应用程序接口)网关而不是微服务的形式。因此,操作环境100可以采取基于容器的架构的形式,例如Kubernetes或Docker。
[0021]在操作上,用户102可以请求访问(1)web应用程序104,响应于该请求,web应用程序可以将该请求重定向(2)到IAM身份提供器110,以认证用户。IAM身份提供器1本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种方法,包括:由身份和访问管理模块从第一服务接收验证用户令牌的请求,所述请求包括服务令牌;由所述身份和访问管理模块对所述用户令牌执行验证过程;当所述验证过程成功时,由所述身份和访问管理模块生成包括所述用户令牌和所述服务令牌的访问令牌;以及由所述身份和访问管理模块向所述第一服务发送所述访问令牌,其中,在第二服务成功验证所述访问令牌后,所述访问令牌能够由所述第一服务使用以获得对所述第二服务的访问权。2.如权利要求1所述的方法,其中,所述请求与所述用户令牌和所述第一服务从容器化应用程序接收的API调用相关联。3.如权利要求1所述的方法,其中,所述第一服务和所述第二服务中的一者或两者包括各自的微服务,所述微服务可操作成执行容器化应用程序的各自功能。4.如权利要求1所述的方法,其中,在接收所述请求之前,所述身份和访问管理模块在已经从用户接收到访问请求的应用程序的请求下执行用户认证过程。5.如权利要求...

【专利技术属性】
技术研发人员:A
申请(专利权)人:戴尔产品有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1