CN109802835A - 一种安全认证方法、***及api网关 - Google Patents
一种安全认证方法、***及api网关 Download PDFInfo
- Publication number
- CN109802835A CN109802835A CN201910073452.5A CN201910073452A CN109802835A CN 109802835 A CN109802835 A CN 109802835A CN 201910073452 A CN201910073452 A CN 201910073452A CN 109802835 A CN109802835 A CN 109802835A
- Authority
- CN
- China
- Prior art keywords
- token
- client
- micro services
- call request
- api gateway
- 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
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000005540 biological transmission Effects 0.000 claims description 18
- 238000012795 verification Methods 0.000 claims description 15
- 238000010200 validation analysis Methods 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 3
- 238000011161 development Methods 0.000 abstract description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 2
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种安全认证方法、***及API网关,该安全认证方法中客户端向API网关发送携带有令牌的调用请求,通过API网关验证该调用请求中携带的令牌是否有效,如果该调用请求中携带的令牌有效,则说明发送该调用请求的客户端是经过安全认证的客户端,API网关将经过安全认证的客户端发送的调用请求发送至微服务,以调用微服务。由于采用API网关对发送调用请求的客户端进行安全认证,只有安全认证通过的客户端才能调用微服务,保证了微服务架构的安全性,且只需要对API网关进行开发,而不需要对微服务架构中的各个微服务本身进行开发,不仅降低了开发成本而且提高了安全认证方法的通用性。
Description
技术领域
本发明属于安全认证技术领域,尤其涉及一种安全认证方法、***及API网关。
背景技术
随着分布式技术的快速发展,微服务架构在企业级应用中得到关注。
现有微服务架构的安全认证方法是通过对微服务自身进行开发,使得在微服务接收到调用请求时,对发送调用请求的客户端进行安全认证,以保证微服务架构的安全性。
但是,通过对微服务自身进行开发使得微服务具有安全认证功能,不仅由于需要对每个微服务单独进行开发导致开发成本大,而且针对每个微服务开发的安全认证方法不能通用在其他微服务上,降低了安全认证方法的通用性。
发明内容
有鉴于此,本发明的目的在于提供一种安全认证方法、***及API网关,以解决现有技术中应用于微服务架构的安全认证方法开发成本大,通用性差的问题。
技术方案如下:
本发明提供一种安全认证方法,应用于API网关,包括:
接收客户端发送的携带有令牌的调用请求;其中,所述令牌为对客户端完成安全认证后生成的令牌;
验证所述令牌是否有效;
若验证所述令牌有效,则向微服务发送所述调用请求以调用所述微服务。
优选地,所述验证所述令牌是否有效包括:
将所述令牌发送至认证中心,以利用认证中心验证所述令牌是否有效;
接收所述认证中心返回的对所述令牌的验证结果。
优选地,若验证所述令牌无效,还包括:
向所述客户端发送令牌失效的信息,使得客户端接收到令牌失效的信息后重新向所述认证中心发送令牌获取请求,所述认证中心响应所述令牌获取请求后生成令牌并发送至所述客户端。
优选地,所述生成令牌包括:
获取秘钥;
基于安全算法对所述秘钥进行运算后生成令牌。
优选地,所述向微服务发送所述调用请求以调用所述微服务包括:
根据所述调用请求中携带的令牌,确定发送所述调用请求的客户端;
基于预存的客户端与调用权限之间的对应关系,确定发送所述调用请求的客户端是否具有调用所述微服务的权限;
确定发送所述调用请求的客户端具有调用所述微服务的权限,则调用所述微服务。
本发明还提供了一种API网关,包括:
接收单元,用于接收客户端发送的携带有令牌的调用请求;其中,所述令牌为对客户端完成安全认证后生成的令牌;
验证单元,用于验证所述令牌是否有效;
调用单元,用于若验证所述令牌有效,则向微服务发送所述调用请求以调用所述微服务。
本发明还提供了一种安全认证***,包括:
API网关;
与API网关分别连接的客户端以及微服务;
所述客户端用于向所述API网关发送携带有令牌的调用请求;
所述API网关用于接收到所述客户端发送的携带有令牌的调用请求后,验证所述令牌是否有效,并在验证所述令牌有效时,向所述微服务发送该调用请求以调用所述微服务。
优选地,还包括:
分别与所述API网关、所述客户端连接的认证中心;
所述认证中心用于生成令牌,将生成的令牌发送至所述客户端,并对接收到的所述API网关发送的令牌进行有效性验证,将令牌验证结果发送至所述API网关。
优选地,若所述验证结果为令牌无效,则:
所述API网关还用于向所述客户端发送令牌失效的信息;
所述客户端还用于接收到所述API网关返回的令牌失效的信息后,向所述认证中心发送令牌获取请求;
所述认证中心还用于响应所述令牌获取请求以生成令牌,并将生成的令牌发送至所述客户端。
优选地,所述令牌获取请求包括客户端身份信息;
其中,所述响应所述令牌获取请求以生成令牌包括:
从所述令牌获取请求中获取客户端身份信息;
根据所述客户端身份信息,对所述客户端进行身份验证;
若所述客户端身份验证通过,则生成令牌。
优选地,还包括:
分别与所述认证中心以及所述微服务连接的权限中心;
所述权限中心用于接收并存储所述认证中心发送的令牌与客户端之间的对应关系,接收到所述微服务发送的令牌后,基于存储的令牌与客户端之间的对应关系确定与所述微服务发送的令牌对应的客户端,并基于预置的客户端与调用权限之间的对应关系,确定与所述微服务发送的令牌对应的客户端是否具有调用所述微服务的权限。
与现有技术相比,本发明提供的上述技术方案具有如下优点:
从上述技术方案可知,本申请中客户端向API网关发送携带有令牌的调用请求,通过API网关验证该调用请求中携带的令牌是否有效,如果该调用请求中携带的令牌有效,则说明发送该调用请求的客户端是经过安全认证的客户端,API网关将经过安全认证的客户端发送的调用请求发送至微服务,以调用微服务。由于采用API网关对发送调用请求的客户端进行安全认证,只有安全认证通过的客户端才能调用微服务,保证了微服务架构的安全性,且只需要对API网关进行开发,而不需要对微服务架构中的各个微服务本身进行开发,不仅降低了开发成本而且提高了安全认证方法的通用性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种安全认证方法的流程图;
图2是本发明实施例提供的另一种安全认证方法的流程图;
图3是本发明实施例提供的另一种安全认证方法的时序图;
图4是本发明实施例提供的API网关的结构示意图;
图5是本发明实施例提供的一种安全认证***的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本实施例公开了一种安全认证方法,应用于API网关,以对微服务架构进行安全认证,参见图1,该实施例包括以下步骤:
S101、接收客户端发送的携带有令牌的调用请求;其中,所述令牌为对客户端完成安全认证后生成的令牌;
本实施例中,API网关接收到的调用请求中携带有令牌。令牌是对客户端完成安全认证后生成的令牌,生成令牌后将令牌发送至完成安全认证的客户端。使得完成安全认证的客户端存在调用微服务的需求时,向API网关发送携带有令牌的调用请求以调用对应的微服务。
S102、验证所述令牌是否有效;
对客户端发送的调用请求中携带的令牌进行有效性验证。其中,令牌具有有效期,在有效期内令牌有效;超过有效期后,令牌失效。
验证令牌是否有效的一种实现方式为:记录令牌生成的时间,在接收到携带有令牌的调用请求后,确定该调用请求中携带的令牌的生成时间,并根据该令牌的生成时间确定该令牌是否在有效期内。若确定该调用请求中携带的令牌在有效期内,则验证令牌有效;若确定该调用请求中携带的令牌超过有效期,则验证令牌失效。另一种验证令牌是否有效的实现方式为:在令牌超过有效期后,删除存储的令牌,即仅存储处于有效期的令牌,在接收到携带有令牌的调用请求后,确定是否存储有与该调用请求中携带的令牌相同的令牌。若确定存储有与该调用请求中携带的令牌相同的令牌,则验证令牌有效;若确定没有存储有与该调用请求中携带的令牌相同的令牌,则验证令牌失效。
S103、若验证所述令牌有效,则向微服务发送所述调用请求以调用所述微服务。
验证令牌有效,则说明发送携带该令牌的客户端已经完成了安全认证,将完成安全认证的客户端发送的调用请求发送至微服务,使得微服务处理该调用请求,并将处理结果返回至对应的客户端。
验证令牌无效,则不能响应此次调用微服务的调用请求,向客户端发送提示信息,以提示重新获取令牌。
从上述技术方案可知,本实施例中客户端向API网关发送携带有令牌的调用请求,通过API网关验证该调用请求中携带的令牌是否有效,如果该调用请求中携带的令牌有效,则说明发送该调用请求的客户端是经过安全认证的客户端,API网关将经过安全认证的客户端发送的调用请求发送至微服务,以调用微服务。由于本实施例中采用API网关对发送调用请求的客户端进行安全认证,只有安全认证通过的客户端才能调用微服务,保证了微服务架构的安全性,且只需要对API网关进行开发,而不需要对微服务架构中的各个微服务本身进行开发,不仅降低了开发成本而且提高了安全认证方法的通用性。
本实施例中还提供了另一种安全认证方法,参见图2所示,该实施例包括以下步骤:
S201、接收客户端发送的携带有令牌的调用请求;其中,所述令牌为对客户端完成安全认证后生成的令牌;
本实施例中步骤S201的实现方式与上一实施例中步骤S101的实现方式类似,此处不再赘述。
S202、将所述令牌发送至认证中心,以利用认证中心验证所述令牌是否有效;
本实施例中,认证中心用于接收到客户端发送的令牌获取请求后,生成令牌,并将生成的令牌返回给发送令牌获取请求的客户端。使得客户端存在调用微服务的需求时,向API网关发送携带有从认证中心获取到的令牌的调用请求。
其中,令牌获取请求包括客户端身份信息。
可选地,本实施例中客户端身份信息包括AK(Access Key ID)、SK(Secret AccessKey),其中,SK用于标识客户端。
认证中心在接收到令牌获取请求后,从所述令牌获取请求中获取客户端身份信息;根据所述客户端身份信息,对所述客户端进行身份验证;若所述客户端身份验证通过,则说明客户端完成安全认证,生成令牌,将生成的令牌发送至完成安全认证的客户端,以利用令牌保存认证状态。若所述客户端身份验证没有通过,则并不执行生成令牌的操作,进而客户端不能获取到令牌。
可选地,本实施例中认证中心完成对客户端身份的验证后,存储用于标识客户端的信息,如客户端标识,使得在生成令牌后建立令牌以及客户端之间的对应关系。
一种生成令牌的实现方式为:获取秘钥,并基于安全算法对所述秘钥进行运算后生成令牌。其中,安全算法可以为国密算法,秘钥可以为随机生成的随机数,由于每次使用的秘钥不同,因此进一步增强了安全性。
另一种生成令牌的实现方式为:利用公钥对令牌获取请求中包括的客户端身份信息进行加密,将密文作为令牌。
本实施例中,认证中心除接收客户端发送的令牌获取请求,生成令牌并将令牌发送至完成安全认证的客户端的功能外,还具有对API网关接收到的对微服务的调用请求中的令牌进行有效性验证的功能。
其中,令牌具有有效期,在有效期内令牌有效;超过有效期后,令牌失效。
验证令牌是否有效的一种实现方式为:认证中心生成令牌后,记录该令牌以及该令牌的生成时间,在接收到携带有令牌的调用请求后,确定该调用请求中携带的令牌的生成时间,并根据该令牌的生成时间确定该调用请求中携带的令牌是否在有效期内。若确定该调用请求中携带的令牌在有效期内,则验证令牌有效;若确定该调用请求中携带的令牌超过有效期,则验证令牌失效。
另一种验证令牌是否有效的实现方式为:认证中心生成令牌后,记录该令牌以及该令牌的生成时间,在令牌超过有效期后,删除存储的令牌以及令牌的生成时间,即仅存储处于有效期的令牌,在接收到携带有令牌的调用请求后,确定是否存储有与该调用请求中携带的令牌相同的令牌。若确定存储有与该调用请求中携带的令牌相同的令牌,则验证令牌有效;若确定没有存储有与该调用请求中携带的令牌相同的令牌,则验证令牌失效。
S203、接收所述认证中心返回的对所述令牌的验证结果;
若验证所述令牌无效,则执行步骤S204;
若验证所述令牌有效,则执行步骤S205;
验证结果包括令牌有效和令牌无效,令牌有效说明客户端完成安全认证,令牌无效说明需要重新执行对客户端的安全认证操作。
S204、向所述客户端发送令牌失效的信息,使得客户端接收到令牌失效的信息后重新向所述认证中心发送令牌获取请求,所述认证中心响应所述令牌获取请求后生成令牌并发送至所述客户端;
本步骤中认证中心接收到客户端发送的令牌获取请求后生成令牌的方式与步骤S202中描述的认证中心接收到客户端发送的令牌获取请求后生成令牌的方式类似,此处不再赘述。
通过执行本步骤,认证中心完成对客户端的安全认证后,重新生成新的令牌并发送至完成安全认证的客户端,返回执行步骤S201,使得客户端再次向API网关发送调用请求时携带新的令牌。
通过对令牌有效性的验证,可以确定发送调用请求的客户端是否安全,但是,安全的客户端并不一定具有调用每个微服务的权限,因此,完成对客户端的安全认证后,还需要执行对客户端调用权限的验证,只有具有调用权限的客户端,才能调用对应的微服务。本实施例中,通过执行步骤S205-S206,实现对客户端调用权限的验证。
S205、根据所述调用请求中携带的令牌,确定发送所述调用请求的客户端;
本实施例中将调用请求发送至微服务后,微服务并不直接响应该调用请求,而是需要对发送该调用请求的客户端的调用所述微服务的权限进行验证。
由于本实施例中认证中心生成令牌后建立了令牌与客户端之间的对应关系,因此,微服务接收到调用请求后,可以将从调用请求中获取到的令牌发送至认证中心,然后认证中心基于建立的令牌与客户端之间的对应关系,确定与调用请求中携带的令牌对应的客户端,该客户端即为发送所述调用请求的客户端。
S206、基于预存的客户端与调用权限之间的对应关系,确定发送所述调用请求的客户端是否具有调用所述微服务的权限;
认证中心中除了存储有令牌与客户端之间的对应关系外,还存储有客户端与调用权限之间的对应关系。基于存储的客户端与调用权限之间的对应关系,确定发送所述调用请求的客户端是否具有调用所述微服务的权限。
本实施例中步骤S205-S206是利用认证中心对发送所述调用请求的客户端的调用权限进行验证。
在其他实施例中还可以设置与认证中心、微服务分别连接的权限中心,认证中心在生成令牌并建立令牌与客户端之间的对应关系后,将令牌与客户端之间的对应关系发送至权限中心存储。所述权限中心中预置有客户端与调用权限之间的对应关系。微服务在接收到携带有令牌的调用请求后,将令牌发送至权限中心,权限中心基于存储的令牌与客户端之间的对应关系,确定与调用请求中携带的令牌对应的客户端,该客户端即为发送所述调用请求的客户端,并基于存储的客户端与调用权限之间的对应关系,确定发送所述调用请求的客户端是否具有调用所述微服务的权限。
S207、确定发送所述调用请求的客户端具有调用所述微服务的权限,则调用所述微服务。
确定发送所述调用请求的客户端具有调用所述微服务的权限,则调用所述微服务,微服务对调用请求进行处理,并将处理结果逐级返回至发送所述调用请求的客户端。
确定发送所述调用请求的客户端不具有调用所述微服务的权限,则不能执行调用微服务的操作,向发送所述调用请求的客户端返回提示信息,以提示不具有调用所述微服务的权限。
参见图3所示,其示出了本实施例中各端之间交互的时序图。
从上述技术方案可知,本实施例中客户端向API网关发送携带有令牌的调用请求,通过API网关验证该调用请求中携带的令牌是否有效,如果该调用请求中携带的令牌有效,则说明发送该调用请求的客户端是经过安全认证的客户端,API网关将经过安全认证的客户端发送的调用请求发送至微服务,并对发送该调用请求的客户端的调用权限进行验证,验证客户端具有调用权限,则调用微服务。由于本实施例中采用API网关对发送调用请求的客户端进行安全认证,只有安全认证通过的客户端才能调用微服务,保证了微服务架构的安全性,且只需要对API网关进行开发,而不需要对微服务架构中的各个微服务本身进行开发,不仅降低了开发成本而且提高了安全认证方法的通用性。同时,通过对客户端调用权限的验证,进一步保证了微服务架构的安全性。
对应上述实施例公开的安全认证方法,本实施例公开了一种API网关,该API网关结构示意图请参阅图4所示,本实施例中API网关包括:
接收单元401、验证单元402和调用单元403;
接收单元401,用于接收客户端发送的携带有令牌的调用请求;其中,所述令牌为对客户端完成安全认证后生成的令牌;
验证单元402,用于验证所述令牌是否有效;
调用单元403,用于若验证所述令牌有效,则向微服务发送所述调用请求以调用所述微服务。
从上述技术方案可知,本实施例中客户端向API网关发送携带有令牌的调用请求,通过API网关验证该调用请求中携带的令牌是否有效,如果该调用请求中携带的令牌有效,则说明发送该调用请求的客户端是经过安全认证的客户端,API网关将经过安全认证的客户端发送的调用请求发送至微服务,以调用微服务。由于本实施例中采用API网关对发送调用请求的客户端进行安全认证,只有安全认证通过的客户端才能调用微服务,保证了微服务架构的安全性,且只需要对API网关进行开发,而不需要对微服务架构中的各个微服务本身进行开发,不仅降低了开发成本而且提高了安全认证方法的通用性。
对应上述公开的安全认证方法,本实施例还提供了一种安全认证***,该安全认证***的结构示意图请参阅图5所示,本实施例中安全认证***包括:
API网关501;
与API网关501分别连接的客户端502以及微服务503;
客户端502用于向API网关501发送携带有令牌的调用请求;
API网关501用于接收到客户端502发送的携带有令牌的调用请求后,验证所述令牌是否有效,并在验证所述令牌有效时,向微服务503发送该调用请求以调用所述微服务。
可选地,本实施例中安全认证***还包括:
分别与API网关501、客户端502连接的认证中心504;
认证中心504用于生成令牌,将生成的令牌发送至客户端502,并对接收到的API网关501发送的令牌进行有效性验证,将令牌验证结果发送至API网关501。
若所述验证结果为令牌无效,则:
API网关501还用于向客户端502发送令牌失效的信息;
客户端502还用于接收到API网关501返回的令牌失效的信息后,向认证中心504发送令牌获取请求;
认证中心504还用于响应所述令牌获取请求以生成令牌,并将生成的令牌发送至客户端502。
可选地,令牌获取请求中包括客户端身份信息,认证中心504响应所述令牌获取请求,生成令牌的一种实现方式为:从所述令牌获取请求中获取客户端身份信息,根据所述客户端身份信息,对所述客户端进行身份验证;若所述客户端身份验证通过,则生成令牌;若客户端身份验证没有通过,则不生成令牌。
在图5所示安全认证***的基础上,还包括:权限中心505;
分别与认证中心504以及微服务503连接的权限中心505;
权限中心505用于接收并存储认证中心504发送的令牌与客户端之间的对应关系,接收到微服务503发送的令牌后,基于存储的令牌与客户端之间的对应关系确定与微服务503发送的令牌对应的客户端,并基于预置的客户端与调用权限之间的对应关系,确定与微服务503发送的令牌对应的客户端是否具有调用所述微服务的权限。
从上述技术方案可知,本实施例中客户端向API网关发送携带有令牌的调用请求,通过API网关验证该调用请求中携带的令牌是否有效,如果该调用请求中携带的令牌有效,则说明发送该调用请求的客户端是经过安全认证的客户端,API网关将经过安全认证的客户端发送的调用请求发送至微服务,并对发送该调用请求的客户端的调用权限进行验证,验证客户端具有调用权限,则调用微服务。由于本实施例中采用API网关对发送调用请求的客户端进行安全认证,只有安全认证通过的客户端才能调用微服务,保证了微服务架构的安全性,且只需要对API网关进行开发,而不需要对微服务架构中的各个微服务本身进行开发,不仅降低了开发成本而且提高了安全认证方法的通用性。同时,通过对客户端调用权限的验证,进一步保证了微服务架构的安全性。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的装置而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (11)
1.一种安全认证方法,其特征在于,应用于API网关,包括:
接收客户端发送的携带有令牌的调用请求;其中,所述令牌为对客户端完成安全认证后生成的令牌;
验证所述令牌是否有效;
若验证所述令牌有效,则向微服务发送所述调用请求以调用所述微服务。
2.根据权利要求1所述的安全认证方法,其特征在于,所述验证所述令牌是否有效包括:
将所述令牌发送至认证中心,以利用认证中心验证所述令牌是否有效;
接收所述认证中心返回的对所述令牌的验证结果。
3.根据权利要求1或2所述的安全认证方法,其特征在于,若验证所述令牌无效,还包括:
向所述客户端发送令牌失效的信息,使得客户端接收到令牌失效的信息后重新向所述认证中心发送令牌获取请求,所述认证中心响应所述令牌获取请求后生成令牌并发送至所述客户端。
4.根据权利要求3所述的安全认证方法,其特征在于,所述生成令牌包括:
获取秘钥;
基于安全算法对所述秘钥进行运算后生成令牌。
5.根据权利要求3所述的安全认证方法,其特征在于,所述向微服务发送所述调用请求以调用所述微服务包括:
根据所述调用请求中携带的令牌,确定发送所述调用请求的客户端;
基于预存的客户端与调用权限之间的对应关系,确定发送所述调用请求的客户端是否具有调用所述微服务的权限;
确定发送所述调用请求的客户端具有调用所述微服务的权限,则调用所述微服务。
6.一种API网关,其特征在于,包括:
接收单元,用于接收客户端发送的携带有令牌的调用请求;其中,所述令牌为对客户端完成安全认证后生成的令牌;
验证单元,用于验证所述令牌是否有效;
调用单元,用于若验证所述令牌有效,则向微服务发送所述调用请求以调用所述微服务。
7.一种安全认证***,其特征在于,包括:
API网关;
与API网关分别连接的客户端以及微服务;
所述客户端用于向所述API网关发送携带有令牌的调用请求;
所述API网关用于接收到所述客户端发送的携带有令牌的调用请求后,验证所述令牌是否有效,并在验证所述令牌有效时,向所述微服务发送该调用请求以调用所述微服务。
8.根据权利要求7所述的安全认证***,其特征在于,还包括:
分别与所述API网关、所述客户端连接的认证中心;
所述认证中心用于生成令牌,将生成的令牌发送至所述客户端,并对接收到的所述API网关发送的令牌进行有效性验证,将令牌验证结果发送至所述API网关。
9.根据权利要求8所述的安全认证***,其特征在于,若所述验证结果为令牌无效,则:
所述API网关还用于向所述客户端发送令牌失效的信息;
所述客户端还用于接收到所述API网关返回的令牌失效的信息后,向所述认证中心发送令牌获取请求;
所述认证中心还用于响应所述令牌获取请求以生成令牌,并将生成的令牌发送至所述客户端。
10.根据权利要求9所述的安全认证***,其特征在于,所述令牌获取请求包括客户端身份信息;
其中,所述响应所述令牌获取请求以生成令牌包括:
从所述令牌获取请求中获取客户端身份信息;
根据所述客户端身份信息,对所述客户端进行身份验证;
若所述客户端身份验证通过,则生成令牌。
11.根据权利要求7-10任意一项所述的安全认证***,其特征在于,还包括:
分别与所述认证中心以及所述微服务连接的权限中心;
所述权限中心用于接收并存储所述认证中心发送的令牌与客户端之间的对应关系,接收到所述微服务发送的令牌后,基于存储的令牌与客户端之间的对应关系确定与所述微服务发送的令牌对应的客户端,并基于预置的客户端与调用权限之间的对应关系,确定与所述微服务发送的令牌对应的客户端是否具有调用所述微服务的权限。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910073452.5A CN109802835A (zh) | 2019-01-25 | 2019-01-25 | 一种安全认证方法、***及api网关 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910073452.5A CN109802835A (zh) | 2019-01-25 | 2019-01-25 | 一种安全认证方法、***及api网关 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109802835A true CN109802835A (zh) | 2019-05-24 |
Family
ID=66560406
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910073452.5A Pending CN109802835A (zh) | 2019-01-25 | 2019-01-25 | 一种安全认证方法、***及api网关 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109802835A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110809011A (zh) * | 2020-01-08 | 2020-02-18 | 医渡云(北京)技术有限公司 | 访问控制方法及***、存储介质 |
CN111010396A (zh) * | 2019-12-17 | 2020-04-14 | 紫光云(南京)数字技术有限公司 | 一种互联网身份认证管理方法 |
CN111030828A (zh) * | 2019-12-19 | 2020-04-17 | 中国电建集团华东勘测设计研究院有限公司 | 微服务架构下的权限控制方法、***和访问令牌 |
CN111093197A (zh) * | 2019-12-31 | 2020-05-01 | 北大方正集团有限公司 | 权限认证方法、权限认证***和计算机可读存储介质 |
CN111355743A (zh) * | 2020-03-11 | 2020-06-30 | 成都卓杭网络科技股份有限公司 | 一种基于api网关的管理方法及其*** |
CN111865882A (zh) * | 2019-04-30 | 2020-10-30 | 北京神州泰岳软件股份有限公司 | 一种微服务认证方法和*** |
CN112291178A (zh) * | 2019-07-22 | 2021-01-29 | 京东方科技集团股份有限公司 | 一种服务提供方法、装置及电子设备 |
CN112367321A (zh) * | 2020-11-10 | 2021-02-12 | 苏州万店掌网络科技有限公司 | 快速构建服务调用的方法及中台api网关 |
CN112671841A (zh) * | 2020-12-10 | 2021-04-16 | 清研灵智信息咨询(北京)有限公司 | 基于微服务技术架构的数据安全管理方法及*** |
CN113810197A (zh) * | 2021-09-17 | 2021-12-17 | 上海市信产通信服务有限公司 | 基于OpenAPI的服务调用方法及其*** |
CN117579374A (zh) * | 2023-12-19 | 2024-02-20 | 重庆数子引力网络科技有限公司 | 基于OpenAPI的服务访问权限认证方法、装置、***和服务器 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101626369A (zh) * | 2008-07-11 | 2010-01-13 | ***通信集团公司 | 一种单点登录方法、设备及*** |
CN102546166A (zh) * | 2010-12-31 | 2012-07-04 | 北大方正集团有限公司 | 一种身份认证方法、***及装置 |
CN103188248A (zh) * | 2011-12-31 | 2013-07-03 | 卓望数码技术(深圳)有限公司 | 基于单点登录的身份认证***及方法 |
CN103634301A (zh) * | 2013-11-14 | 2014-03-12 | 新浪网技术(中国)有限公司 | 客户端及其访问服务器中用户存储的私有数据的方法 |
CN105592003A (zh) * | 2014-10-22 | 2016-05-18 | 北京拓尔思信息技术股份有限公司 | 一种基于通知的跨域单点登录方法及*** |
CN105610938A (zh) * | 2015-12-24 | 2016-05-25 | 广州爱九游信息技术有限公司 | 登录状态同步方法和*** |
CN107070880A (zh) * | 2017-02-16 | 2017-08-18 | 济南浪潮高新科技投资发展有限公司 | 一种单点登录的方法及***、一种认证中心服务器 |
CN107528853A (zh) * | 2017-09-12 | 2017-12-29 | 上海艾融软件股份有限公司 | 微服务权限控制的实现方法 |
CN108512784A (zh) * | 2018-06-21 | 2018-09-07 | 珠海宏桥高科技有限公司 | 基于网关路由转发的鉴权认证方法 |
US20180302391A1 (en) * | 2017-04-12 | 2018-10-18 | Cisco Technology, Inc. | System and method for authenticating clients |
CN108881232A (zh) * | 2018-06-21 | 2018-11-23 | 北京海泰方圆科技股份有限公司 | 业务***的登录访问方法、装置、存储介质和处理器 |
CN109039880A (zh) * | 2018-09-05 | 2018-12-18 | 四川长虹电器股份有限公司 | 一种利用api网关实现简单认证授权的方法 |
-
2019
- 2019-01-25 CN CN201910073452.5A patent/CN109802835A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101626369A (zh) * | 2008-07-11 | 2010-01-13 | ***通信集团公司 | 一种单点登录方法、设备及*** |
CN102546166A (zh) * | 2010-12-31 | 2012-07-04 | 北大方正集团有限公司 | 一种身份认证方法、***及装置 |
CN103188248A (zh) * | 2011-12-31 | 2013-07-03 | 卓望数码技术(深圳)有限公司 | 基于单点登录的身份认证***及方法 |
CN103634301A (zh) * | 2013-11-14 | 2014-03-12 | 新浪网技术(中国)有限公司 | 客户端及其访问服务器中用户存储的私有数据的方法 |
CN105592003A (zh) * | 2014-10-22 | 2016-05-18 | 北京拓尔思信息技术股份有限公司 | 一种基于通知的跨域单点登录方法及*** |
CN105610938A (zh) * | 2015-12-24 | 2016-05-25 | 广州爱九游信息技术有限公司 | 登录状态同步方法和*** |
CN107070880A (zh) * | 2017-02-16 | 2017-08-18 | 济南浪潮高新科技投资发展有限公司 | 一种单点登录的方法及***、一种认证中心服务器 |
US20180302391A1 (en) * | 2017-04-12 | 2018-10-18 | Cisco Technology, Inc. | System and method for authenticating clients |
CN107528853A (zh) * | 2017-09-12 | 2017-12-29 | 上海艾融软件股份有限公司 | 微服务权限控制的实现方法 |
CN108512784A (zh) * | 2018-06-21 | 2018-09-07 | 珠海宏桥高科技有限公司 | 基于网关路由转发的鉴权认证方法 |
CN108881232A (zh) * | 2018-06-21 | 2018-11-23 | 北京海泰方圆科技股份有限公司 | 业务***的登录访问方法、装置、存储介质和处理器 |
CN109039880A (zh) * | 2018-09-05 | 2018-12-18 | 四川长虹电器股份有限公司 | 一种利用api网关实现简单认证授权的方法 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111865882B (zh) * | 2019-04-30 | 2023-03-31 | 北京神州泰岳软件股份有限公司 | 一种微服务认证方法和*** |
CN111865882A (zh) * | 2019-04-30 | 2020-10-30 | 北京神州泰岳软件股份有限公司 | 一种微服务认证方法和*** |
CN112291178B (zh) * | 2019-07-22 | 2024-03-22 | 京东方科技集团股份有限公司 | 一种服务提供方法、装置及电子设备 |
CN112291178A (zh) * | 2019-07-22 | 2021-01-29 | 京东方科技集团股份有限公司 | 一种服务提供方法、装置及电子设备 |
CN111010396A (zh) * | 2019-12-17 | 2020-04-14 | 紫光云(南京)数字技术有限公司 | 一种互联网身份认证管理方法 |
CN111030828B (zh) * | 2019-12-19 | 2022-04-19 | 中国电建集团华东勘测设计研究院有限公司 | 微服务架构下的权限控制方法和*** |
CN111030828A (zh) * | 2019-12-19 | 2020-04-17 | 中国电建集团华东勘测设计研究院有限公司 | 微服务架构下的权限控制方法、***和访问令牌 |
CN111093197A (zh) * | 2019-12-31 | 2020-05-01 | 北大方正集团有限公司 | 权限认证方法、权限认证***和计算机可读存储介质 |
CN110809011B (zh) * | 2020-01-08 | 2020-06-19 | 医渡云(北京)技术有限公司 | 访问控制方法及***、存储介质 |
CN110809011A (zh) * | 2020-01-08 | 2020-02-18 | 医渡云(北京)技术有限公司 | 访问控制方法及***、存储介质 |
CN111355743A (zh) * | 2020-03-11 | 2020-06-30 | 成都卓杭网络科技股份有限公司 | 一种基于api网关的管理方法及其*** |
CN112367321B (zh) * | 2020-11-10 | 2021-11-02 | 苏州万店掌网络科技有限公司 | 快速构建服务调用的方法及中台api网关 |
CN112367321A (zh) * | 2020-11-10 | 2021-02-12 | 苏州万店掌网络科技有限公司 | 快速构建服务调用的方法及中台api网关 |
CN112671841A (zh) * | 2020-12-10 | 2021-04-16 | 清研灵智信息咨询(北京)有限公司 | 基于微服务技术架构的数据安全管理方法及*** |
CN113810197A (zh) * | 2021-09-17 | 2021-12-17 | 上海市信产通信服务有限公司 | 基于OpenAPI的服务调用方法及其*** |
CN117579374A (zh) * | 2023-12-19 | 2024-02-20 | 重庆数子引力网络科技有限公司 | 基于OpenAPI的服务访问权限认证方法、装置、***和服务器 |
CN117579374B (zh) * | 2023-12-19 | 2024-06-25 | 重庆数子引力网络科技有限公司 | 基于OpenAPI的服务访问权限认证方法、装置、***和服务器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109802835A (zh) | 一种安全认证方法、***及api网关 | |
CN105024819B (zh) | 一种基于移动终端的多因子认证方法及*** | |
EP3439230B1 (en) | Method and device for registering biometric identity and authenticating biometric identity | |
US9264232B2 (en) | Cryptographic device that binds an additional authentication factor to multiple identities | |
US9722984B2 (en) | Proximity-based authentication | |
JP6401784B2 (ja) | 決済認証システム、方法及び装置 | |
US9450760B2 (en) | System and method for authenticating a client to a device | |
CN109981561A (zh) | 单体架构***迁移到微服务架构的用户认证方法 | |
CN109325342A (zh) | 身份信息管理方法、装置、计算机设备和存储介质 | |
CN101257489A (zh) | 一种保护账号安全的方法 | |
CN105871864B (zh) | 移动终端身份认证方法及装置 | |
US10425407B2 (en) | Secure transaction and access using insecure device | |
US20200313910A1 (en) | System and method for efficient challenge-response authentication | |
CN105207970B (zh) | 基于公有云的认证方法、安全认证中间件及云计算资源池 | |
CN110069909A (zh) | 一种免密登录第三方***的方法及装置 | |
CN109040030A (zh) | 单点登录方法和*** | |
WO2015169000A1 (zh) | 一种身份识别方法及装置、存储介质 | |
CN110034933A (zh) | 跨***用户互信认证方法及跨***用户互信认证*** | |
CN104009963B (zh) | 远程密码的安全认证机制 | |
WO2016144806A2 (en) | Digital voice signature of transactions | |
CN116391347A (zh) | 基于代码的双因素认证 | |
CN114553573A (zh) | 身份认证方法及装置 | |
CN108471409B (zh) | 语音对话平台的应用程序接口鉴权配置方法及*** | |
EP2860935B1 (en) | A computer implemented method to prevent attacks against authorization systems and computer programs products thereof | |
TWI842944B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190524 |