CN115730325A - 一种鉴权方法、装置及计算机可读存储介质 - Google Patents

一种鉴权方法、装置及计算机可读存储介质 Download PDF

Info

Publication number
CN115730325A
CN115730325A CN202111007218.6A CN202111007218A CN115730325A CN 115730325 A CN115730325 A CN 115730325A CN 202111007218 A CN202111007218 A CN 202111007218A CN 115730325 A CN115730325 A CN 115730325A
Authority
CN
China
Prior art keywords
application instance
authentication
identifier
application
identification
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.)
Pending
Application number
CN202111007218.6A
Other languages
English (en)
Inventor
汤亚文
李大维
刘伟伟
吕欢
窦丽莎
徐浩
岳占秋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BOE Technology Group Co Ltd
Original Assignee
BOE Technology Group Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BOE Technology Group Co Ltd filed Critical BOE Technology Group Co Ltd
Priority to CN202111007218.6A priority Critical patent/CN115730325A/zh
Publication of CN115730325A publication Critical patent/CN115730325A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本申请提供了一种鉴权方法、装置及计算机可读存储介质,涉及互联网技术领域,用于使得Eureka技术支持鉴权功能,以提高Eureka技术的安全性。该方法包括:Eureka服务器接收注册请求,注册请求用于请求注册目标应用实例,注册请求包括目标应用实例的第一标识和注册鉴权凭证;Eureka服务器根据注册鉴权凭证,对目标应用实例的第一标识进行鉴权;在第一标识通过鉴权的情况下,Eureka服务器对目标应用实例进行注册。

Description

