CN115396116A - 接口鉴权方法、装置,存储介质及计算机终端 - Google Patents
接口鉴权方法、装置,存储介质及计算机终端 Download PDFInfo
- Publication number
- CN115396116A CN115396116A CN202211008853.0A CN202211008853A CN115396116A CN 115396116 A CN115396116 A CN 115396116A CN 202211008853 A CN202211008853 A CN 202211008853A CN 115396116 A CN115396116 A CN 115396116A
- Authority
- CN
- China
- Prior art keywords
- access
- authentication
- interface
- terminal
- request
- 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
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
- H04L9/3228—One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种接口鉴权方法、装置,存储介质及计算机终端。其中,该方法包括:接收访问请求,其中,访问请求用于请求通过第一系统对第二系统中目标接口进行访问;判断目标接口是否使用鉴权注解,其中,鉴权注解用于表示以注解的形式对目标接口的访问请求进行鉴权;响应于目标接口使用鉴权注解,利用鉴权注解解析访问请求,生成第一系统的系统标识和访问终端的终端标识以及访问终端的请求密钥;基于系统标识,终端标识以及请求密钥对访问终端进行鉴权,得到鉴权结果,其中,鉴权结果用于表示访问终端通过第一系统是否有权限访问目标接口。本发明解决了在访问终端访问应用程序接口时,对访问终端进行鉴权操作时鉴权效率较低的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种接口鉴权方法、装置,存储介质及计算机终端。
背景技术
目前,对于服务器访问应用程序接口,主要通过使用用户名和密码登陆,或使用字符令牌机制来实现鉴权,如此一来,会导致接口生产方和调用方需要花费大量时间来进行沟通,进而使得在鉴权过程中的沟通成本提高,同时,接口生产方和调用方都需要单独开发其对应的产品,从而使得开发成本也相应的增加。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种接口鉴权方法、装置,存储介质及计算机终端,以至少解决在访问终端访问应用程序接口时,对访问终端进行鉴权操作时鉴权效率较低的技术问题。
根据本发明实施例的一个方面,提供了一种接口鉴权方法,包括:接收访问请求,其中,访问请求用于请求通过第一系统对第二系统中目标接口进行访问;判断目标接口是否使用鉴权注解,其中,鉴权注解用于表示以注解的形式对目标接口的访问请求进行鉴权;响应于目标接口使用鉴权注解,利用鉴权注解解析访问请求,生成第一系统的系统标识和访问终端的终端标识以及访问终端的请求密钥;基于系统标识,终端标识以及请求密钥对访问终端进行鉴权,得到鉴权结果,其中,鉴权结果用于表示访问终端通过第一系统是否有权限访问目标接口。
可选地,基于系统标识和终端标识以及请求密钥对访问终端进行鉴权,得到鉴权结果,包括:判断是否存在系统标识对应的存储密钥;响应于存在系统标识对应的存储密钥,对系统标识、终端标识以及存储密钥进行加密,得到目标密钥;判断目标密钥与请求密钥是否一致;响应于目标密钥与请求密钥一致,确定鉴权结果为访问终端通过第一系统有权限访问目标接口。
可选地,该方法还包括:响应于不存在系统标识对应的存储密钥,确定鉴权结果为访问终端通过第一系统没有权限访问目标接口。
可选地,该方法还包括:响应于目标密钥与请求密钥不一致,确定鉴权结果为访问终端通过第一系统没有权限访问目标接口。
可选地,该方法还包括:响应于目标接口不使用鉴权注解,获取目标接口的接口资源,并将接口资源传输至第一系统。
可选地,该方法还包括:响应于鉴权结果为访问终端通过第一系统有权访问目标接口,获取目标接口的接口资源,并将接口资源传输至第一系统。
可选地,该方法还包括:响应于目标终端在第二系统的注册请求,生成目标终端的注册终端标识和注册请求密钥;反馈注册终端标识和注册请求密钥至目标终端,其中,目标终端中的系统在访问第二系统的接口时,携带注册终端标识和注册请求密钥。
根据本发明实施例的另一方面,还提供了一种接口鉴权装置,包括:接收模块,用于接收访问请求,其中,访问请求用于请求通过第一系统对第二系统中目标接口进行访问;判断模块,用于判断目标接口是否使用鉴权注解,其中,鉴权注解用于表示以注解的形式对目标接口的访问请求进行鉴权;解析模块,用于响应于目标接口使用鉴权注解,利用鉴权注解解析访问请求,生成第一系统的系统标识和访问终端的终端标识以及访问终端的请求密钥;鉴权模块,用于基于系统标识,终端标识以及请求密钥对访问终端进行鉴权,得到鉴权结果,其中,鉴权结果用于表示访问终端通过第一系统是否有权限访问目标接口。
根据本发明实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述任意一项接口鉴权方法。
根据本发明实施例的另一方面,还提供了一种计算机终端,包括:处理器和存储器,处理器用于运行存储器中存储的程序,其中,程序运行时执行上述任意一项接口鉴权方法。
通过上述步骤,首先可以接收访问请求,其中,访问请求用于请求通过第一系统对第二系统中目标接口进行访问,然后判断目标接口是否使用鉴权注解,其中,鉴权注解用于表示以注解的形式对目标接口的访问请求进行鉴权;响应于目标接口使用鉴权注解,利用鉴权注解解析访问请求,生成第一系统的系统标识和访问终端的终端标识以及访问终端的请求密钥,最后可以基于系统标识,终端标识以及请求密钥对访问终端进行鉴权,得到鉴权结果,其中,鉴权结果用于表示访问终端通过第一系统是否有权限访问目标接口。容易注意到的是,利用目标接口的鉴权注解对访问请求进行解析,对于任意的系统,若需要对系统中的接口使用注解校验权限,不需要复杂的配置过程,只需在需要校验权限的接口添加鉴权注解即可,使用方便,校验流程简单高效,在保证接口安全性的同时,还可以降低沟通成本及开发成本。进而解决了相关技术中在访问终端访问应用程序接口时,对访问终端进行鉴权操作时鉴权效率较低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种接口鉴权方法流程图;
图2是根据本发明实施例的一种可选的访问接口流程图;
图3是根据本发明实施例的一种可选的注解逻辑鉴权流程图;
图4是根据本发明实施例的一种可选的访问目标接口时序图;
图5是根据本发明实施例的一种可选的接口鉴权装置示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。首先,对本发明实施例中出现的技术名词或技术术语进行如下解释说明:
应用程序接口(Application Programming Interface,简称为API):是一些预先定义的接口(如函数接口),接口是为程序员在编程时使用的,系统和应用程序通过这个接口,可在执行中访问系统中的资源,实现不同平台的数据共享。
@IdentityCheck:为注解,用@表示,是java的一种特性,可以用于java包、类、方法、字段等,对使用的对象进行说明,本文中就是对使用它的接口进行说明,说明接口需要身份校验。
session:计算机术语,会话,用户请求服务器时,如果该用户还没有会话,则服务器将自动创建一个Session对象。当会话过期或被放弃后,服务器将终止该会话。
cookie:指服务器暂存在电脑里的文本文件资料,浏览器向服务器发起请求,如果服务器需要记录状态和信息,服务器就会向浏览器颁发一个cookie,用来保存用户使用浏览器浏览网站的状态和用户信息。
token:是一种具有标记意义的字符串,随机生成,也具有时效性,比如手机验证码。
跨域:指出于浏览器的同源策略限制,同源策略是一种约定,它是浏览器核心也最基本的安全功能,它会阻止一个域和另外一个域进行交互,如果缺少了同源策略,浏览器很容易受到CSS(Cross-Site Scripting,指跨站脚本攻击)、CSFR(Cross-site requestforgery指跨站请求伪造)等攻击。所谓同源,即在同一个域,就是两个页面具有相同的协议、主机和端口号。
AOP:即面向切面编程,利用AOP可以对业务逻辑的各个部分进行隔离,使各业务逻辑耦合度降低,提高程序可重用性。
键值对:一种一对一的关系,键存储编号,值存储数据,类似于每一份档案都有唯一的位置编号。
AppId、SecretKey:键值对关系,AppId是键,用来存储每个用户的编号,SecretKey是值,用来存储唯一的密钥。
Submitter:访问接口的用户。
md5:是一种算法,可以将一串文字或者文件按照一定的规则生成一串密文。
现有技术中对接口进行鉴权时,主要通过以下两种方法:
session+cookie鉴权:这是比较传统的鉴权方式,用户使用用户名和密码登录,服务端记录用户信息并会生成一个sessionid,其中,sessionid为会话,针对每一个用户都会有不同且唯一的sessionid返回给客户端,客户端将sessionid信息存储到cookie中,之后每次请求都将带着cookie,服务端会解析cookie获取sessionid,查询session信息,如果查不到说明没有登录。
token鉴权:目前,大多数程序使用token令牌机制实现鉴权,用户通过用户名和密码登录程序,程序服务端会生成token令牌返回给用户,用户访问其他资源时都会带着token令牌,服务端验证token的时效和权限,只要token在有效期内,并且token合法,就有获取资源的权限,服务端将返回用户访问的资源数据。如果token失效,用户需要重新登录程序,服务端会生成新的token,再由用户带着新的token去访问其他资源。如果token不合法或者没有访问资源的权限,服务端不会返回用户访问的资源,说明用户没有权限访问申请的资源。
以上两种鉴权方法均存在以下问题:沟通成本高,接口生产方和调用方需要花费很多沟通时间;开发成本高,接口生产方和调用方都需要单独开发。
本申请通过在接口上使用鉴权注解,则不需要复杂的配置就可以解决上述问题。
实施例1
根据本发明实施例,提供了一种接口鉴权的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的一种接口鉴权方法流程图,如图1所示,该方法包括如下步骤:
步骤S102,接收访问请求,其中,访问请求用于请求通过第一系统对第二系统中目标接口进行访问。
上述访问请求可以为第一系统访问目标接口时所发出的请求,其中,访问请求可以包含第一系统的系统标识和访问终端的终端标识以及访问终端的请求密钥。可选的,访问请求可以由第一系统发出,进而去访问第二系统的目标接口。
上述第一系统的系统标识可以为第一系统的名称或/和第一系统的网络地址,上述访问终端的终端标识可以为第一系统与第二系统所在的终端设备的名称或/和网络地址,上述请求密钥可以为访问终端自身携带的密钥,该密钥可以为有效的,也可以为无效的。其中,上述第一系统可以为需要访问目标接口的系统,上述第二系统可以为被访问的系统。
其中,访问请求可以通过网络协议编码的形式,或直接通过字符串形式来表示。可选的,访问请求可以由第一系统通过浏览器发出,或根据网络协议由访问终端进行发出。
上述目标接口可以为第二系统上的接口,可选的,目标接口可以为应用程序接口,或服务器的接口,目标接口中可以包含接口参数,其中,接口参数可以包含目标接口的接口信息,其中,接口信息可以为接口类型、接口位置、接口网络类型等。
在一种可选的实施例中,第一系统和第二系统可以为分布式系统,或集中式系统,第一系统和第二系统可以在同一台终端设备上,或不同的终端设备上,在本方案中,以第一系统和第二系统在同一台终端设备上为例来进行说明。
在另一种可选地实施例中,可以由用户通过第一系统发出访问请求,请求访问第二系统的目标接口,第二系统的目标接口接收到访问请求时,可以通过对访问请求进行解析,从而得到解析结果。可选的,可以基于解析结果判断出第一系统的系统标识,可选的,可以通过将系统标识记录到第二系统中,从而实现对访问终端进行鉴权。
步骤S104,判断目标接口是否使用鉴权注解,其中,鉴权注解用于表示以注解的形式对目标接口的访问请求进行鉴权。
上述鉴权注解可以为@IdentityCheck,表示目标接口需要身份校验,可选的,鉴权注解可以用@表示,@是java的一种特性,用于对使用的对象进行说明,即,对使用它的接口进行说明。可选的,如果一个系统想要实现安全的访问,那么可以在该系统的接口上使用@IdentityCheck注解,如此一来则不需要复杂的配置,即使是分布式系统也不需要部署一种能提供多种语言的API应用程序接口(Remote Dictionary Server简称Redis)或其他持久化服务,即可完成鉴权,其中,Redis为一种。
在一种可选的实施例中,可以通过对目标接口所包含的接口参数进行解析,从而确定出目标接口是否使用鉴权注解,可选的,可以通过解析函数,或解析程序来对目标接口进行解析。
在另一种可选地实施例中,还可以通过采用测试程序对目标接口进行测试,从而判断出目标接口是否使用鉴权注解,此处对判断方法不做限定。进一步的,通过直接在目标接口上预先标注一个鉴权注解,当有访问终端来访问时,若该访问终端有鉴权注解就可以直接对其进行鉴权,若该访问终端没有鉴权注解,就无需进行鉴权操作,直接进行访问即可,从而解决了相关技术中对访问终端进行鉴权操作时,鉴权效率较低的技术问题。
步骤S106,响应于目标接口使用鉴权注解,利用鉴权注解解析访问请求,生成第一系统的系统标识和访问终端的终端标识以及访问终端的请求密钥。
在一种可选的实施例中,在目标接口使用鉴权注解的情况下,可以通过鉴权注解对接收到的访问请求进行解析,从而可以生成第一系统的系统标识和访问终端的终端标识以及访问终端的请求密钥。可选的,可以利用鉴权注解构建相关的解析模型,并将访问请求输入解析模型,从而实现对访问请求的解析。可选的,还可以直接将访问请求发送至目标接口,目标接口接收到访问请求时,将调用鉴权注解对访问请求进行解析。
在另一种可选的实施例中,在得到第一系统的系统标识和访问终端的终端标识以及访问终端的请求密钥,可以判断出访问请求所代表的第一系统,以及访问终端的设备信息,在确定出请求密钥为有效的情况下,可以对访问终端通过第一系统访问目标接口进行鉴权,从而使得可以访问第二系统,在确定出请求密钥为无效的情况下,则不会对访问终端通过第一系统访问目标接口进行鉴权。
步骤S108,基于系统标识,终端标识以及请求密钥对访问终端进行鉴权,得到鉴权结果,其中,鉴权结果用于表示访问终端通过第一系统是否有权限访问目标接口。
在一种可选的实施例中,在确定出第一系统的系统标识,访问终端的终端标识,访问终端的请求密钥的情况下。可以通过将第一系统的系统标识,访问终端的终端标识,访问终端的请求密钥进行再次加密,得到新的密钥,并将新的密钥与请求密钥进行对比,从而提高鉴权的安全性,在请求密钥与所生成的新的密钥一致的情况下,则可以对访问终端通过第一系统访问目标接口进行鉴权。
在另一种可选地实施例,还可以将第一系统的系统标识,访问终端的终端标识,访问终端的请求密钥进行再次加密,得到加密结果,其中,加密结果可以为经过加密操作所产生的其他密钥。可选的,可以通过调用函数从数据库中获取到系统标识所对应的第一系统的存储密钥,其中,存储密钥可以为第一系统在数据库中所留存的密钥。进一步的,可以将加密结果与存储密钥进行对比,在比对结果为加密结果与存储密钥相同时,可以对访问终端通过第一系统访问目标接口进行授权。
通过上述步骤,首先可以接收访问请求,其中,访问请求用于请求通过第一系统对第二系统中目标接口进行访问,然后判断目标接口是否使用鉴权注解,其中,鉴权注解用于表示以注解的形式对目标接口的访问请求进行鉴权;响应于目标接口使用鉴权注解,利用鉴权注解解析访问请求,生成第一系统的系统标识和访问终端的终端标识以及访问终端的请求密钥,最后可以基于系统标识,终端标识以及请求密钥对访问终端进行鉴权,得到鉴权结果,其中,鉴权结果用于表示访问终端通过第一系统是否有权限访问目标接口。容易注意到的是,利用目标接口的鉴权注解对访问请求进行解析,对于任意的系统,若需要对系统中的接口使用注解校验权限,不需要复杂的配置过程,只需在需要校验权限的接口添加鉴权注解即可,使用方便,校验流程简单高效,在保证接口安全性的同时,还可以降低沟通成本及开发成本。进而解决了相关技术中在访问终端访问应用程序接口时,对访问终端进行鉴权操作时鉴权效率较低的技术问题。
可选地,基于系统标识和终端标识以及请求密钥对访问终端进行鉴权,得到鉴权结果,包括:判断是否存在系统标识对应的存储密钥;响应于存在系统标识对应的存储密钥,对系统标识、终端标识以及存储密钥进行加密,得到目标密钥;判断目标密钥与请求密钥是否一致;响应于目标密钥与请求密钥一致,确定鉴权结果为访问终端通过第一系统有权限访问目标接口。
上述目标密钥可以为访问终端通过第一系统访问目标接口的密钥,其中,目标密钥可以通过AppId以及SecretKey的键值对关系来表示。
在一种可选的实施例中,可以通过搜寻用于存储大量存储密钥的数据库,从而判断第一系统的系统标识是否存在对应的存储密钥,若存在对应的存储密钥,则可以从数据库中调用系统标识对应的存储密钥,可选的,可以利用调用函数调用系统标识对应的存储密钥,或,利用相关调用程序来进行调取。
进一步的,在获取到存储密钥后,可以对系统标识、终端标识,以及存储密钥进行加密,得到目标密钥,可选的,可以利用md5进行加密,从而得到目标密钥。在得到目标密钥之后,可以将目标密钥与请求密钥进行对比,判断目标密钥与请求密钥是否一致,若目标密钥与请求密钥一致,则可以确定访问终端通过第一系统有权限访问目标接口。
可选地,该方法还包括:响应于不存在系统标识对应的存储密钥,确定鉴权结果为访问终端通过第一系统没有权限访问目标接口。
在一种可选的实施例中,若数据库中不存在系统标识所对应的存储密钥,则说明访问终端没有权限通过第一系统访问目标接口,则需要申请权限,并生成对应的存储密钥。
图2是根据本发明实施例的一种可选的访问接口流程图,如图2所示,整项操作开始时,先由访问终端发出请求,请求访问终端通过第一系统访第二系统的目标接口,在接收到请求后,需要判断目标接口是否使用鉴权注解,若判断结果为否,则说明本次请求不需要进行鉴权,可以直接访问,若判断结果为是,则需要进行鉴权操作。首先,先校验权限,判断第一系统是否有存储密钥,若判断结果为是,则可以访问目标接口,并返回目标接口资源,最终结束访问操作,若判断结果为否,则需要申请权限,并生成存储密钥,之后返回判断目标接口是否使用鉴权注解这一操作步骤。
可选地,该方法还包括:响应于目标密钥与请求密钥不一致,确定鉴权结果为访问终端通过第一系统没有权限访问目标接口。
在一种可选的实施例中,在得到目标密钥之后,可以将目标密钥与请求密钥进行对比,判断目标密钥与请求密钥是否一致,若目标密钥与请求密钥不一致,则说明访问终端通过第一系统没有权限访问目标接口。可选的,在判断完目标密钥与请求密钥是否一致后,可以由系统发出提示信息,从而来提示目标密钥与请求密钥是否一致,其中,提示信息可以为语音播报,或文字显示等。可选的,在判断结束后,还可以将该条操作记录在日志中方便后续查看。
图3是根据本发明实施例的一种可选的注解逻辑鉴权流程图,如图3所示,开始鉴权时,需要获取目标接口的接口参数,并将参数进行解析,从而得到系统标识、终端标识,以及请求密钥,之后再根据系统标识来查询存储密钥。在查询前需判断是否有存储密钥,若判断结果为否,则需要直接返回,授权过程结束,若判断结果为是,则需要将系统标识、终端标识、以及存储密钥进行组合并加密。之后再将加密结果与请求密钥进行校对,若校对结果显示为加密结果与请求密钥相同,则可以访问目标接口,若校对结果显示为加密结果与请求密钥不相同,则需要直接返回,至此,授权操作结束。
可选地,该方法还包括:响应于目标接口不使用鉴权注解,获取目标接口的接口资源,并将接口资源传输至第一系统。
上述接口资源可以为目标接口所包含资源信息,其中,资源信息可以为第二系统中所包含的资源数据。
在一种可选的实施例中,若第一系统要调用第二系统中的通讯录,则资源信息可以为第二系统中具体的通讯录信息。若第一系统要调用第二系统中的网址访问情况,则资源信息可以为第二系统中的浏览数据信息。若第一系统要调用第二系统中所使用的程序种类,则资源信息可以为第二系统中所包含的应用程序。此处对资源信息不做具体限定。
在一种可选的实施例中,若目标接口不使用鉴权注解,则说明不需要进行鉴权,访问终端可以直接通过第一系统来访问目标接口,并获取接口资源,可选的,在获取到系统资源之后,可以将该系统资源传输至第一系统,从而实现第一系统与第二系统之间的信息交流。其中,可以通过传输装置将接口资源传输至第一系统,还可以通过构建一段程序,通过该程序将接口资源传输至第一系统。
可选地,该方法还包括:响应于鉴权结果为访问终端通过第一系统有权访问目标接口,获取目标接口的接口资源,并将接口资源传输至第一系统。
在一种可选的实施例中,当目标密钥与请求密钥相同,则可以确定访问终端通过第一系统有权访问目标接口的权限,进一步的可以使访问终端通过第一系统访问目标接口,从而获取到接口资源,并将接口资源传输至第一系统。
在另一种可选地实施例中,当目标接口不使用鉴权注解时,则可以确定目标接口不需要进行鉴权,因此,访问终端可以直接通过第一系统来访问目标接口,从而获取到接口资源,并将接口资源传输至第一系统。
可选地,该方法还包括:响应于目标终端在第二系统的注册请求,生成目标终端的注册终端标识和注册请求密钥;反馈注册终端标识和注册请求密钥至目标终端,其中,目标终端中的系统在访问第二系统的接口时,携带注册终端标识和注册请求密钥。
上述注册请求可以为目标终端在第二系统上进行注册时所发出的请求,可选的,注册请求可以通过文字或者程序的形式来表示。
上述注册终端可以为用于访问第二系统的终端设备。
上述注册终端标识可以为注册终端的标识信息,可选的,该标识信息可以包括注册终端的名称,网络地址等信息。
在一种可选的实施例中,注册终端第一次登录程序访问第二系统时,第二系统的服务端就会生成注册终端标识和注册请求密钥并返回给注册终端,可选的,在得到注册终端标识和注册请求密钥后,注册终端再次访问第二系统的目标接口时,就可以基于注册终端标识、注册请求密钥,以及第一系统的系统标识生成访问请求,从而去访问目标接口。
图4是根据本发明实施例的一种可选的访问目标接口时序图,如图4所示,用户在使用目标终端通过第一系统请求访问第二系统的目标接口时,会将请求发送至服务器,服务器响应于请求,会从数据库中获取请求密钥,并将该请求密钥返回至服务器,服务器将会对目标终端通过第一系统访问目标接口进行鉴权操作。鉴权操作成功后,用户将可以使用访问终端通过第一系统访问目标接口,并获取接口资源,之可以后将获取到的接口资源返回服务器,再由服务器将接口资源返回至用户。
实施例2
根据本发明实施例的另一方面,还提供了一种接口鉴权装置,该装置可以执行上述实施例中的数据处理方法,具体实现方式和优选应用场景与上述实施例相同,在此不做赘述。
图5是根据本发明实施例的一种可选的接口鉴权装置示意图,如图4所示,该装置包括:
接收模块502,用于接收访问请求,其中,访问请求用于请求通过第一系统对第二系统中目标接口进行访问。
判断模块504,用于判断目标接口是否使用鉴权注解,其中,鉴权注解用于表示以注解的形式对目标接口的访问请求进行鉴权。
解析模块506,用于响应于目标接口使用鉴权注解,利用鉴权注解解析访问请求,生成第一系统的系统标识和访问终端的终端标识以及访问终端的请求密钥。
鉴权模块508,用于基于系统标识,终端标识以及请求密钥对访问终端进行鉴权,得到鉴权结果,其中,鉴权结果用于表示访问终端通过第一系统是否有权限访问目标接口。
可选的,鉴权模块508,包括:第一判断单元,用于判断是否存在系统标识对应的存储密钥;加密单元,用于响应于存在系统标识对应的存储密钥,对系统标识、终端标识以及存储密钥进行加密,得到目标密钥;第二判断单元,用于判断目标密钥与请求密钥是否一致;第一确定单元,用于响应于目标密钥与请求密钥一致,确定鉴权结果为访问终端通过第一系统有权限访问目标接口。
可选的,鉴权模块508,还包括:第二确定单元,用于响应于不存在系统标识对应的存储密钥,确定鉴权结果为访问终端通过第一系统没有权限访问目标接口。
可选的,鉴权模块508,还包括:第三确定单元,用于响应于目标密钥与请求密钥不一致,确定鉴权结果为访问终端通过第一系统没有权限访问目标接口。
可选的,该装置还包括:第一获取模块,用于响应于目标接口不使用鉴权注解,获取目标接口的接口资源,并将接口资源传输至第一系统。
可选的,该装置还包括:第二获取模块,用于响应于鉴权结果为访问终端通过第一系统有权访问目标接口,获取目标接口的接口资源,并将接口资源传输至第一系统。
可选的,该装置还包括:生成模块,用于响应于目标终端在第二系统的注册请求,生成目标终端的注册终端标识和注册请求密钥;反馈模块,用于反馈注册终端标识和注册请求密钥至目标终端,其中,目标终端中的系统在访问第二系统的接口时,携带注册终端标识和注册请求密钥。
实施例3
根据本发明实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行实施例1中的记载的接口鉴权方法。
实施例4
根据本发明实施例的另一方面,还提供了一种计算机终端,包括:处理器和存储器,处理器用于运行存储器中存储的程序,其中,程序运行时执行实施例1中记载的接口鉴权方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种接口鉴权方法,其特征在于,包括:
接收访问请求,其中,所述访问请求用于请求通过第一系统对第二系统中目标接口进行访问;
判断所述目标接口是否使用鉴权注解,其中,所述鉴权注解用于表示以注解的形式对所述目标接口的访问请求进行鉴权;
响应于所述目标接口使用所述鉴权注解,利用所述鉴权注解解析所述访问请求,生成所述第一系统的系统标识和访问终端的终端标识以及所述访问终端的请求密钥;
基于所述系统标识,所述终端标识以及所述请求密钥对所述访问终端进行鉴权,得到鉴权结果,其中,所述鉴权结果用于表示所述访问终端通过所述第一系统是否有权限访问所述目标接口。
2.根据权利要求1所述的方法,其特征在于,基于所述系统标识和所述终端标识以及所述请求密钥对所述访问终端进行鉴权,得到鉴权结果,包括:
判断是否存在所述系统标识对应的存储密钥;
响应于存在所述系统标识对应的存储密钥,对所述系统标识、所述终端标识以及所述存储密钥进行加密,得到目标密钥;
判断所述目标密钥与所述请求密钥是否一致;
响应于所述目标密钥与所述请求密钥一致,确定所述鉴权结果为所述访问终端通过所述第一系统有权限访问所述目标接口。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
响应于不存在所述系统标识对应的所述存储密钥,确定所述鉴权结果为所述访问终端通过所述第一系统没有权限访问所述目标接口。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
响应于所述目标密钥与所述请求密钥不一致,确定所述鉴权结果为所述访问终端通过所述第一系统没有权限访问所述目标接口。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述目标接口不使用所述鉴权注解,获取所述目标接口的接口资源,并将所述接口资源传输至所述第一系统。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述鉴权结果为所述访问终端通过所述第一系统有权访问所述目标接口,获取所述目标接口的接口资源,并将所述接口资源传输至所述第一系统。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于目标终端在所述第二系统的注册请求,生成所述目标终端的注册终端标识和注册请求密钥;
反馈所述注册终端标识和所述注册请求密钥至所述目标终端,其中,所述目标终端中的系统在访问所述第二系统的接口时,携带所述注册终端标识和所述注册请求密钥。
8.一种接口鉴权装置,其特征在于,包括:
接收模块,用于接收访问请求,其中,所述访问请求用于请求通过第一系统对第二系统中目标接口进行访问;
判断模块,用于判断所述目标接口是否使用鉴权注解,其中,所述鉴权注解用于表示以注解的形式对所述目标接口的访问请求进行鉴权;
解析模块,用于响应于所述目标接口使用所述鉴权注解,利用所述鉴权注解解析所述访问请求,生成所述第一系统的系统标识和访问终端的终端标识以及所述访问终端的请求密钥;
鉴权模块,用于基于所述系统标识,所述终端标识以及所述请求密钥对所述访问终端进行鉴权,得到鉴权结果,其中,所述鉴权结果用于表示所述访问终端通过所述第一系统是否有权限访问所述目标接口。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至7中任意一项接口鉴权方法。
10.一种计算机终端,其特征在于,包括:处理器和存储器,所述处理器用于运行所述存储器中存储的程序,其中,所述程序运行时执行权利要求1至7中任意一项接口鉴权方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211008853.0A CN115396116A (zh) | 2022-08-22 | 2022-08-22 | 接口鉴权方法、装置,存储介质及计算机终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211008853.0A CN115396116A (zh) | 2022-08-22 | 2022-08-22 | 接口鉴权方法、装置,存储介质及计算机终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115396116A true CN115396116A (zh) | 2022-11-25 |
Family
ID=84120678
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211008853.0A Pending CN115396116A (zh) | 2022-08-22 | 2022-08-22 | 接口鉴权方法、装置,存储介质及计算机终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115396116A (zh) |
-
2022
- 2022-08-22 CN CN202211008853.0A patent/CN115396116A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106330850B (zh) | 一种基于生物特征的安全校验方法及客户端、服务器 | |
CN112000951B (zh) | 一种访问方法、装置、系统、电子设备及存储介质 | |
CN111371805A (zh) | 基于Token的统一身份认证接口及方法 | |
CN112131564B (zh) | 加密数据通信方法、装置、设备以及介质 | |
CN109618341A (zh) | 一种数字签名认证方法、系统、装置以及存储介质 | |
CN101426009A (zh) | 身份管理平台、业务服务器、统一登录系统及方法 | |
CN110795174B (zh) | 一种应用程序接口调用方法、装置、设备及可读存储介质 | |
CN111818088A (zh) | 授权模式管理方法、装置、计算机设备及可读存储介质 | |
CN110690972A (zh) | 令牌认证方法、装置、电子设备及存储介质 | |
CN112507320A (zh) | 访问控制方法、装置、系统、电子设备和存储介质 | |
CN110071937A (zh) | 基于区块链的登录方法、系统及存储介质 | |
CN107645474B (zh) | 登录开放平台的方法及登录开放平台的装置 | |
CN111355730A (zh) | 一种平台登录方法、装置、设备及计算机可读存储介质 | |
CN109495458A (zh) | 一种数据传输的方法、系统及相关组件 | |
CN103812843B (zh) | 基于WebService应用的鉴权方法及系统 | |
JP2004070814A (ja) | サーバセキュリティ管理方法及び装置並びにプログラム | |
CN115086090A (zh) | 基于UKey的网络登录认证方法及装置 | |
CN115396116A (zh) | 接口鉴权方法、装置,存储介质及计算机终端 | |
CN115190483A (zh) | 一种访问网络的方法及装置 | |
CN111723347A (zh) | 身份认证方法、装置、电子设备及存储介质 | |
CN112822007B (zh) | 一种用户认证方法、装置及设备 | |
CN112134705A (zh) | 数据鉴权的方法及装置、存储介质和电子装置 | |
CN114024688B (zh) | 网络请求方法、网络认证方法、终端设备和服务端 | |
CN114500031B (zh) | 基于单点登录获取bi报表的系统、方法、电子设备及介质 | |
CN111523862B (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 |