CN115065717A - 一种微服务调用处理方法及处理装置 - Google Patents
一种微服务调用处理方法及处理装置 Download PDFInfo
- Publication number
- CN115065717A CN115065717A CN202210625060.7A CN202210625060A CN115065717A CN 115065717 A CN115065717 A CN 115065717A CN 202210625060 A CN202210625060 A CN 202210625060A CN 115065717 A CN115065717 A CN 115065717A
- Authority
- CN
- China
- Prior art keywords
- micro
- authentication center
- service
- token
- processing result
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
Abstract
本申请公开了一种微服务调用处理方法及处理装置,所述处理方法应用于微服务请求方,包括:从目标认证中心获取对应的token,基于所述token生成调用请求发送至微服务提供方;其中,所述目标认证中心基于认证中心集群中的各个认证中心确定,所述各个认证中心同步有与各个微服务对应的token信息;获取所述微服务提供方接收所述调用请求后的处理结果,根据所述处理结果确定能否调用所述微服务提供方提供的服务。如此,微服务请求方能够基于认证中心集群统一的认证方式和认证信息进行认证,提升了处理效率;同时,针对具体的服务,基于微服务提供方的处理结果确定能否调用,例如是否需要进行验证后才能调用等,业务处理方式灵活性高,用户体验好。
Description
技术领域
本申请涉及微服务技术领域,特别涉及一种微服务调用处理方法及处理装置。
背景技术
微服务架构就是以业务域或业务功能为边界,将一个大而全的应用拆分为可以独立开发,独立部署,独立测试,独立运行的一组小的应用,并且使用轻量级、通用的机制在应用间进行通信。
目前,随着互联网技术的进步与发展,企业的微服务架构呈分布式布置的情况下,不同部署区域布置的微服务架构之间具有各自的鉴权方式及鉴权信息。服务消费方通过外部客户端调用应用微服务时,需通过相应区域的微服务架构进行鉴权,这就导致鉴权和认证的处理过程变得复杂,同时网关与各微服务架构中的认证中心需频繁认证交互,降低认证和调用服务过程中的处理效率。
发明内容
针对上述技术问题,本申请提供了一种微服务调用处理方法及处理装置,本申请实施例采用的技术方案如下:
本申请第一方面提供了一种微服务调用处理方法,应用于微服务请求方,包括:
从目标认证中心获取对应的token,基于所述token生成调用请求发送至微服务提供方;其中,所述目标认证中心基于认证中心集群中的各个认证中心确定,所述各个认证中心同步有与各个微服务对应的token信息;
获取所述微服务提供方接收所述调用请求后的处理结果,根据所述处理结果确定能否调用所述微服务提供方提供的服务。
在一些实施例中,所述处理结果的生成方式包括:
通过所述微服务提供方基于认证权限的开关状态确定是否对所述调用请求进行验证,以基于是否进行验证的方式生成相应的处理结果;其中,包括:
若所述认证权限处于开启状态,则对所述调用请求进行验证;
若所述认证权限处于关闭状态,则不对所述调用请求进行验证。
在一些实施例中,根据所述处理结果确定能否调用所述微服务提供方提供的服务,包括:
若所述处理结果基于进行验证的方式生成,则获取所述微服务提供方对所述调用请求进行验证后的处理结果,在处理结果表征验证通过的情况下,调用所述微服务提供方提供的服务;
若所述处理结果基于不进行验证的方式生成,则确定能够调用所述微服务提供方提供的服务。
在一些实施例中,所述目标认证中心的确定方式包括:
通过从所述认证中心集群中确定与IP地址对应的本地认证中心,以确定所述目标认证中心。
在一些实施例中,所述目标认证中心的确定方式还包括:
在所述本地认证中心不可用时,通过从所述认证中心集群中确定与所述IP地址确定的地理位置最近的第一认证中心作为所述目标认证中心。
在一些实施例中,从目标认证中心获取对应的token,包括:
若内存数据库存在所述token,则通过所述目标认证中心从内存数据库提取所述token,以获取所述token;
若所述内存数据库不存在所述token,则通过所述目标认证中心基于所述微服务请求方的标识信息生成token,以获取所述token。
在一些实施例中,从目标认证中心获取对应的token之前,所述方法还包括:
在授权权限处于开启状态的情况下,若通过所述目标认证中心申请所述token成功,则基于配置信息进行启动;
在授权权限处于关闭状态的情况下,则基于配置信息进行启动。
在一些实施例中,所述方法还包括:
在申请token成功的情况下,通过所述目标认证中心基于预设时间间隔根据授权权限的开关状态确定是否刷新所述token;其中,包括:
若所述授权权限处于开启状态,则通过所述目标认证中心刷新所述token,并更新内存数据库;
若所述授权权限处于关闭状态,则不通过所述目标认证中心进行刷新操作。
在一些实施例中,所述方法还包括:
发送签名信息或密码信息至所述目标认证中心进行验证,以获取验证结果;
在所述验证结果表征签名信息或密码信息有效的情况下,则能够从所述目标认证中心获取所述token。
本申请第二方面提供了一种微服务调用处理装置,包括:
生成模块,配置为从目标认证中心获取对应的token,基于所述token生成调用请求发送至微服务提供方;其中,所述目标认证中心基于认证中心集群中的各个认证中心确定,所述各个认证中心同步有与各个微服务对应的token信息;
调用模块,配置为获取所述微服务提供方接收所述调用请求后的处理结果,根据所述处理结果确定能否调用所述微服务提供方提供的服务。
本申请实施例第三方面还提供了一种电子设备,至少包括存储器、处理器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时,执行上述任意实施例提供的处理方法中任一项方法步骤。
本申请实施例第四方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器运行时,执行上述任意实施例提供的处理方法中任一项方法步骤。
与现有技术相比,本申请实施例的有益效果在于:微服务请求方在进入微服务系统进行服务调用时,可以通过从认证中心集群中确定的目标认证中心获取token,再基于该token生成调用请求发送至微服务提供方,以在根据微服务提供方对所述调用请求的处理结果确定能够访问对应的服务。如此,微服务请求方在不同区域部署的微服务架构中进行服务调用时,无需频繁地与不同的认证中心进行认证申请和交互,能够基于认证中心集群统一的认证方式和认证信息进行认证,提升了处理效率;同时,针对具体的服务,基于微服务提供方的处理结果确定能否调用,例如是否需要进行验证后才能调用等,业务处理方式灵活性高,用户体验好。
附图说明
图1为本申请实施例所提供的微服务架构示意图;
图2为本申请实施例所提供的微服务调用处理方法的流程图;
图3为本申请实施例所提供的微服务调用处理方法的流程时序图;
图4为本申请实施例所提供的微服务调用处理方法的流程示意图;
图5为本申请实施例所提供的微服务调用处理装置的结构示意图;
图6为本申请实施例所提供的电子设备的结构框图。
具体实施方式
此处参考附图描述本申请的各种方案以及特征。
应理解的是,可以对此处申请的实施例做出各种修改。因此,上述说明书不应该视为限制,而仅是作为实施例的范例。本领域的技术人员将想到在本申请的范围和精神内的其他修改。
包含在说明书中并构成说明书的一部分的附图示出了本申请的实施例,并且与上面给出的对本申请的大致描述以及下面给出的对实施例的详细描述一起用于解释本申请的原理。
通过下面参照附图对给定为非限制性实例的实施例的优选形式的描述,本申请的这些和其它特性将会变得显而易见。
还应当理解,尽管已经参照一些具体实例对本申请进行了描述,但本领域技术人员能够确定地实现本申请的很多其它等效形式,它们具有如权利要求所述的特征并因此都位于借此所限定的保护范围内。
当结合附图时,鉴于以下详细说明,本申请的上述和其他方面、特征和优势将变得更为显而易见。
此后参照附图描述本申请的具体实施例;然而,应当理解,所申请的实施例仅仅是本申请的实例,其可采用多种方式实施。熟知和/或重复的功能和结构并未详细描述以避免不必要或多余的细节使得本申请模糊不清。因此,本文所申请的具体的结构性和功能性细节并非意在限定,而是仅仅作为权利要求的基础和代表性基础用于教导本领域技术人员以实质上任意合适的详细结构多样地使用本申请。
本说明书可使用词组“在一种实施例中”、“在另一个实施例中”、“在又一实施例中”或“在其他实施例中”,其均可指代根据本申请的相同或不同实施例中的一个或多个。
图1为本申请实施例提供微服务架构的场景示意图。如图1所示,微服务架构中包括负载均衡器F5、与负载均衡器F5通信连接的各个网关,与对应网关通信连接的不同地域环境中的各个微服务、以及与各网关通信连接的认证中心集群。认证中心集群包括通过对应网关通信连接的各个认证中心,各个认证中心通过通信,能够进行数据信息同步,例如同步各个微服务的注册信息及对应的token信息等等。
服务消费方利用例如手机或电脑等电子设备上的客户端访问应用服务时,流量通过对应的负载均衡器F5和网关分派到具体的业务微服务,对业务微服务进行调用。为了进行示例性说明,通过业务微服务A表征将流量从消费服务方通过负载均衡器、网关直接进行启动和访问的第一类微服务,业务微服务B表征只能接收第一类微服务的调用请求提供服务的第二类微服务。这里,业务微服务A和业务微服务B可以表征不同业务类别的微服务,也可以表征微服务所对应的不同节点,对此不做任何限定。
下面结合附图来介绍本申请实施例提供的微服务调用处理方法和处理装置。
图2和图3为本申请实施例提供的微服务调用处理方法的流程图和流程时序图。如图2和图3所示,本申请实施例提供的微服务调用处理方法应用于第一类微服务对第二类微服务的的调用过程中,具体应用于微服务请求方,该方法包括以下步骤S100-S200:
S100,从目标认证中心获取对应的token,基于所述token生成调用请求发送至微服务提供方;其中,所述目标认证中心基于认证中心集群中的各个认证中心确定,所述各个认证中心同步有与各个微服务对应的token信息。
本步骤中,可以通过微服务架构对布置于不同地域或不同环境中的各个认证中心进行统一管理,以构建认证中心集群,并对各个认证中心的数据进行同步。目标认证中心是从该认证中心集群中选取的一个认证中心,用于在微服务请求方需进行服务调用的情况下,对微服务请求方是否能够进行服务调用进行认证。在一些具体的应用中,目标认证中心可以基于微服务请求方的IP地址从认证中心集群中进行选取,例如选取同一网关下的本地认证中心,或者选取地理位置与IP地址所对应的地理位置较近的认证中心,以减少地理距离造成的网络延迟,提高处理的效率。当然,也可以基于认证中心集群中各个认证中心的工作状态进行选择,例如选取空闲状态的认证中心,以减少认证过程中等待响应的时间,提升用户体验。
在一些实施例中,为了确定目标认证中心,具体包括:
通过从所述认证中心集群中确定与IP地址对应的本地认证中心,以确定所述目标认证中心。
本实施例中,可以通过获取认证中心集群中各个认证中心对应的IP地址,以从中选取与微服务请求方的IP地址属于同一网段的一个IP地址所对应的本地认证中心,作为目标认证中心,以避免由于地理距离造成的网络延迟,提升处理效率。
在一些实施例中,所述目标认证中心的确定方式还包括:
在所述本地认证中心不可用时,通过从所述认证中心集群中确定与所述IP地址确定的地理位置最近的第一认证中心作为所述目标认证中心。
本实施例中,可以获取认证中心集群中各个认证中心所对应部署的地理位置,并与微服务请求方的IP地址所对应的地理位置进行比较,以选取与微服务请求方最近的认证中心作为目标认证中心,以避免本地认证中心繁忙或宕机的情况下,无法及时进行认证处理的问题。
本步骤中,启动的微服务在运行过程中,需要调用其他微服务提供的服务时,其作为微服务请求方,需要向目标认证中心获取token,以携带token向提供服务的微服务提供方发送调用请求。
在一些实施例中,从目标认证中心获取对应的token,包括:
若内存数据库存在所述token,则通过所述目标认证中心从内存数据库提取所述token,以获取所述token;
若所述内存数据库不存在所述token,则通过所述目标认证中心基于所述微服务请求方的标识信息生成token,以获取所述token。
本实施例中,微服务请求方通过目标认证中心获取对应的token时,目标认证中心首先根据微服务请求方的标识信息在内存数据库中进行查找,在查找到与标识信息相匹配的token时,微服务请求方可以通过接收目标认证中心发送的token,从而能够获取对应的token。这里,若目标认证中心在内存数据库未查找到与标识信息相匹配的token时,则需根据该微服务请求方的标识信息及对应的认证信息生成对应的token。由此,微服务请求方通过接收目标认证中心生成后发送的token,从而能够获取对应的token。
在一些实施例中,从目标认证中心获取对应的token之前,所述方法还包括:
在授权权限处于开启状态的情况下,若通过所述目标认证中心申请所述token成功,则基于配置信息进行启动;
在授权权限处于关闭状态的情况下,则基于配置信息进行启动。
本申请实施例旨在通过相应的配置信息对微服务的启动过程进行对应的控制,以提高微服务启动时的灵活性。在一些具体的实施中,服务消费方在首次访问应用服务时,将通过微服务架构的统一入口进入认证中心集群的第一认证中心申请对应的公钥、私钥以及标识信息和密码等等认证信息。这里,第一认证中心的确定方式可以参照目标认证中心的确定方式,其可以与目标认证中心相同,也可以是不同的其他认证中心,本申请并不做限定。之后,将相关的认证信息存储于配置中心,并通过配置中心根据实际情况分配鉴权权限,从而后续可以通过应用微服务对应的SDK jar包获取配置中心的配置信息,以对鉴权权限实现相应地进行控制。示例性的,进行鉴权权限配置时,例如可以配置授权权限开关,以相应地控制授权权限开启或关闭的状态;以及可以配置认证权限开关,以相应地控制认证权限开启或关闭的状态。配置完成后,微服务可以进行启动,并在启动成功后通过注册中心进行注册,以进行后续的登录管理。
微服务启动时,根据微服务所依赖的SDK jar包,在授权权限处于开启状态的情况下,所启动的微服务通过认证中心集群的统一入口向第一认证中心申请token。当然,这里也可以是与第一认证中心不同的其他认证中心,可以根据实际情况确定,本申请并不做限定。若Token申请成功时,则该微服务能够基于相应的配置信息进行启动并正常运行,并向注册中心进行注册,以进行后续的管理。此时,所生成的token将缓存于第一认证中心,同时同步到认证中心集群中的其他认证中心。若Token申请失败时,则该微服务无法成功启动至正常运行状态,也无法向注册中心进行注册。这里,在启动微服务时,若授权权限处于关闭状态,则其无需通过认证中心进行认证,可以直接启动并正常运行,并向注册中心进行注册,以进行后续的管理。相应地,这样启动的微服务也无法向认证中心申请token。由此,针对权限级别较高的微服务,可以配置为开启授权权限的开关,以使微服务在通过认证中心的认证后启动,以提高安全性;权限级别较低的微服务,可以配置为关闭授权权限的开关,以使服务消费方能够在登录后直接启动微服务。本申请实施例中,微服务的启动处理方式灵活多变,应用更加广泛。
通常,为了安全性的考虑,token会设置有有效期,并通过刷新操作更新token的有效期,以对服务消费方的登录进行管理。在一些实施例中,为了对刷新操作进行控制,所述方法还包括:
在申请token成功的情况下,通过所述目标认证中心基于预设时间间隔根据授权权限的开关状态确定是否刷新所述token;其中,包括:
若所述授权权限处于开启状态,则通过所述目标认证中心刷新所述token,并更新内存数据库;
若所述授权权限处于关闭状态,则不通过所述目标认证中心进行刷新操作。
本实施例旨在通过微服务所配置的授权权限对刷新操作进行控制。本申请中,在token申请成功的情况下,微服务会启动刷新token的定时任务,从而在微服务正常运行的情况下,基于一定时间间隔对token进行刷新操作。本实施例中,启动刷新token的定时任务时,先判断授权权限的开关状态,若授权权限处于开启状态,则通过所述目标认证中心刷新所述token,并更新内存数据库中token的有效期,以方便微服务后续的服务调用过程,保证业务处理过程的连续性。若所述授权权限处于关闭状态,则不通过所述目标认证中心进行刷新操作,此时,token将会过期失效。如此,本申请实施例可以通过修改微服务所配置的鉴权权限信息,开启或关闭授权权限,对微服务的token的刷新操作进行实时地控制,安全性好。具体到一些实际的应用中,在微服务请求方的授权权限开关关闭时,可以一并关闭微服务提供方的对该微服务请求方的认证权限开关,以使得该微服务请求方在token过期的情况下,依然可以正常访问微服务提供方,保证业务连续性。
在一些实施例中,所述方法还包括:
发送签名信息或密码信息至所述目标认证中心进行验证,以获取验证结果;
在所述验证结果表征签名信息或密码信息有效的情况下,则能够从所述目标认证中心获取所述token。
本申请实施例旨在对微服务请求方进行验证,以保证安全性。在一些具体的应用中,微服务请求方可以所分配的私钥对其标识信息进行加密运算,生成对应的签名信息,将该签名信息发送至目标认证中心进行验证。目标认证中心接收到签名信息时,根据微服务请求方的标识信息所对应的公钥对该签名信息进行解密后验证,若解密得到的信息与微服务请求方的标识信息相匹配,则验证通过,该签名信息有效;若解密得到的信息与微服务请求方的标识信息不匹配,则验证未通过,该签名信息无效。微服务请求方通过目标认证中心获取到验证结果时,若验证结果表征签名信息有效时,则能够从目标认证中心获取所述token,以用于微服务调用步骤。
在另一些具体的应用中,微服务请求方可以在向目标认证中心发送验证信息时,可以携带所分配的密码信息,以使目标认证中心可以针对其所携带的密码信息进行验证。目标认证中心接收到验证信息时,通过解析从其中获取所携带的待验证信息,并在数据库中查找微服务请求方的标识信息所对应存储的密码信息,若待验证信息与数据库存储的密码信息一致时,则验证通过,可以确定待验证信息为有效的密码信息;若待验证信息与数据库存储的密码信息不一致时,则验证未通过,可以确定待验证信息不是有效的密码信息。微服务请求方通过目标认证中心获取到验证结果时,若验证结果表征密码信息有效时,则能够从目标认证中心获取所述token,以用于微服务调用步骤。
S200,获取所述微服务提供方接收所述调用请求后的处理结果,根据所述处理结果确定能否调用所述微服务提供方提供的服务。
本步骤中,微服务请求方获取微服务提供方的处理结果后,能够根据处理结果灵活地确定能否调用对应的服务。在一些具体的应用中,微服务提供方配置有相应的认证权限,根据认证权限的开关状态确定是否对来自其他微服务的调用请求进行验证。如此,若微服务提供方的处理结果为无需进行验证时,则微服务请求方能够基于该处理结果直接调用微服务提供方提供的服务。若微服务提供方的处理结果为需进行验证时,则微服务请求方能够基于进行验证后的处理结果来确定是否能够调用微服务提供方提供的服务。
在一些实施例中,所述处理结果的生成方式包括:
通过所述微服务提供方基于认证权限的开关状态确定是否对所述调用请求进行验证,以基于是否进行验证的方式生成相应的处理结果;其中,包括:
若所述认证权限处于开启状态,则对所述调用请求进行验证;
若所述认证权限处于关闭状态,则不对所述调用请求进行验证。
本实施例旨在通过相应的配置信息对微服务提供方的认证过程进行对应的控制,以提高微服务认证过程中的灵活性。在一些具体的应用中,微服务提供方接收到调用请求时,基于配置信息确定认证权限的状态,在认证权限处于开启状态的情况下,则需对调用请求进行验证后才能确定是否提供服务,此时,微服务请求方可以通过微服务提供方获取到调用请求需要通过验证的处理结果。在认证权限处于关闭状态的情况下,则微服务请求方确认无需对调用请求进行验证,此时,微服务请求方可以通过微服务提供方获取无需进行验证的处理结果。由此,在一些实际的应用中,例如微服务请求方的授权权限开关关闭时,可以配置为关闭微服务提供方的对该微服务请求方的认证权限开关,以在接收到该微服务请求方的调用请求时,不对调用请求进行验证,即无需验证token,并迅速给出无需验证的处理结果,从而使得该微服务请求方可以正常访问服务提供方,保证业务连续性。在另一些具体的应用中,例如针对权限级别较高的微服务,可以配置为开启认证权限的开关,以在接收到调用请求时,对调用请求进行验证,基于验证后的处理结果确定是否提供对应的服务,从而提高服务调用的安全性;权限级别较低的微服务,可以配置为关闭认证权限的开关,以在接收到调用请求时,迅速给出无需进行验证的处理结果,从而微服务请求方可以基于该处理结果调用对应的服务,提升处理效率。本申请实施例中,微服务请求方可以根据微服务提供方相应的处理结果对服务进行调用,处理方式灵活多变。
在一些实施例中,根据所述处理结果确定能否调用所述微服务提供方提供的服务,包括:
若所述处理结果基于进行验证的方式生成,则获取所述微服务提供方对所述调用请求进行验证后的处理结果,在处理结果表征验证通过的情况下,调用所述微服务提供方提供的服务;
若所述处理结果基于不进行验证的方式生成,则确定能够调用所述微服务提供方提供的服务。
本实施例中,微服务请求方基于微服务提供方发送的处理结果确定是否能够进行服务调用。在一些具体的应用中,微服务请求方获取的处理结果为需进行验证时,则获取微服务提供方对调用请求进行验证后的处理结果。微服务提供方对调用请求进行验证时,从调用请求中解析出token,验证token的有效性,token有效时,则返回验证通过的处理结果。微服务请求方基于验证通过的处理结果对微服务提供方所提供的服务进行调用。若微服务请求方获取的处理结果为不需要进行验证时,则能够直接调用微服务提供方提供的服务。由此,微服务请求方可以根据微服务提供方相应的处理结果对服务进行调用,处理方式灵活多变。
示例性的,图4给出了本申请实施例所提供的微服务调用处理方法在一些实施例中的流程示意图。如图4所示,在一些实际的应用过程中,微服务A向微服务B发起feign调用时,微服务A作为微服务请求方,需要先通过目标认证中心获取token,以生成调用请求发送至作为微服务提供方的微服务B。微服务B接收到调用请求后,先判断认证权限的状态,以在后续根据认证权限的状态进行相应的处理步骤。在认证权限为开启状态的情况下,微服务B的处理过程中,先判断发送该调用请求的微服务A是否为网关IP,若为网关IP,则无需验证调用请求,此时,微服务A的调用请求成功,可以调用微服务B所提供的服务。若微服务A的网关不是网关IP,则微服务B从调用请求中解析出token进行验证,若token有效则验证通过,微服务A的调用请求成功,可以调用微服务B所提供的服务;若token无效则验证未通过,微服务A的调用请求失败,不能调用微服务B所提供的服务。在认证权限为开启状态的情况下,微服务B确定无需进行验证,此时处理结果为无需进行验证,则微服务A的调用请求成功,可以调用微服务B所提供的服务。
本申请第二方面提供了一种微服务调用处理装置,如图5所示,所述处理装置包括:
生成模块10,配置为从目标认证中心获取对应的token,基于所述token生成调用请求发送至微服务提供方;其中,所述目标认证中心基于认证中心集群中的各个认证中心确定,所述各个认证中心同步有与各个微服务对应的token信息;
调用模块20,配置为获取所述微服务提供方接收所述调用请求后的处理结果,根据所述处理结果确定能否调用所述微服务提供方提供的服务。
本申请实施例中的所述微服务调用处理装置,通过其配置的生成模块10和调用模块20,能够实现本申请任意实施例提供的微服务调用处理方法的步骤,本实施例在此不再赘述。
本申请实施例第三方面还提供了一种电子设备,至少包括存储器501、处理器502和总线(未图示),其中,该电子设备的结构示意图可以如图6所示,存储器501存储有处理器502可执行的机器可读指令,当电子设备运行时,处理器502与存储器501之间通过总线通信,所述机器可读指令被所述处理器执行时执行本申请任意实施例提供的微服务调用处理方法的步骤。
由于本申请实施例所介绍的电子设备,为设置有实施本申请实施例所公开的微服务调用处理方法的存储器的电子设备,故而基于本申请实施例所介绍的微服务调用处理方法,本领域所属技术人员能够了解本申请实施例所介绍的电子设备的结构及变形,故而在此不再赘述。
本申请实施例第四方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器运行时,执行上述任意实施例提供的微服务调用处理方法中任一项方法步骤。
本实施例中的存储介质可以是电子设备中所包含的;也可以是单独存在,而未装配入电子设备中。上述存储介质承载有一个或者多个计算机程序,当上述一个或者多个计算机程序被执行时,实现根据本申请实施例提供的微服务调用处理方法的步骤。
根据本申请的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。可选地,本实施例中的具体示例可以参考本申请任意实施例中所描述的示例,本实施例在此不再赘述。显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本邻域技术人员应当理解,本申请中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本申请的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
以上实施例仅为本申请的示例性实施例,不用于限制本申请,本申请的保护范围由权利要求书限定。本领域技术人员可以在本申请的实质和保护范围内,对本申请做出各种修改或等同替换,这种修改或等同替换也应视为落在本申请的保护范围内。
Claims (10)
1.一种微服务调用处理方法,应用于微服务请求方,其中,包括:
从目标认证中心获取对应的token,基于所述token生成调用请求发送至微服务提供方;其中,所述目标认证中心基于认证中心集群中的各个认证中心确定,所述各个认证中心同步有与各个微服务对应的token信息;
获取所述微服务提供方接收所述调用请求后的处理结果,根据所述处理结果确定能否调用所述微服务提供方提供的服务。
2.根据权利要求1所述的方法,其中,所述处理结果的生成方式包括:
通过所述微服务提供方基于认证权限的开关状态确定是否对所述调用请求进行验证,以基于是否进行验证的方式生成相应的处理结果;其中,包括:
若所述认证权限处于开启状态,则对所述调用请求进行验证;
若所述认证权限处于关闭状态,则不对所述调用请求进行验证。
3.根据权利要求2所述的方法,其中,根据所述处理结果确定能否调用所述微服务提供方提供的服务,包括:
若所述处理结果基于进行验证的方式生成,则获取所述微服务提供方对所述调用请求进行验证后的处理结果,在处理结果表征验证通过的情况下,调用所述微服务提供方提供的服务;
若所述处理结果基于不进行验证的方式生成,则确定能够调用所述微服务提供方提供的服务。
4.根据权利要求1所述的方法,其中,所述目标认证中心的确定方式包括:
通过从所述认证中心集群中确定与IP地址对应的本地认证中心,以确定所述目标认证中心。
5.根据权利要求4所述的方法,其中,所述目标认证中心的确定方式还包括:
在所述本地认证中心不可用时,通过从所述认证中心集群中确定与所述IP地址确定的地理位置最近的第一认证中心作为所述目标认证中心。
6.根据权利要求1所述的方法,其中,从目标认证中心获取对应的token,包括:
若内存数据库存在所述token,则通过所述目标认证中心从内存数据库提取所述token,以获取所述token;
若所述内存数据库不存在所述token,则通过所述目标认证中心基于所述微服务请求方的标识信息生成token,以获取所述token。
7.根据权利要求6所述的方法,其中,从目标认证中心获取对应的token之前,还包括:
在授权权限处于开启状态的情况下,若通过所述目标认证中心申请所述token成功,则基于配置信息进行启动;
在授权权限处于关闭状态的情况下,则基于配置信息进行启动。
8.根据权利要求7所述的方法,其中,还包括:
在申请token成功的情况下,通过所述目标认证中心基于预设时间间隔根据授权权限的开关状态确定是否刷新所述token;其中,包括:
若所述授权权限处于开启状态,则通过所述目标认证中心刷新所述token,并更新内存数据库;
若所述授权权限处于关闭状态,则不通过所述目标认证中心进行刷新操作。
9.根据权利要求1-8中任一项所述的方法,其中,还包括:
发送签名信息或密码信息至所述目标认证中心进行验证,以获取验证结果;
在所述验证结果表征签名信息或密码信息有效的情况下,则能够从所述目标认证中心获取所述token。
10.一种微服务调用处理装置,其中,包括:
生成模块,配置为从目标认证中心获取对应的token,基于所述token生成调用请求发送至微服务提供方;其中,所述目标认证中心基于认证中心集群中的各个认证中心确定,所述各个认证中心同步有与各个微服务对应的token信息;
调用模块,配置为获取所述微服务提供方接收所述调用请求后的处理结果,根据所述处理结果确定能否调用所述微服务提供方提供的服务。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210570725 | 2022-05-24 | ||
CN2022105707259 | 2022-05-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115065717A true CN115065717A (zh) | 2022-09-16 |
Family
ID=83197797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210625060.7A Pending CN115065717A (zh) | 2022-05-24 | 2022-06-02 | 一种微服务调用处理方法及处理装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115065717A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107634973A (zh) * | 2017-10-31 | 2018-01-26 | 深圳竹云科技有限公司 | 一种服务接口安全调用方法 |
CN110022279A (zh) * | 2018-01-08 | 2019-07-16 | 普天信息技术有限公司 | 一种微服务系统中认证鉴权的方法和系统 |
CN110535882A (zh) * | 2019-09-27 | 2019-12-03 | 南方电网科学研究院有限责任公司 | 一种基于异构终端的身份认证服务方法及系统 |
CN111865882A (zh) * | 2019-04-30 | 2020-10-30 | 北京神州泰岳软件股份有限公司 | 一种微服务认证方法和系统 |
CN112291221A (zh) * | 2020-10-22 | 2021-01-29 | 北京神州数字科技有限公司 | 微服务间服务访问认证方法及系统 |
CN114338223A (zh) * | 2022-01-14 | 2022-04-12 | 百果园技术(新加坡)有限公司 | 一种用户鉴权方法、系统、装置、设备及存储介质 |
CN114444058A (zh) * | 2021-12-28 | 2022-05-06 | 新奥特(北京)视频技术有限公司 | 一种微服务的鉴权系统、方法、电子设备和存储介质 |
-
2022
- 2022-06-02 CN CN202210625060.7A patent/CN115065717A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107634973A (zh) * | 2017-10-31 | 2018-01-26 | 深圳竹云科技有限公司 | 一种服务接口安全调用方法 |
CN110022279A (zh) * | 2018-01-08 | 2019-07-16 | 普天信息技术有限公司 | 一种微服务系统中认证鉴权的方法和系统 |
CN111865882A (zh) * | 2019-04-30 | 2020-10-30 | 北京神州泰岳软件股份有限公司 | 一种微服务认证方法和系统 |
CN110535882A (zh) * | 2019-09-27 | 2019-12-03 | 南方电网科学研究院有限责任公司 | 一种基于异构终端的身份认证服务方法及系统 |
CN112291221A (zh) * | 2020-10-22 | 2021-01-29 | 北京神州数字科技有限公司 | 微服务间服务访问认证方法及系统 |
CN114444058A (zh) * | 2021-12-28 | 2022-05-06 | 新奥特(北京)视频技术有限公司 | 一种微服务的鉴权系统、方法、电子设备和存储介质 |
CN114338223A (zh) * | 2022-01-14 | 2022-04-12 | 百果园技术(新加坡)有限公司 | 一种用户鉴权方法、系统、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109981561B (zh) | 单体架构系统迁移到微服务架构的用户认证方法 | |
CN112039909B (zh) | 基于统一网关的认证鉴权方法、装置、设备及存储介质 | |
CN107483509B (zh) | 一种身份验证方法、服务器及可读存储介质 | |
US10367817B2 (en) | Systems and methods for challengeless coauthentication | |
EP3439230B1 (en) | Method and device for registering biometric identity and authenticating biometric identity | |
JP6401784B2 (ja) | 決済認証システム、方法及び装置 | |
JP4742903B2 (ja) | 分散認証システム及び分散認証方法 | |
KR101242329B1 (ko) | 보안 가입자 식별 모듈 서비스를 제공하기 위해 컴퓨터로 구현되는 방법, 보안 가입자 식별 모듈 서비스를 제공하는 장치 및 컴퓨터 판독가능 저장매체 | |
US7707630B2 (en) | Remote authentication caching on a trusted client or gateway system | |
US20080010673A1 (en) | System, apparatus, and method for user authentication | |
CN112559993B (zh) | 身份认证方法、装置、系统及电子设备 | |
KR960035299A (ko) | 원격 사용자와 응용 서버간의 통신 관리 방법, 원격 사용자의 주체 인증 방법, 분산 컴퓨터 환경을 제공하는 네트워크 및 프로그램 저장 장치 | |
CN110417730B (zh) | 多应用程序的统一接入方法及相关设备 | |
US11848931B2 (en) | Delegated authentication to certificate authorities | |
WO2019056971A1 (zh) | 一种鉴权方法及设备 | |
US20230388304A1 (en) | Decentralized application authentication | |
KR102410006B1 (ko) | 사용자 권한 관리가 가능한 did 생성 방법 및 이를 이용한 사용자 권한 관리 시스템 | |
JP2001077858A (ja) | 通信ネットワーク管理方法、モバイルエージェント移動管理方法及び通信ネットワーク | |
CN112291221A (zh) | 微服务间服务访问认证方法及系统 | |
CN104052829A (zh) | 自适应名字解析 | |
CN114189380A (zh) | 一种基于零信任的物联网设备分布式认证系统及授权方法 | |
WO2007060016A2 (en) | Self provisioning token | |
CN115065717A (zh) | 一种微服务调用处理方法及处理装置 | |
CN115278671A (zh) | 网元鉴权方法、装置、存储介质和电子设备 | |
CN111723347B (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 |