一种鉴权方法、装置及计算机可读存储介质
技术领域
本申请涉及互联网技术领域,尤其涉及一种鉴权方法、装置及计算机可读存储介质。
背景技术
在软件开发的早期,是将很多功能打包成一个服务来发布。随着互联网的技术发展,一个服务需要承担的功能越来越多,导致软件开发和维护的难度大大增加。对此,业界兴起采用微服务架构的潮流。相比早年面向服务的软件系统,微服务系统对服务的划分更细粒度化。基于微服务架构,一个大型复杂软件应用可以由一个或多个微服务组成,每个微服务可以被独立部署,而且各个微服务之间是松耦合的,即每个微服务的功能尽量单一,各个微服务之间的联系越小越好。因此,微服务架构可以让多个团队同时并行开发多个服务组件,不会因为先后依赖而影响项目总体进度,从而可以提升开发效率。
在微服务架构下,spring cloud Eureka因其强大的注册发现能力被作为微服务架构下采用的服务发现框架,用于管理微服务的独立开发、设计、运行和维护。但是,目前Eureka技术由于不支持鉴权功能,在一些流程上(例如注册流程)存在安全隐患。
发明内容
本申请实施例提供一种鉴权方法、装置及计算机可读存储介质,用于使得Eureka技术支持鉴权功能,以提高Eureka技术的安全性。
第一方面,本申请提供了一种鉴权方法,包括:Eureka服务器接收注册请求,注册请求用于请求注册目标应用实例,注册请求包括目标应用实例的第一标识和注册鉴权凭证;Eureka服务器根据注册鉴权凭证,对目标应用实例的第一标识进行鉴权;在第一标识通过鉴权的情况下,Eureka服务器对目标应用实例进行注册。
本申请所提供的鉴权方法,在Eureka服务器注册目标应用实例的过程中,可以根据客户端发送的注册鉴权凭证对目标应用实例的第一标识进行鉴权,并在鉴权成功的情况下,Eureka服务器对目标应用实例进行注册。从而使得Eureka服务器进行注册时具有鉴权功能,提高了Eureka技术注册过程中的安全性。
在一些实施例中,该方法还包括:在第一标识未通过鉴权的情况下,Eureka服务器向Eureka客户端发送用于表示注册失败的响应信息。
在一些实施例中,Eureka服务器根据注册鉴权凭证,对第一标识进行鉴权,包括:Eureka服务器向鉴权服务器发送注册鉴权凭证和第一标识;Eureka服务器接收鉴权服务器发送的鉴权结果,鉴权结果用于指示第一标识是否通过鉴权。
在一些实施例中,Eureka服务器根据注册鉴权凭证,对第一标识进行鉴权,包括:Eureka服务器对注册鉴权凭证进行解密,获取目标应用实例的第二标识;Eureka服务器比较第一标识与第二标识是否一致;若第一标识与第二标识一致,则Eureka服务器确定第一标识通过鉴权;若第一标识与第二标识不一致,则Eureka服务器确定第一标识未通过鉴权。
在一些实施例中,Eureka服务器根据注册鉴权凭证,对第一标识进行鉴权,包括:Eureka服务器向鉴权服务器发送注册鉴权凭证;Eureka服务器接收鉴权服务器发送的目标应用实例的第二标识,第二实例是通过解密注册鉴权凭证获得的。Eureka服务器比较第一标识与第二标识是否一致;若第一标识与第二标识一致,则Eureka服务器确定第一标识通过鉴权;若第一标识与第二标识不一致,则Eureka服务器确定第一标识未通过鉴权。
在一些实施例中,注册鉴权凭证是根据目标应用实例的第二标识和加密参数加密得到的。
在一些实施例中,用于生成注册鉴权凭证的加密算法包括对称加密算法。
第二方面,本申请提供了一种鉴权方法,包括:客户端获取目标应用实例的第一标识,和目标应用实例的注册鉴权凭证;客户端向Eureka服务器发送注册请求,注册请求用于请求注册目标应用实例,注册请求包括第一标识和注册鉴权凭证。
本申请所提供的鉴权方法,客户端在注册目标应用实例之前,获取目标应用实例的第一标识,和目标应用实例的注册鉴权凭证,从而可以在注册目标应用实例时,将第一标识和注册鉴权凭证发送给Eureka服务器,使得Eureka服务器可以根据第一标识和注册鉴权凭证进行鉴权。也即,客户端可以将具备鉴权功能的注册请求发送给Eureka服务器,从而使得Eureka服务器进行注册时具有鉴权功能,提高了Eureka注册过程中的安全性。
在一些实施例中,在客户端获取目标应用实例的第一标识,和目标应用实例的注册鉴权凭证之前,该方法还包括:客户端向微服务应用平台发送创建目标应用实例的请求;客户端接收微服务应用平台发送的表示目标应用实例创建成功的响应信息,响应信息包括第一标识和注册鉴权凭证。
在一些实施例中,注册鉴权凭证是根据目标应用实例的第二标识和加密参数加密得到的。
在一些实施例中,用于生成注册鉴权凭证的加密算法包括对称加密算法。
第三方面,本申请提供了一种鉴权方法,包括:第一应用实例接收第二应用实例发送的调用请求,调用请求用于表示第二应用实例请求调用第一应用实例;第一应用实例对调用请求进行鉴权;在调用请求通过鉴权的情况下,第一应用实例为第二应用实例提供服务。
本申请所提供的鉴权方法,在第二应用实例调用第一应用实例的过程中,第一应用实例可以对第二应用实例发送的调用请求进行鉴权,并在鉴权成功后,第一应用实例为第二应用实例提供服务,使得在Eureka技术应用实例的调用过程中具有鉴权功能,提高了Eureka技术应用实例调用过程中的安全性。
在一些实施例中,该方法还包括:在调用请求未通过鉴权的情况下,第一应用实例向第二应用实例发送表示拒绝调用的响应信息。
在一些实施例中,调用请求包括第一应用实例的第一标识、第二应用实例的第一标识以及调用鉴权凭证;第一应用实例对调用请求进行鉴权,包括以下实现方式中的至少一种:第一应用实例根据调用鉴权凭证,对第一应用实例的第一标识和第二应用实例的第一标识进行鉴权;或者,第一应用实例查询第二应用实例和第一应用实例之间是否存在订阅关系。
在一些实施例中,该方法还包括:在满足预设条件的情况下,第一应用实例确定调用请求通过鉴权;在不满足预设条件的情况下,第一应用实例确定调用请求未通过鉴权。预设条件包括以下一项或者多项:第一应用实例的第一标识通过鉴权;第二应用实例的第一标识通过鉴权;或者,第二应用实例和第一应用实例之间存在订阅关系。
在一些实施例中,第一应用实例根据调用鉴权凭证,对第一应用实例的第一标识和第二应用实例的第一标识进行鉴权,包括:第一应用实例向鉴权服务器发送第一应用实例的第一标识、第二应用实例的第一标识以及调用鉴权凭证;第一应用实例接收鉴权服务器发送的鉴权结果,鉴权结果用于指示第一应用实例的第一标识是否通过鉴权,以及第二应用实例的第一标识是否通过鉴权。
在一些实施例中,第一应用实例根据调用鉴权凭证,对第一应用实例的第一标识和第二应用实例的第一标识进行鉴权,包括:第一应用实例对调用鉴权凭证进行解密,获取第一应用实例的第二标识和第二应用实例的第二标识;第一应用实例比较第一应用实例的第一标识和第一应用实例的第二标识是否一致,以及比较第二应用实例的第一标识和第二应用实例的第二标识是否一致;若第一应用实例的第一标识和第一应用实例的第二标识一致,第一应用实例确定第一应用实例的第一标识通过鉴权;否则,第一应用实例确定第一应用实例的第一标识未通过鉴权;若第二应用实例的第一标识和第二应用实例的第二标识一致,第一应用实例确定第二应用实例的第一标识通过鉴权;否则,第一应用实例确定第二应用实例的第一标识未通过鉴权。
在一些实施例中,第一应用实例根据调用鉴权凭证,对第一应用实例的第一标识和第二应用实例的第一标识进行鉴权,包括:第一应用实例向鉴权服务器发送调用鉴权凭证;第一应用实例接收鉴权服务器发送的第一应用实例的第二标识和第二应用实例的第二标识,第一应用实例的第二标识和第二应用实例的第二标识是通过解密调用鉴权凭证获得的;第一应用实例比较第一应用实例的第一标识和第一应用实例的第二标识是否一致,以及比较第二应用实例的第一标识和第二应用实例的第二标识是否一致;若第一应用实例的第一标识和第一应用实例的第二标识一致,第一应用实例确定第一应用实例的第一标识通过鉴权;否则,第一应用实例确定第一应用实例的第一标识未通过鉴权;若第二应用实例的第一标识和第二应用实例的第二标识一致,第一应用实例确定第二应用实例的第一标识通过鉴权;否则,第一应用实例确定第二应用实例的第一标识未通过鉴权。
在一些实施例中,第一应用实例查询第二应用实例和第一应用实例之间是否存在订阅关系,包括:第一应用实例向微服务应用平台发送查询请求,查询请求用于查询第二应用实例和第一应用实例之间是否存在订阅关系,查询请求包括第一应用实例的第一标识和第二应用实例的第一标识;第一应用实例接收微服务应用平台发送的查询响应,查询响应用于指示第二应用实例和第一应用实例之间是否存在订阅关系。
在一些实施例中,调用鉴权凭证是根据第一应用实例的第二标识、第二应用实例的第二标识以及加密参数加密生成的。
在一些实施例中,生成调用鉴权凭证的算法包括对称加密算法。
第四方面,本申请提供了一种鉴权方法,包括:第二应用实例获取调用鉴权凭证、第一应用实例的第一标识、以及第二应用实例的第一标识;第二应用实例向第一应用实例发送调用请求,调用请求用于表示第二应用实例请求调用第一应用实例,调用请求包括第一应用实例的第一标识、第二应用实例的第一标识以及调用鉴权凭证。
本申请所提供的鉴权方法,在第二应用实例向第一应用实例发送的调用请求中,包括第一应用实例的第一标识、第二应用实例的第一标识以及调用鉴权凭证,从而第一应用实例可以根据第一应用实例的第一标识、第二应用实例的第一标识以及调用鉴权凭证,对第二应用实例进行鉴权。从而使得在Eureka技术应用实例的调用过程中具有鉴权功能,提高了Eureka技术应用实例调用过程中的安全性。
在一些实施例中,在第二应用实例获取调用鉴权凭证、第一应用实例的第一标识、以及第二应用实例的第一标识之前,方法还包括:第二应用实例向微服务应用平台发送订阅请求,订阅请求用于表示第二应用实例订阅第一应用实例;第二应用实例接收微服务应用平台发送的表示同意订阅的响应信息,响应信息包括调用鉴权凭证。
在一些实施例中,调用鉴权凭证是根据第一应用实例的第二标识、第二应用实例的第二标识以及加密参数加密生成的。
在一些实施例中,生成调用鉴权凭证的算法包括对称加密算法。
第五方面,本申请实施例中还提供一种鉴权装置,该鉴权装置包括用于实现上述第一方面至第四方面中任一方面及其任意一种可能的实施例中所述的鉴权方法的模块。
第六方面,本申请实施例中还提供一种鉴权装置,包括:通信接口和处理器。通信接口和处理器用于实现上述第一方面至第四方面中任一方面及其任意一种可能的实施例中所述的鉴权方法。
第七方面,本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机指令,当计算机指令被执行时,实现上述第一方面至第四方面中任一方面及其任意一种可能的实施例中所述的鉴权方法。
第八方面,本申请实施例中还提供一种计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面至第四方面中任一方面及其任意一种可能的实施例中所述的鉴权方法。
上述第五方面至第八方面中任一种设计所带来的技术效果可以参见第一方面至第四方面对应的任意一种可能的实施例所带来的技术效果,此处不再赘述。
附图说明
为了更清楚地说明本申请中的技术方案,下面将对本申请一些实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例的附图,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。此外,以下描述中的附图可以视作示意图,并非对本申请实施例所涉及的产品的实际尺寸、方法的实际流程等的限制。
图1为本申请实施例提供的一种微服务架构图;
图2为本申请实施例提供的一种鉴权方法的流程示意图;
图3为本申请实施例提供的另一种鉴权方法的流程示意图;
图4为本申请实施例提供的另一种鉴权方法的流程示意图;
图5为本申请实施例提供的另一种鉴权方法的流程示意图;
图6为本申请实施例提供的一种鉴权装置的结构示意图;
图7为本申请实施例提供的另一种鉴权装置的结构示意图。
具体实施方式
下面将结合附图,对本申请一些实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请所提供的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。
除非上下文另有要求,否则,在整个说明书和权利要求书中,术语“包括”被解释为开放、包含的意思,即为“包含,但不限于”。在说明书的描述中,术语“一个实施例”、“一些实施例”、“示例性实施例”、“示例”或“一些示例”等旨在表明与该实施例或示例相关的特定特征、结构、材料或特性包括在本申请的至少一个实施例或示例中。上述术语的示意性表示不一定是指同一实施例或示例。此外,所述的特定特征、结构、材料或特点可以以任何适当方式包括在任何一个或多个实施例或示例中。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在描述一些实施例时,可能使用了“连接”及其衍伸的表达。例如,描述一些实施例时可能使用了术语“连接”以表明两个或两个以上部件彼此间有直接物理接触或电接触。这里所发明的实施例并不必然限制于本文内容。
“A、B和C中的至少一个”与“A、B或C中的至少一个”具有相同含义,均包括以下A、B和C的组合:仅A,仅B,仅C,A和B的组合,A和C的组合,B和C的组合,及A、B和C的组合。
“A和/或B”,包括以下三种组合:仅A,仅B,及A和B的组合。
本文中“适用于”或“被配置为”的使用意味着开放和包容性的语言,其不排除适用于或被配置为执行额外任务或步骤的设备。
另外,“基于”的使用意味着开放和包容性,因为“基于”一个或多个所述条件或值的过程、步骤、计算或其他动作在实践中可以基于额外条件或超出所述的值。
如背景技术所述,目前Eureka技术由于不支持鉴权功能,在一些流程上(例如注册流程)存在安全隐患。
例如,目前,在注册流程中,Eureka技术不具有鉴权功能。Eureka服务器在注册发现过程中,无法识别客户端以及应用实例的合法性,使得Eureka服务器在对客户端的应用实例进行注册时存在较大安全隐患。
基于此,本申请实施例提供了一种鉴权方法,该方法通过设置注册鉴权凭证,使得Eureka服务器在注册发现过程中,Eureka服务器与客户端的交互信息携带有注册鉴权凭证,从而Eureka服务器可以根据注册鉴权凭证和待注册的应用实例的标识,对应用实例进行鉴权,从而确定应用实例的合法性,提高Eureka技术注册过程的安全性。
在本申请实施例中,微服务可以通过应用实例来实现。也即,客户端可以通过部署微服务的应用实例,来实现部署微服务。应理解,一个微服务可以包括一个或多个应用实例。
另外,目前,在调用流程中,Eureka技术不具有鉴权功能。服务消费者(以第二客户端为例)的应用实例在调用服务提供者(以第一客户端为例)的应用实例过程中,第一应用实例无法识别第二应用实例的合法性,导致第一应用实例可能会为非法的第二应用实例提供调用服务,存在较大安全隐患。
基于此,本申请实施例提供了一种鉴权方法,该方法通过设置调用鉴权凭证,使得客户端的应用实例的调用过程中,参与调用过程的不同应用实例之间的交互信息携带有调用鉴权凭证,从而被调用的应用实例可以根据调用鉴权凭证和参与调用过程的客户端的应用实例的标识信息,对应用实例进行鉴权,从而确定调用过程中应用实例的合法性,提高Eureka技术调用过程的安全性。
在本申请实施例中,一个微服务调用另一个微服务,可以具体实现为:一个微服务的应用实例调用另一个微服务的应用实例。
如图1所示,本申请实施例提供了一种适用于上述鉴权方法的微服务架构。该微服务架构包括Eureka服务器。
Eureka服务器用于对客户端中的微服务进行注册。示例性的,Eureka服务器可以对第一客户端提供的微服务10进行注册。
在一些实施例中,Eureka服务器设置有Eureka注册列表。Eureka注册列表用于存储客户端提供的微服务的注册信息。例如,Eureka注册列表存储有第一客户端提供的微服务10的注册信息。
应理解,客户端可以向Eureka服务器发送用于指示查询Eureka注册列表的查询请求,以获取可以为该客户端提供微服务的客户端的注册信息。例如,第二客户端可以向Eureka服务器发送用于查询微服务10的查询请求。第二客户端可以接收Eureka服务器发送的携带有微服务10的注册信息的查询响应。从而第二客户端可以根据微服务10的注册信息,调用微服务10提供的微服务。
该微服务架构还包括一个或多个客户端,如图1中的第一客户端,第二客户端,第三客户端。其中,客户端用于为微服务提供内存资源,中央处理器(central processingunit,CPU)资源,硬盘资源。示例性的,客户端可以是个人计算机,服务器,工作站等。
该微服务架构中的客户端可以为其他客户端提供微服务。示例性的,第一客户端可以为第二客户端提供微服务。例如,微服务的应用实例(micro service,MS)11可以为微服务的应用实例MS21提供微服务。
该微服务架构中的客户端还可以调用其他客户端中的微服务。示例性的,第二客户端可以调用第一客户端中的微服务。例如,MS21可以调用MS11提供的支付微服务。
该微服务架构中的客户端可以建立多个同一微服务的多个应用实例。示例性的,为了防止应用实例故障导致的微服务不能正常工作的问题,第一客户端可以同时建立MS11、MS12、MS13为其他应用实例提供微服务。又一示例性的,为了实现不同应用实例对同一微服务的调用问题,第一客户端可以建立MS11为MS21提供微服务,建立MS12和MS13为MS31提供微服务。
应理解,基于上述不同客户端之间微服务的调用过程,可以实现不同的业务流程。假设,微服务10为支付微服务,MS11、MS12、MS13为支付微服务的应用实例。微服务20为订单微服务,MS21、MS22、MS23为订单微服务的应用实例。微服务30为物流微服务,MS31、MS32、MS33为物流微服务的应用实例。
如表1所示,本申请提供的由不同微服务组合实现的业务流程。例如,MS21通过调用MS11可以实现订单支付业务。又例如,MS22通过调用MS21可以实现订单评价业务。又例如,MS23通过调用MS31可以实现订单物流浏览业务。
表1
业务名称 微服务名称
订单支付业务 订单微服务+支付微服务
订单物流浏览业务 订单微服务+物流微服务
在一些实施例中,多个微服务可以设置于同一客户端上。示例性的,微服务10可以与其他微服务一起设置于第一客户端上。
在另一些实施例中,多个微服务可以设置于不同客户端上。示例性的,微服务20设置于第二客户端上,微服务30设置于第三客户端上。
可以理解的是,一方面,多个微服务可以设置于不同客户端上。可以减少客户端的资源消耗。例如,在MS21通过调用MS11实现订单支付业务的过程中,MS11设置于第一客户端,MS21设置于第二客户端。第二客户端不需要执行MS11,从而减少第二客户端的资源消耗。另一方面,同类微服务的应用实例可以设置于一个或多个客户端,可以提供微服务的服务效率,进一步减少客户端的资源消耗。
在一些实施例中,该微服务架构还包括微服务应用平台。微服务应用平台用于在接收到客户端的创建应用实例的请求后,创建应用实例。
在一些实施例中,该微服务架构还包括鉴权服务器。鉴权服务器用于生成鉴权凭证,以及还可以用于对鉴权凭证进行鉴权。例如,对注册鉴权凭证或调用鉴权凭证进行鉴权,以确定对应的客户端是否合法。
在一些实施例中,该微服务架构还包括配置中心。配置中心用于在客户端的应用实例的注册和调用过程中,为注册过程和调用过程中的客户端、Eureka服务器、以及应用实例配置参数。
下面结合本申请实施例提供的附图,对本申请实施例提供的鉴权方法进行详细描述。
为了保证注册流程的安全性,如图2所示,本申请实施例提供一种鉴权方法,该方法包括步骤S101-S105:
S101、客户端获取目标应用实例的第一标识,和目标应用实例的注册鉴权凭证。
其中,目标应用实例即微服务的应用实例。示例性的,目标应用实例可以为MS11,MS21,或者MS31,对此不作限定。
本申请实施例中,第一标识作为客户端的目标应用实例的身份信息,用于表征客户端的目标应用实例。客户端可以通过第一标识与Eureka服务器、微服务应用平台、配置中心、鉴权服务器进行交互。
示例性的,第一标识可以为分配给目标应用实例的APP ID。
在一些实施例中,对于客户端来说,第一标识可以根据客户端中预先存储的Eureka配置文件确定。示例性的,客户端预先存储有多个应用实例的Eureka配置文件,客户端可以根据目标应用实例的Eureka配置文件,查找到第一标识。
在另一些实施例中,对于客户端来说,第一标识还可以根据客户端与Eureka服务器、微服务应用平台、配置中心、鉴权服务器之间的交互文件确定。示例性的,客户端可以根据微服务应用平台提供的sdk文件查找到第一标识。
本申请实施例中,注册鉴权凭证用于指示客户端的目标应用实例在注册时的权限信息。例如,Eureka服务器可以通过注册鉴权凭证对第一标识进行鉴权。
在一些实施例中,对于客户端来说,注册鉴权凭证可以根据客户端中预先存储的Eureka配置文件确定。示例性的,客户端预先存储有多个应用实例的Eureka配置文件,客户端可以根据目标应用实例的Eureka配置文件,查找到注册鉴权凭证。
在另一些实施例中,对于客户端来说,注册鉴权凭证还可以根据客户端与Eureka服务器、微服务应用平台、配置中心、鉴权服务器之间的交互文件确定。示例性的,客户端可以根据微服务应用平台提供的sdk文件查找到注册鉴权凭证。
本申请实施例中,注册鉴权凭证可以为根据目标应用实例的第二标识加密得到的。
可选的,注册鉴权凭证还可以为根据目标应用实例的第二标识以及加密参数(例如时间戳和/或盐)加密得到的。其中,盐是指n位随机数,n为正整数。应理解,通过在加密过程中加入时间戳和/或盐,提高注册鉴权凭证的生成随机性,从而可以减小注册鉴权凭证被破解的概率,进而提高Eureka注册过程中的安全性。
示例性的,第二标识可以为目标应用实例在建立时生成的。例如,微服务应用平台在建立目标应用实例时,生成第二标识。
示例性的,时间戳可以为第二标识的生成时间,或者,时间戳还可以为生成注册鉴权凭证的指令的时间,在此不作赘述。
示例性的,用于生成注册鉴权凭证的加密算法包括对称加密算法、非对称加密算法等,在此不作赘述。其中,采用对称加密算法来生成注册鉴权凭证,其优势在于:加/解密速度快、密码管理简单等。
S102、Eureka服务器接收注册请求。
其中,注册请求用于请求注册目标应用实例。应理解,目标应用实例可以是任意一个应用实例。示例性的,结合图1进行举例说明,目标应用实例可以为MS11,MS21,或者MS31,对此不作限定。
本申请实施例中,注册请求可以包括目标应用实例的第一标识和注册鉴权凭证。
其中,第一标识和注册鉴权凭证,可以参考步骤S101中的相关描述,在此不再赘述。
在一些实施例中,注册请求还可以包括其他参数。例如,Eureka服务器的标识信息,注册鉴权凭证的加密方式,目标应用实例的建立时间,注册请求的发送时间,在此不再赘述。
作为一种可能的实现方式,在目标应用实例确定需要进行注册的情况下,目标应用实例向Eureka服务器发送注册请求,相应的,Eureka服务器接收目标应用实例发送的注册请求。示例性的,Eureka服务器接收应用实例MS11发送的注册请求。
作为另一种可能的实现方式,在客户端确定目标应用实例需要注册的情况下,客户端向Eureka服务器发送注册请求,相应的,Eureka服务器接收客户端发送的注册请求。示例性的,Eureka服务器接收第一客户端发送的注册请求。
应理解,正常情况下,目标应用实例的第一标识与目标应用实例的第二标识是相同的。但是,在一些特殊情况下,例如客户端不是合法的客户端,或者客户端发送的注册请求被篡改,这可能导致Eureka服务器从注册请求中获取到的目标应用实例的第一标识不同于注册鉴权凭证解密后得到的目标应用实例的第二标识。
因此,Eureka服务器可以通过对目标应用实例的第一标识进行鉴权,以验证客户端和目标应用实例的合法性,以及注册请求是否被篡改。
S103、Eureka服务器根据注册鉴权凭证,对目标应用实例的第一标识进行鉴权。
在一些实施例中,可以通过修改Eureka服务器的addInstance接口,使得Eureka服务器可以在进行服务注册之前,先进行注册权限的校验。
可选的,步骤S103可以采用以下实现方式中的任意一种:
实现方式一:Eureka服务器向鉴权服务器发送注册鉴权凭证和第一标识,Eureka服务器接收鉴权服务器发送的鉴权结果。相应的,鉴权服务器接收Eureka服务器发送的注册鉴权凭证和第一标识,鉴权服务器向Eureka服务器鉴权结果。
在一些实施例中,在鉴权服务器接收Eureka服务器发送的注册鉴权凭证和第一标识之后,鉴权服务器可以根据注册鉴权凭证和第一标识,确定鉴权结果。
示例性的,鉴权服务器可以对注册鉴权凭证进行解密,获取目标应用实例的第二标识,比较第一标识与第二标识是否一致。若一致,则鉴权服务器确定第一标识通过鉴权;若不一致,则鉴权服务器确定第一标识未通过鉴权。
其中,鉴权结果用于指示第一标识是否通过鉴权。示例性的,鉴权结果可以包括第一标识通过鉴权的指示信息,或者鉴权结果可以包括第一标识未通过鉴权的指示信息。
如此,Eureka服务器可以通过调用鉴权服务器,由鉴权服务器实现对第一标识的鉴权,从而避免Eureka服务器在注册过程中无法控制权限的问题,提高Eureka服务器在注册过程的安全性。
实现方式二:Eureka服务器对注册鉴权凭证进行解密,获取目标应用实例的第二标识,并比较第一标识与第二标识是否一致。若第一标识与第二标识一致,则Eureka服务器确定第一标识通过鉴权。若第一标识与第二标识不一致,则Eureka服务器确定第一标识未通过鉴权。
如此一来,本申请实施例通过改进Eureka服务器的源码,使得Eureka服务器具有对目标应用实例的第一标识的鉴权功能,并在Eureka服务器的注册过程中实现目标应用实例的权限控制,提高Eureka服务器在注册过程的安全性。
实现方式三:Eureka服务器向鉴权服务器发送注册鉴权凭证。鉴权服务器向Eureka服务器发送目标应用实例的第二标识。Eureka服务器比较第一标识与第二标识是否一致。若第一标识与第二标识一致,则Eureka服务器确定第一标识通过鉴权。若第一标识与第二标识不一致,则Eureka服务器确定第一标识未通过鉴权。
其中,第二标识是通过解密注册鉴权凭证获得的。例如,鉴权服务器可以对注册鉴权凭证进行解密,获取目标应用实例的第二标识。
在本申请实施例中,第一标识通过鉴权,表示鉴权成功,Eureka服务器确定客户端的目标应用实例具有注册权限。第一标识未通过鉴权,表示鉴权失败,Eureka服务器确定客户端的目标应用实例不具有注册权限。
如此一来,Eureka服务器可以根据第一标识和第二标识,确定目标应用实例的权限,解决Eureka服务器的注册过程的权限控制问题,提高Eureka服务器在注册过程的安全性。
可选的,在目标应用实例的第一标识通过鉴权的情况下,执行下述步骤S104;在目标应用实施例的第一标识未通过鉴权的情况下,执行下述步骤S105。
S104、Eureka服务器对目标应用实例进行注册。
在一些实施例中,在目标应用实例的第一标识通过鉴权的情况下,Eureka服务器向客户端发送用于表示注册成功的响应信息。相应的,客户端接收Eureka服务器发送的用于表示注册成功的响应信息。
在另一些实施例中,在目标应用实例的第一标识通过鉴权的情况下,Eureka服务器向目标应用实例发送用于表示注册成功的响应信息。相应的,目标应用实例接收Eureka服务器发送的用于表示注册成功的响应信息。
其中,该响应消息可以包括目标应用实例的第一标识,对应的客户端标识、注册时间等注册信息。
在一些实施例中,在Eureka服务器对目标应用实例进行注册之后,Eureka服务器还可以更新Eureka注册列表。
其中,Eureka注册列表可以包括Eureka服务器对于目标应用实例的注册信息。示例性的,Eureka注册列表可以包括Eureka服务器的标识,客户端的标识信息,目标应用实例的标识信息、注册鉴权凭证、注册时间、IP地址、端口标识等信息。
可以理解的是,更新后的Eureka注册列表保存有Eureka服务器中最新的应用实例的注册信息。从而客户端、微服务应用平台、鉴权服务器、配置中心可以通过与Eureka服务器交互,以浏览Eureka服务器中最新的应用实例的注册信息。
S105、Eureka服务器向客户端发送用于表示注册失败的响应信息。相应的,客户端接收Eureka服务器发送的用于表示注册失败的响应信息。
在一些实施例中,第一标识未通过授权,则表示鉴权失败,Eureka服务器确定客户端的目标应用实例不具有注册权限。从而,Eureka服务器拒绝对目标应用实例进行注册。
基于图2所示的实施例提供的鉴权方法,在Eureka服务器注册目标应用实例的过程中,可以根据客户端发送的注册鉴权凭证对目标应用实例的第一标识进行鉴权,并在鉴权成功的情况下,Eureka服务器对目标应用实例进行注册。从而使得Eureka服务器进行注册时具有鉴权功能,提高了Eureka注册过程中的安全性。
可选的,基于图2所示的鉴权方法,如图3所示,在步骤S101之前,该方法还包括步骤S201-S202。
S201、客户端向微服务应用平台发送创建目标应用实例的请求。相应的,微服务应用平台接收客户端发送的创建目标应用实例的请求。
在一些实施例中,创建目标应用实例的请求可以包括客户端的标识信息,用于表征客户端。
在一些实施例中,创建目标应用实例的请求还可以包括目标应用实例的特征信息,用于指示微服务应用平台创建目标应用实例。
示例性的,第一客户端可以向微服务应用平台发送创建微服务10的应用实例的请求。
S202、微服务应用平台向客户端发送表示目标应用实例创建成功的响应信息。相应的,客户端接收微服务应用平台发送的表示目标应用实例创建成功的响应信息。
其中,响应信息可以包括第二标识和注册鉴权凭证。第二标识和注册鉴权凭证的相关描述,可以参考步骤S101中的相关描述,在此不再赘述。
应理解,如果客户端是合法的,客户端从该响应信息中获取到的目标应用实例的第二标识,即为后续发送的注册请求中携带的目标应用实例的第一标识。
可选的,微服务应用平台在接收到创建目标应用实例的请求之后,确定目标应用实例的第一标识,从而创建目标应用实例。
在一些实施例中,如图3所示,目标应用实例的具体创建过程可以包括步骤A1-A4。
A1、微服务应用平台确定目标应用实例的第二标识。
A2、微服务应用平台向鉴权服务器发送第二标识。
在一些实施例中,微服务应用平台可以向鉴权服务器发送注册令牌,该注册令牌中携带有第二标识,从而实现向鉴权服务器发送第二标识。
示例性的,注册令牌中还可以携带有加密参数(如时间戳和/或随机数),以对第一标识进行加密。其中,时间戳可以为第二标识的生成时间,或注册令牌的发送时间。
A3、鉴权服务器根据第二标识确定注册鉴权凭证。
在一些实施例中,鉴权服务器可以对第二标识进行加密,生成注册鉴权凭证。或者,鉴权服务器可以对第二标识和加密参数(例如时间戳和/或盐)进行加密,生成注册鉴权凭证。
A4、鉴权服务器向微服务应用平台发送注册鉴权凭证。相应的,微服务应用平台接收来自于鉴权服务器的注册鉴权凭证。
如此,在目标应用实例的创建过程中,微服务应用平台可以通过鉴权服务器为目标应用实例设置第二标识和注册鉴权凭证,使得Eureka服务器在目标应用实例的注册过程中,可以基于目标应用实例的第二标识和注册鉴权凭证对客户端进行鉴权,提高Eureka技术的安全性。
为了保证调用过程的安全性,如图4所示,本申请实施例还提供另一种鉴权方法,该方法包括步骤S301-S305:
S301、第二应用实例获取调用鉴权凭证、第一应用实例的第一标识、以及第二应用实例的第一标识。
其中,第一应用实例和第二应用实例是微服务架构中不同的客户端。示例性的,第一应用实例可以为客户端03,第二应用实例可以为客户端01。
本申请实施例中,第一应用实例的第一标识,作为第一应用实例的身份信息,用于表征第一应用实例。第一应用实例可以通过第一应用实例的第一标识与Eureka服务器、微服务应用平台、配置中心、鉴权服务器进行交互。
第二应用实例的第一标识,作为第二应用实例的身份信息,用于表征第二应用实例。第二应用实例可以通过第二应用实例的第一标识与Eureka服务器、微服务应用平台、配置中心、鉴权服务器进行交互。
第一应用实例的第一标识和第二应用实例的第一标识的详细描述,可以参考步骤S101中对目标应用实施例的第一标识的相关描述,此处不再赘述。
本申请实施例中,第一应用实例和第二应用实例为微服务架构中的任意两个应用实例。示例性的,第一应用实例和第二应用实例可以为同一客户端中的两个应用实例。例如,第一应用实例为第一客户端中MS11,第二应用实例为第一客户端中MS21。又一示例性的,第一应用实例和第二应用实例可以分别为不同客户端中的两个应用实例。例如,第一应用实例为第一客户端中MS11,第二应用实例为第二客户端中MS21。
本申请实施例中,调用鉴权凭证用于校验第二应用实例对第一应用实例的调用权限信息。
在一些实施例中,对于第二应用实例来说,调用鉴权凭证可以根据客户端中预先存储的Eureka配置文件确定。示例性的,客户端预先存储有多个应用实例的Eureka配置文件,第二应用实例可以根据第二应用实例的Eureka配置文件,查找到调用鉴权凭证。
在另一些实施例中,对于第二应用实例来说,调用鉴权凭证还可以根据客户端与Eureka服务器、微服务应用平台、配置中心、鉴权服务器之间的交互文件确定。示例性的,第二应用实例可以根据微服务应用平台提供的sdk文件查找到调用鉴权凭证。
在一些实施例中,调用鉴权凭证可以由第二应用实例直接确定。例如,第二应用实例根据Eureka配置文件或sdk文件,直接确定调用鉴权凭证。
在另一些实施例中,调用鉴权凭证还可以由客户端确定之后,第二应用实例接收客户端发送的调用鉴权凭证。例如,第二应用实例可以向客户端发送用于确定调用鉴权凭证的请求信息,并接收客户端发送的携带有调用鉴权凭证的响应信息。
本申请实施例中,调用鉴权凭证可以为根据第一应用实例的第二标识,第二应用实例的第二标识加密生成的。
可选的,调用鉴权凭证还可以为根据第一应用实例的第二标识,第二应用实例的第二标识以及加密参数(例如时间戳和/或盐)加密得到的。其中,盐是指n位随机数。应理解,通过在加密过程中加入时间戳和/或盐,可以减小调用鉴权凭证被破解的几率,从而提高Eureka调用过程中的安全性。
示例性的,第一应用实例的第二标识可以为第一应用实例在建立时生成的。第二应用实例的第二标识可以为第二应用实例在建立时生成的。例如,微服务应用平台在建立第一应用实例时,生成第一应用实例的第二标识。微服务应用平台在建立第二应用实例时,生成第二应用实例的第二标识。
示例性的,时间戳可以为第一应用实例的第二标识或第二应用实例的第二标识的生成时间,或者,时间戳还可以为生成调用鉴权凭证的指令的时间,在此不作赘述。
示例性的,用于生成调用鉴权凭证的加密算法包括对称加密算法、非对称加密算法等,在此不作赘述。其中,采用对称加密算法来生成调用鉴权凭证,其优势在于:加/解密速度快、密码管理简单等。
S302、第二应用实例向第一应用实例发送调用请求。相应的,第一应用实例接收第二应用实例发送的调用请求。
其中,调用请求用于表示第二应用实例配置的第二应用实例请求调用第一应用实例配置的第一应用实例。
在一些实施例中,调用请求可以包括第一应用实例的第一标识、第二应用实例的第一标识以及调用鉴权凭证。
应理解,一般情况下,第一应用实例的第一标识与第一应用实例的第二标识是相同的,第二应用实例的第一标识与第二应用实例的第二标识是相同的。但是,在一些特殊情况下,例如第二应用实例不是合法的客户端,或者第二应用实例发送的调用请求被篡改,这可能导致第一应用实例从调用请求中获取到的第一应用实例的第一标识不同于调用鉴权凭证解密后得到的第一应用实例的第二标识,和/或,第二应用实例的第一标识不同于调用鉴权凭证解密后得到的第二应用实例的第二标识。
因此,第一应用实例可以通过对第一应用实例的第一标识和第二应用实例的第一标识进行鉴权,以验证第二应用实例是否合法客户端,以及调用请求是否被篡改。
示例性的,假设,应用实例MS21向应用实例MS11发送调用请求,以请求调用MS11提供的支付微服务。由于,应用实例MS11不能确定应用实例MS21的合法性。因此,应用实例MS11需要对应用实例MS11的第一标识,和应用实例MS21的第一标识进行鉴权,以验证应用实例MS21的合法性,以及确定调用请求是否被篡改。
S303、第一应用实例对调用请求进行鉴权。
本申请实施例中,第一应用实例对调用请求进行鉴权,包括以下实现方式中的至少一种:
实现方式1、第一应用实例根据调用鉴权凭证,对第一应用实例的第一标识和第二应用实例的第一标识进行鉴权。
实现方式2、第一应用实例查询第一应用实例和第二应用实例之间是否存在订阅关系。
应理解,在对调用请求进行鉴权采用实现方式1和实现方式2的情况下,不限定实现方式1和实现方式2的执行顺序。
下面具体说明第一应用实例根据调用鉴权凭证,对第一应用实例的第一标识和第二应用实例的第一标识进行鉴权的实现方式。
实现方式1-1、第一应用实例向鉴权服务器发送第一应用实例的第一标识、第二应用实例的第一标识以及调用鉴权凭证。第一应用实例接收鉴权服务器发送的鉴权结果,鉴权结果用于指示第一应用实例的第一标识是否通过鉴权,以及第二应用实例的第一标识是否通过鉴权。
在一些实施例中,鉴权服务器可以对接收到的调用鉴权凭证进行解密,获取第一应用实例的第二标识、以及第二应用实例的第二标识。鉴权服务器比较第一应用实例的第一标识和第一应用实例的第二标识是否一致,以及比较第二应用实例的第一标识和第二应用实例的第二标识是否一致。
若第一应用实例的第一标识和第一应用实例的第二标识一致,鉴权服务器可以确定第一应用实例的第一标识通过鉴权;否则,鉴权服务器可以确定第一应用实例的第一标识未通过鉴权。
若第二应用实例的第一标识和第二应用实例的第二标识一致,鉴权服务器可以确定第二应用实例的第一标识通过鉴权;否则,鉴权服务器可以确定第二应用实例的第一标识未通过鉴权。
实现方式1-2、第一应用实例对调用鉴权凭证进行解密,获取第一应用实例的第二标识和第二应用实例的第二标识。第一应用实例比较第一应用实例的第一标识和第一应用实例的第二标识是否一致,以及比较第二应用实例的第一标识和第二应用实例的第二标识是否一致。
若第一应用实例的第一标识和第一应用实例的第二标识一致,第一应用实例可以确定第一应用实例的第一标识通过鉴权;否则,第一应用实例可以确定第一应用实例的第一标识未通过鉴权。
若第二应用实例的第一标识和第二应用实例的第二标识一致,第一应用实例可以确定第二应用实例的第一标识通过鉴权;否则,第一应用实例可以确定第二应用实例的第一标识未通过鉴权。
实现方式1-3、第一应用实例向鉴权服务器发送调用鉴权凭证。之后,第一应用实例接收鉴权服务器发送的第一应用实例的第二标识和第二应用实例的第二标识。第一应用实例比较第一应用实例的第一标识和第一应用实例的第二标识是否一致,以及比较第二应用实例的第一标识和第二应用实例的第二标识是否一致。
若第一应用实例的第一标识和第一应用实例的第二标识一致,第一应用实例可以确定第一应用实例的第一标识通过鉴权;否则,第一应用实例可以确定第一应用实例的第一标识未通过鉴权。
若第二应用实例的第一标识和第二应用实例的第二标识一致,第一应用实例可以确定第二应用实例的第一标识通过鉴权;否则,第一应用实例可以确定第二应用实例的第一标识未通过鉴权。
应理解,鉴权服务器在接收到调用鉴权凭证之后,可以对接收到的调用鉴权凭证进行解密,获取第一应用实例的第二标识、以及第二应用实例的第二标识。
下面具体说明第一应用实例查询第二应用实例和第一应用实例之间是否存在订阅关系的实现方式。
实现方式2-1、客户端中预先存储订阅关系表,该订阅关系表用于指示不同应用实例之间的订阅关系。第一应用实例查询订阅关系表中是否保存第一应用实例和第二应用实例之间的订阅关系。若订阅关系表保存有第一应用实例和第二应用实例之间的订阅关系,第一应用实例可以确定第一应用实例和第二应用实例之间存在订阅关系;否则,第一应用实例可以确定第一应用实例和第二应用实例之间不存在订阅关系。
实现方式2-2、第一应用实例向微服务应用平台发送查询请求。第一应用实例接收微服务应用平台发送的查询响应。
本申请实施例中,查询请求用于查询第一应用实例和第二应用实例之间是否存在订阅关系。
在一些实施例中,查询请求可以包括第一应用实例的第一标识和第二应用实例的第一标识。示例性的,微服务应用平台可以根据第一应用实例的第一标识和第二应用实例的第一标识,确定第一应用实例和第二应用实例之间是否存在订阅关系。
本申请实施例中,查询响应用于指示第一应用实例和第二应用实例之间是否存在订阅关系。也即,查询响应用于指示第一应用实例和第二应用实例之间存在订阅关系。或者,查询响应用于指示第一应用实例和第二应用实例之间不存在订阅关系。
实现方式2-3、第一应用实例向鉴权服务器发送查询请求。第一应用实例接收鉴权服务器发送的查询响应。该查询请求和该查询响应的具体描述可以参考上文,在此不再赘述。
应理解,鉴权服务器在接收到查询请求之后,可以从自身的数据库或者微服务应用平台查询第一应用实例和第二应用实例之间是否存在订阅关系。
进一步地,在对调用请求进行鉴权的实现方式包括实现方式1和实现方式2的情况下,上述实现方式1-1至实现方式1-3中的任意一种实现方式,与上述实现方式2-1至实现方式2-1的任意一种实现方式可以相互结合使用。
下面以实现方式1-1和实现方式2-3结合使用为例进行具体说明。
第一应用实例向鉴权服务器发送鉴权请求。鉴权请求包括第一应用实例的第一标识、第二应用实例的第一标识以及调用鉴权凭证。应理解,鉴权请求可以认为为实现方式2-3中提及的查询请求。
鉴权服务器在接收到鉴权请求之后,可以判断第一应用实例的第一标识和第二应用实例的第一标识是否通过鉴权,以及查询第一应用实例与第二应用实例之间是否存在订阅关系。
之后,鉴权服务器可以向第一应用实例发送鉴权响应,该鉴权响应用于指示调用请求是否通过鉴权。应理解,鉴权响应可以认为为实现方式2-3中提及的查询响应。
在本申请实施例中,在满足预设条件的情况下,第一应用实例确定调用请求通过鉴权;在不满足预设条件的情况下,第一应用实例确定调用请求未通过鉴权。
其中,预设条件包括以下一项或者多项:
条件1、第一应用实例的第一标识通过鉴权;第二应用实例的第一标识通过鉴权。
条件2、第二应用实例和第一应用实例之间存在订阅关系。
应理解,在对调用请求进行鉴权的过程中,采用上述实现方式1的情况下,调用请求通过鉴权的预设条件包括条件1。在对调用请求进行鉴权的过程中,采用上述实现方式2的情况下,调用请求通过鉴权的预设条件包括条件2。在对调用请求进行鉴权的过程中,采用上述实现方式1和实现方式2的情况下,调用请求通过鉴权的预设条件包括条件1和条件2。
可选的,在调用请求通过鉴权的情况下,执行下述步骤S304;在调用请求未通过鉴权的情况下,执行下述步骤S305。
S304、第一应用实例为第二应用实例提供服务。
在一些实施例中,在调用请求通过鉴权的情况下,第一应用实例可以向第二应用实例发送表示允许调用的响应信息。
在一些实施例中,在调用请求通过鉴权的情况下,第一应用实例可以直接向第二应用实例发送第一应用实例的调用结果。
S305、第一应用实例向第二应用实例发送表示拒绝调用的响应信息。
本申请实施例提供的鉴权方法,在第二应用实例调用第一应用实例的过程中,第一应用实例可以对第二应用实例发送的调用请求进行鉴权,并在鉴权成功后,第一应用实例为第二应用实例提供服务。使得在客户端调用应用实例的过程中具有鉴权功能,提高了Eureka技术应用实例调用过程中的安全性。
可选的,基于图4所示的鉴权方法,如图5所示,在步骤S301之前,该方法还包括步骤S401-S402。
S401、第二应用实例向微服务应用平台发送订阅请求。相应的,微服务应用平台接收第二应用实例发送的订阅请求。
其中,订阅请求用于向微服务应用平台请求第一应用实例与第二应用实例建立订阅关系。
在一些实施例中,订阅请求可以包括第二应用实例的第二标识和第一应用实例的第二标识。
S402、第二应用实例接收微服务应用平台发送的表示同意订阅的响应信息。相应的,微服务应用平台向第二应用实例发送表示同意订阅的响应信息。
其中,响应信息包括调用鉴权凭证。
在一些实施例中,响应消息还可以包括第一应用实例的第二标识和第二应用实例的第二标识。
第一应用实例的第二标识,第二应用实例的第二标识,以及调用鉴权凭证的相关描述,可以参考步骤S301中的相关描述,在此不再赘述。
可选的,如图5所示,微服务应用平台在接收到订阅请求之后,订阅关系的具体建立过程可以包括步骤D1-D5。
D1、微服务应用平台判断第一应用实例是否同意与第二应用实例建立订阅关系。
其中,该订阅关系是指第一应用实例与第二应用实例之间的订阅关系。
在一些实施例中,微服务应用平台可以向第一应用实例发送用于确定第一应用实例是否同意与第二应用实例建立订阅关系的请求信息,以确定第一应用实例是否同意建立订阅关系。
第一应用实例可以向微服务应用平台发送表示同意的响应信息,以表示同意建立订阅关系。或者,第一应用实例可以向微服务应用平台发送表示拒绝的响应信息,以表示拒绝建立订阅关系
D2、在第一应用实例同意与第二应用实例建立订阅关系的情况下,微服务应用平台建立并保存订阅关系。
在一些实施例中,微服务应用平台可以将第一应用实例与第二应用实例之间的订阅关系,保存至订阅关系表。从而第一应用实例、第二应用实例、Eureka服务器、配置中心、鉴权服务器可以与微服务应用平台进行交互,查询订阅关系表,并确定第一应用实例与第二应用实例是否存在订阅关系。
D3、微服务应用平台向鉴权服务器发送用于表示建立订阅关系的订阅令牌。
其中,订阅令牌包括第一应用实例的第二标识和第二应用实例的第二标识。
D4、鉴权服务器根据第一应用实例的第二标识、第二应用实例的第二标识以及加密参数,生成调用鉴权凭证。
在一些实施例中,鉴权服务器对第一应用实例的第二标识、第二应用实例的第二标识进行加密,生成调用鉴权凭证。
在另一些实施例中,鉴权服务器对第一应用实例的第二标识、第二应用实例的第二标识以及加密参数(如时间戳或盐)进行加密,生成调用鉴权凭证。
D5、鉴权服务器向微服务应用平台发送调用鉴权凭证。
如此,在订阅关系的建立过程中,微服务应用平台可以通过鉴权服务器为第一应用实例和第二应用实例设置调用鉴权凭证,使得在Eureka调用过程中,第一应用实例可以根据第一应用实例的第一应用实例的第一标识,第二应用实例的第二应用实例的第一标识,以及调用鉴权凭证,对第二应用实例进行鉴权,确定第二应用实例是否合法,提高Eureka技术的安全性。
可以看出,上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,本申请实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本申请实施例可以根据上述方法示例对鉴权装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。可选的,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
如图6所示,为本申请实施例提供的一种鉴权装置的结构示意图。该鉴权装置用于提高Eureka技术的安全性。例如,用于执行图2、图3、图4、图5所示的鉴权方法,包括:通信模块501和处理模块502。
示例性的,在该鉴权装置为Eureka服务器时,则该鉴权装置用于执行图2所示实施例中的鉴权方法。
通信模块501,用于接收注册请求,注册请求用于请求注册目标应用实例,注册请求包括目标应用实例的第一标识和注册鉴权凭证。
处理模块502,用于根据注册鉴权凭证,对目标应用实例的第一标识进行鉴权;在第一标识通过鉴权的情况下,Eureka服务器对目标应用实例进行注册。
在一些实施例中,处理模块502,还用于在第一标识未通过鉴权的情况下,Eureka服务器向客户端发送用于表示注册失败的响应信息。
在一些实施例中,通信模块501,具体用于向鉴权服务器发送注册鉴权凭证和第一标识;接收鉴权服务器发送的鉴权结果,鉴权结果用于指示第一标识是否通过鉴权。
在一些实施例中,处理模块502,具体用于对注册鉴权凭证进行解密,获取目标应用实例的第二标识;比较第一标识与第二标识是否一致;若第一标识与第二标识一致,则Eureka服务器确定第一标识通过鉴权;若第一标识与第二标识不一致,则Eureka服务器确定第一标识未通过鉴权。
在一些实施例中,通信模块501,具体用于向鉴权服务器发送注册鉴权凭证;接收鉴权服务器发送的目标应用实例的第二标识,第二标识是通过解密注册鉴权凭证获得的;处理模块502,具体用于比较第一标识与第二标识是否一致;若第一标识与第二标识一致,则Eureka服务器确定第一标识通过鉴权;若第一标识与第二标识不一致,则Eureka服务器确定第一标识未通过鉴权。
在一些实施例中,注册鉴权凭证是根据目标应用实例的第二标识和加密参数加密得到的。
在一些实施例中,用于生成注册鉴权凭证的加密算法包括对称加密算法。
又一示例性的,在该鉴权装置为客户端时,则该鉴权装置用于执行图3所示实施例中的鉴权方法。
通信模块501,用于获取目标应用实例的第一标识,和目标应用实例的注册鉴权凭证;向Eureka服务器发送注册请求,注册请求用于请求注册目标应用实例,注册请求包括第一标识和注册鉴权凭证。
在一些实施例中,通信模块501,还用于向微服务应用平台发送创建目标应用实例的请求;接收微服务应用平台发送的表示目标应用实例创建成功的响应信息,响应信息包括第一标识和注册鉴权凭证。
在一些实施例中,注册鉴权凭证是根据目标应用实例的第二标识和加密参数加密得到的。
在一些实施例中,用于生成注册鉴权凭证的加密算法包括对称加密算法。
又一示例性的,在该鉴权装置为第一应用实例时,则该鉴权装置用于执行图4所示实施例中的鉴权方法。
通信模块501,用于接收第二应用实例发送的调用请求,调用请求用于表示第二应用实例请求调用第一应用实例;
处理模块502,用于对调用请求进行鉴权;在调用请求通过鉴权的情况下,第一应用实例为第二应用实例提供服务。
在一些实施例中,处理模块502,还用于在调用请求未通过鉴权的情况下,第一应用实例向第二应用实例发送表示拒绝调用的响应信息。
在一些实施例中,处理模块502,具体用于根据调用鉴权凭证,对第一应用实例的第一标识和第二应用实例的第一标识进行鉴权;或者,查询第二应用实例和第一应用实例之间是否存在订阅关系。
在一些实施例中,处理模块502,具体用于在满足预设条件的情况下,第一应用实例确定调用请求通过鉴权;在不满足预设条件的情况下,第一应用实例确定调用请求未通过鉴权;预设条件包括以下一项或者多项:第一应用实例的第一标识通过鉴权;第二应用实例的第一标识通过鉴权;或者,第二应用实例和第一应用实例之间存在订阅关系。
在一些实施例中,通信模块501,向鉴权服务器发送第一应用实例的第一标识、第二应用实例的第一标识以及调用鉴权凭证;接收鉴权服务器发送的鉴权结果,鉴权结果用于指示第一应用实例的第一标识是否通过鉴权,以及第二应用实例的第一标识是否通过鉴权。
在一些实施例中,处理模块502,具体用于对调用鉴权凭证进行解密,获取第一应用实例的第二标识和第二应用实例的第二标识;比较第一应用实例的第一标识和第一应用实例的第二标识是否一致,以及比较第二应用实例的第一标识和第二应用实例的第二标识是否一致;若第一应用实例的第一标识和第一应用实例的第二标识一致,第一应用实例确定第一应用实例的第一标识通过鉴权;否则,第一应用实例确定第一应用实例的第一标识未通过鉴权;若第二应用实例的第一标识和第二应用实例的第二标识一致,第一应用实例确定第二应用实例的第一标识通过鉴权;否则,第一应用实例确定第二应用实例的第一标识未通过鉴权。
在一些实施例中,通信模块501,具体用于向鉴权服务器发送调用鉴权凭证;接收鉴权服务器发送的第一应用实例的第二标识和第二应用实例的第二标识,第一应用实例的第二标识和第二应用实例的第二标识是通过解密调用鉴权凭证获得的;处理模块502,具体用于比较第一应用实例的第一标识和第一应用实例的第二标识是否一致,以及比较第二应用实例的第一标识和第二应用实例的第二标识是否一致;若第一应用实例的第一标识和第一应用实例的第二标识一致,第一应用实例确定第一应用实例的第一标识通过鉴权;否则,第一应用实例确定第一应用实例的第一标识未通过鉴权;若第二应用实例的第一标识和第二应用实例的第二标识一致,第一应用实例确定第二应用实例的第一标识通过鉴权;否则,第一应用实例确定第二应用实例的第一标识未通过鉴权。
在一些实施例中,通信模块501,具体用于向微服务应用平台发送查询请求,查询请求用于查询第二应用实例和第一应用实例之间是否存在订阅关系,查询请求包括第一应用实例的第一标识和第二应用实例的第一标识;接收微服务应用平台发送的查询响应,查询响应用于指示第二应用实例和第一应用实例之间是否存在订阅关系。
在一些实施例中,调用鉴权凭证是根据第一应用实例的第二标识、第二应用实例的第二标识以及加密参数加密生成的。
在一些实施例中,生成调用鉴权凭证的算法包括对称加密算法。
又一示例性的,在该鉴权装置为第二应用实例时,则该鉴权装置用于执行图5所示实施例中的鉴权方法。
通信模块501,用于获取调用鉴权凭证、第一应用实例的第一标识、以及第二应用实例的第一标识;向第一应用实例发送调用请求,调用请求用于表示第二应用实例请求调用第一应用实例,调用请求包括第一应用实例的第一标识、第二应用实例的第一标识以及调用鉴权凭证。
在一些实施例中,通信模块501,具体用于向微服务应用平台发送订阅请求,订阅请求用于表示第二应用实例订阅第一应用实例;接收微服务应用平台发送的表示同意订阅的响应信息,响应信息包括调用鉴权凭证。
在一些实施例中,调用鉴权凭证是根据第一应用实例的第二标识、第二应用实例的第二标识以及加密参数加密生成的。
在一些实施例中,生成调用鉴权凭证的算法包括对称加密算法。
其中,处理模块502可以是处理器或控制器。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包括一个或多个微处理器组合,DSP和微处理器的组合等等。通信模块501可以是收发电路或通信接口等。存储模块可以是存储器。当处理模块502为处理器,通信模块501为通信接口,存储模块为存储器时,本申请实施例所涉及的鉴权装置可以为图7所示鉴权装置。
如图7所示,本发明实施例还提供另一种鉴权装置的结构示意图,包括处理器602、总线603和通信接口604;可选的,该鉴权装置还可以包括存储器601,存储器601用于存储计算机执行指令,处理器602与存储器601通过总线603连接;当鉴权装置运行时,处理器602执行存储器601存储的计算机执行指令,以使鉴权装置执行如上述实施例提供的鉴权方法。
在具体的实现中,作为一种实施例,处理器602(602-1和602-2)可以包括一个或多个CPU,例如图7中所示的CPU0和CPU1。且作为一种实施例,鉴权装置可以包括多个处理器602,例如图7中所示的处理器602-1和处理器602-2。这些处理器602中的每一个CPU可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。这里的处理器602可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
存储器601可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器601可以是独立存在,通过总线603与处理器602相连接。存储器601也可以和处理器602集成在一起。
在一些实施例中,存储器601,用于存储本申请中的数据和执行本申请的软件程序对应的计算机执行指令。处理器602可以通过运行或执行存储在存储器601内的软件程序,以及调用存储在存储器601内的数据,实现鉴权装置的各种功能。
通信接口604,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如控制系统、无线接入网(radio access network,RAN),无线局域网(wireless local areanetworks,WLAN)等。通信接口604可以包括接收单元实现接收功能,以及发送单元实现发送功能。
总线603,可以是工业标准体系结构(industry standard architecture,ISA)总线、外部设备互连(peripheral component interconnect,PCI)总线或扩展工业标准体系结构(extended industry standard architecture,EISA)总线等。该总线603可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质包括计算机执行指令,当计算机执行指令在计算机上运行时,使得计算机执行如上述实施例提供的鉴权方法。
本发明实施例还提供一种计算机程序产品,该计算机程序产品可直接加载到存储器中,并含有软件代码,该计算机程序产品经由计算机载入并执行后能够实现上述实施例提供的鉴权方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

Claims (20)

1.一种鉴权方法,其特征在于,所述方法包括:
Eureka服务器接收注册请求,所述注册请求用于请求注册目标应用实例,所述注册请求包括所述目标应用实例的第一标识和注册鉴权凭证;
所述Eureka服务器根据所述注册鉴权凭证,对所述目标应用实例的第一标识进行鉴权;
在所述第一标识通过鉴权的情况下,所述Eureka服务器对所述目标应用实例进行注册。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述第一标识未通过鉴权的情况下,所述Eureka服务器向所述客户端发送用于表示注册失败的响应信息。
3.根据权利要求2所述的方法,其特征在于,所述Eureka服务器根据所述注册鉴权凭证,对所述第一标识进行鉴权,包括:
所述Eureka服务器向鉴权服务器发送所述注册鉴权凭证和所述第一标识;
所述Eureka服务器接收鉴权服务器发送的鉴权结果,所述鉴权结果用于指示所述第一标识是否通过鉴权。
4.根据权利要求2所述的方法,其特征在于,所述Eureka服务器根据所述注册鉴权凭证,对所述第一标识进行鉴权,包括:
所述Eureka服务器对所述注册鉴权凭证进行解密,获取所述目标应用实例的第二标识;
所述Eureka服务器比较所述第一标识与所述第二标识是否一致;
若所述第一标识与所述第二标识一致,则所述Eureka服务器确定所述第一标识通过鉴权;
若所述第一标识与所述第二标识不一致,则所述Eureka服务器确定所述第一标识未通过鉴权。
5.根据权利要求2所述的方法,其特征在于,所述Eureka服务器根据所述注册鉴权凭证,对所述第一标识进行鉴权,包括:
所述Eureka服务器向鉴权服务器发送所述注册鉴权凭证;
所述Eureka服务器接收所述鉴权服务器发送的所述目标应用实例的第二标识,所述第二标识是通过解密所述注册鉴权凭证获得的;
所述Eureka服务器比较所述第一标识与所述第二标识是否一致;
若所述第一标识与所述第二标识一致,则所述Eureka服务器确定所述第一标识通过鉴权;
若所述第一标识与所述第二标识不一致,则所述Eureka服务器确定所述第一标识未通过鉴权。
6.一种鉴权方法,其特征在于,所述方法包括:
客户端获取目标应用实例的第一标识,和所述目标应用实例的注册鉴权凭证;
所述客户端向Eureka服务器发送注册请求,所述注册请求用于请求注册所述目标应用实例,所述注册请求包括所述第一标识和所述注册鉴权凭证。
7.根据权利要求6所述的方法,其特征在于,在所述客户端获取目标应用实例的第一标识,和所述目标应用实例的注册鉴权凭证之前,所述方法还包括:
所述客户端向微服务应用平台发送创建目标应用实例的请求;
所述客户端接收所述微服务应用平台发送的表示所述目标应用实例创建成功的响应信息,所述响应信息包括所述第一标识和所述注册鉴权凭证。
8.一种鉴权方法,其特征在于,所述方法包括:
第一应用实例接收第二应用实例发送的调用请求,所述调用请求用于表示所述第二应用实例请求调用所述第一应用实例;
所述第一应用实例对所述调用请求进行鉴权;
在所述调用请求通过鉴权的情况下,所述第一应用实例为所述第二应用实例提供服务。
9.根据权利要求8所述的鉴权方法,其特征在于,所述方法还包括:
在所述调用请求未通过鉴权的情况下,所述第一应用实例向所述第二应用实例发送表示拒绝调用的响应信息。
10.根据权利要求9所述的方法,其特征在于,所述调用请求包括所述第一应用实例的第一标识、所述第二应用实例的第一标识以及调用鉴权凭证;
所述第一应用实例对所述调用请求进行鉴权,包括以下实现方式中的至少一种:
所述第一应用实例根据所述调用鉴权凭证,对所述第一应用实例的第一标识和所述第二应用实例的第一标识进行鉴权;或者,
所述第一应用实例查询所述第一应用实例和所述第二应用实例之间是否存在订阅关系。
11.根据权利要求8所述的方法,其特征在于,所述方法还包括:
在满足预设条件的情况下,所述第一应用实例确定所述调用请求通过鉴权;
在不满足预设条件的情况下,所述第一应用实例确定所述调用请求未通过鉴权;
所述预设条件包括以下一项或者多项:
所述第一应用实例的第一标识通过鉴权;
所述第二应用实例的第一标识通过鉴权;或者,
所述第二应用实例和所述第一应用实例之间存在订阅关系。
12.根据权利要求10所述的方法,其特征在于,所述第一应用实例根据所述调用鉴权凭证,对所述第一应用实例的第一标识和所述第二应用实例的第一标识进行鉴权,包括:
所述第一应用实例向鉴权服务器发送所述第一应用实例的第一标识、所述第二应用实例的第一标识以及所述调用鉴权凭证;
所述第一应用实例接收所述鉴权服务器发送的鉴权结果,所述鉴权结果用于指示所述第一应用实例的第一标识是否通过鉴权,以及所述第二应用实例的第一标识是否通过鉴权。
13.根据权利要求10所述的方法,其特征在于,所述第一应用实例根据所述调用鉴权凭证,对所述第一应用实例的第一标识和所述第二应用实例的第一标识进行鉴权,包括:
所述第一应用实例对所述调用鉴权凭证进行解密,获取所述第一应用实例的第二标识和所述第二应用实例的第二标识;
所述第一应用实例比较所述第一应用实例的第一标识和所述第一应用实例的第二标识是否一致,以及比较所述第二应用实例的第一标识和所述第二应用实例的第二标识是否一致;
若所述第一应用实例的第一标识和所述第一应用实例的第二标识一致,所述第一应用实例确定所述第一应用实例的第一标识通过鉴权;否则,所述第一应用实例确定所述第一应用实例的第一标识未通过鉴权;
若所述第二应用实例的第一标识和所述第二应用实例的第二标识一致,所述第一应用实例确定所述第二应用实例的第一标识通过鉴权;否则,所述第一应用实例确定所述第二应用实例的第一标识未通过鉴权。
14.根据权利要求10所述的方法,其特征在于,所述第一应用实例根据所述调用鉴权凭证,对所述第一应用实例的第一标识和所述第二应用实例的第一标识进行鉴权,包括:
所述第一应用实例向鉴权服务器发送所述调用鉴权凭证;
所述第一应用实例接收所述鉴权服务器发送的所述第一应用实例的第二标识和所述第二应用实例的第二标识,所述第一应用实例的第二标识和所述第二应用实例的第二标识是通过解密所述调用鉴权凭证获得的;
所述第一应用实例比较所述第一应用实例的第一标识和所述第一应用实例的第二标识是否一致,以及比较所述第二应用实例的第一标识和所述第二应用实例的第二标识是否一致;
若所述第一应用实例的第一标识和所述第一应用实例的第二标识一致,所述第一应用实例确定所述第一应用实例的第一标识通过鉴权;否则,所述第一应用实例确定所述第一应用实例的第一标识未通过鉴权;
若所述第二应用实例的第一标识和所述第二应用实例的第二标识一致,所述第一应用实例确定所述第二应用实例的第一标识通过鉴权;否则,所述第一应用实例确定所述第二应用实例的第一标识未通过鉴权。
15.根据权利要求10所述的方法,其特征在于,所述第一应用实例查询所述第二应用实例和所述第一应用实例之间是否存在订阅关系,包括:
所述第一应用实例向微服务应用平台或者鉴权服务器发送查询请求,所述查询请求用于查询所述第二应用实例和所述第一应用实例之间是否存在订阅关系,所述查询请求包括所述第一应用实例的第一标识和所述第二应用实例的第一标识;
所述第一应用实例接收所述微服务应用平台或者鉴权服务器发送的查询响应,所述查询响应用于指示所述第二应用实例和所述第一应用实例之间是否存在订阅关系。
16.一种鉴权方法,其特征在于,所述方法包括:
第二应用实例获取调用鉴权凭证、第一应用实例的第一标识、以及所述第二应用实例的第一标识;
所述第二应用实例向所述第一应用实例发送调用请求,所述调用请求用于表示所述第二应用实例请求调用所述第一应用实例,所述调用请求包括所述第一应用实例的第一标识、所述第二应用实例的第一标识以及所述调用鉴权凭证。
17.根据权利要求16所述的方法,其特征在于,在第二应用实例获取调用鉴权凭证、第一应用实例的第一标识、以及所述第二应用实例的第一标识之前,所述方法还包括:
所述第二应用实例向微服务应用平台发送订阅请求,所述订阅请求用于表示所述第二应用实例订阅所述第一应用实例;
所述第二应用实例接收所述微服务应用平台发送的表示同意订阅的响应信息,所述响应信息包括所述调用鉴权凭证。
18.一种鉴权装置,其特征在于,所述鉴权装置包括用于实现权利要求1至17任一项所述的鉴权方法的模块。
19.一种鉴权装置,其特征在于,所述鉴权装置包括通信接口和处理器,所述通信接口和处理器用于实现权利要求1至17中任一项所述的鉴权方法。
20.一种计算机可读存储介质,其特征在于,该计算机可读存储介质存储有计算机指令,当计算机指令被执行时,实现权利要求1至17中任一项所述的鉴权方法。
CN202111007218.6A 2021-08-30 2021-08-30 一种鉴权方法、装置及计算机可读存储介质 Pending CN115730325A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111007218.6A CN115730325A (zh) 2021-08-30 2021-08-30 一种鉴权方法、装置及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111007218.6A CN115730325A (zh) 2021-08-30 2021-08-30 一种鉴权方法、装置及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN115730325A true CN115730325A (zh) 2023-03-03

Family

ID=85291117

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111007218.6A Pending CN115730325A (zh) 2021-08-30 2021-08-30 一种鉴权方法、装置及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN115730325A (zh)

Similar Documents

Publication Publication Date Title
EP3937424B1 (en) Blockchain data processing methods and apparatuses based on cloud computing
CN108429740B (zh) 一种获得设备标识的方法及装置
US9621355B1 (en) Securely authorizing client applications on devices to hosted services
CN109479049B (zh) 用于密钥供应委托的系统、设备和方法
CN110535628B (zh) 通过证书签发进行多方安全计算的方法及装置
CN112422532B (zh) 业务通信方法、系统、装置及电子设备
CN110677240B (zh) 通过证书签发提供高可用计算服务的方法、装置及介质
US20200195445A1 (en) Registration method and apparatus based on service-based architecture
US10021144B2 (en) Techniques for establishing a trusted cloud service
WO2018145605A1 (zh) 鉴权方法及服务器、访问控制装置
WO2013104143A1 (zh) 一种面向异构网络的认证方法及系统
US8145917B2 (en) Security bootstrapping for distributed architecture devices
CN108390885B (zh) 一种获得设备标识的方法、通信实体、通信系统及存储介质
JP7300529B2 (ja) 匿名デバイス認証
WO2022100356A1 (zh) 身份认证系统、方法、装置、设备及计算机可读存储介质
KR20190082793A (ko) 보안 키 관리
CN110198538B (zh) 一种获得设备标识的方法及装置
CN111414640B (zh) 秘钥访问控制方法和装置
CN112261103A (zh) 一种节点接入方法及相关设备
CN115730325A (zh) 一种鉴权方法、装置及计算机可读存储介质
US9825952B2 (en) Secure machine to machine communication
TWI673621B (zh) 資訊註冊、認證方法及裝置
CN113923233A (zh) 一种联盟链管理方法
CN114500025A (zh) 一种账户标识获取方法、装置、服务器及存储介质
CN116318943A (zh) 一种基于传输层安全性协议的通信方法、装置及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination