CN115242469A - 安全访问api、安全通信的方法、电子设备及存储介质 - Google Patents

安全访问api、安全通信的方法、电子设备及存储介质 Download PDF

Info

Publication number
CN115242469A
CN115242469A CN202210794454.5A CN202210794454A CN115242469A CN 115242469 A CN115242469 A CN 115242469A CN 202210794454 A CN202210794454 A CN 202210794454A CN 115242469 A CN115242469 A CN 115242469A
Authority
CN
China
Prior art keywords
authentication
access
api
certificate
credential
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.)
Granted
Application number
CN202210794454.5A
Other languages
English (en)
Other versions
CN115242469B (zh
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.)
Antiy Technology Group Co Ltd
Original Assignee
Antiy 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 Antiy Technology Group Co Ltd filed Critical Antiy Technology Group Co Ltd
Priority to CN202210794454.5A priority Critical patent/CN115242469B/zh
Publication of CN115242469A publication Critical patent/CN115242469A/zh
Application granted granted Critical
Publication of CN115242469B publication Critical patent/CN115242469B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例提供一种安全访问API、安全通信的方法、电子设备及存储介质,涉及数据安全技术领域。所述安全访问API方法包括:在所述第一电子设备接入所述API之前,拦截所述AP I访问请求消息;向认证服务器发送认证请求;接收所述认证服务器下发的第一认证凭证,将所述第一认证凭证授权于所述第一电子设备;所述第一认证凭证为所述第一电子设备的当前有效凭证;根据所述第一认证凭证对所述第一电子设备的访问合法性进行校验。由此,本发明可以在非安全的网络通信环境下保障数据传输安全,从而提高在非安全网络通信环境下数据传输的安全性。

Description

安全访问API、安全通信的方法、电子设备及存储介质
技术领域
本发明涉及数据安全技术领域,尤其涉及一种安全访问API、安全通信的方法、电子设备及存储介质。
背景技术
随着互联网技术的快速发展,网络环境变得日益复杂,信息安全随之成为网络用户不得不面临的重要问题。
信息安全一般包括:信息存储安全与信息传输安全,其中,信息传输安全是在多个网络互联的电子设备之间互相传输交换数据信息的过程中,可能发生的信息被泄露等安全问题。如图1所示,例如,用户在网上冲浪时,用户设备与服务提供上的服务器之间发生着信息传输事件,在此过程中,用户设备发送的数据需要经历一些中继设备的转发才能送达目标设备,而这些中继设备可能存在被劫持而泄漏数据的风险,因此,其提供的网络通信环境是不可信或不安全的网络通信环境。
当然,用户期望中继设备都是可信安全的,其提供的网络通信环境相应就是可信的或安全的网络通信环境。然而,本申请的发明人在实现本发明创造的过程中发:安全的网络通信环境在整个互联网世界中占比微乎其微,用户普遍接触和使用的几乎是不安全的公共网络通信环境。因此,如何在非安全的网络通信环境下保障数据传输安全是一个亟需解决的技术问题。
发明内容
有鉴于此,本发明实施例提供一种安全访问API的方法、安全通信方法、电子设备及存储介质,可以在非安全的网络通信环境下保障数据传输安全,从而提高在非安全网络通信环境下数据传输的安全性。
为达到上述发明目的,采用如下技术方案:
第一方面,本发明实施例提供一种安全访问API的方法,所述方法包括步骤:接收第一电子设备发送的API访问请求消息;在所述第一电子设备接入所述API之前,拦截所述API访问请求消息;向认证服务器发送认证请求;接收所述认证服务器下发的第一认证凭证,将所述第一认证凭证授权于所述第一电子设备;所述第一认证凭证为所述第一电子设备的当前有效凭证;根据所述第一认证凭证对所述第一电子设备的访问合法性进行校验。
可选地,所述API访问请求消息中携带有访问凭证;所述根据所述第一认证凭证对所述第一电子设备的访问合法性进行校验包括:在所述第一电子设备携带所述访问凭证访问所述API之前,截获所述访问凭证;将所述访问凭证发送至认证服务器,以使所述认证服务器基于所述第一认证凭证对所述访问凭证进行合法性认证;接收返回的认证结果,根据所述认证结果确定所述第一电子设备的访问是否合法;其中,所述认证结果中包含指示所述访问凭证是否合法的认证信息。
可选地,所述根据所述认证结果确定所述第一电子设备的访问是否合法包括:若所述认证结果指示所述访问凭证不合法,则拒绝所述第一电子设备接入所述API;或者,
所述根据所述认证结果确定所述第一电子设备的访问是否合法包括:若所述认证结果指示所述访问凭证不合法,则将所述访问凭证与预先维护的失效凭证队列进行匹配;所述失效凭证队列中存储有失效凭证;若匹配到与所述访问凭证一致的失效凭证,则确定所述第一认证凭证存在被窃听风险;回收所述第一认证凭证,拒绝所述第一电子设备接入所述API。
可选地,在接收返回的认证结果,若所述认证结果指示所述访问凭证合法,则获取所述第一电子设备的IP地址;根据所述第一电子设备的IP地址与所述第一认证凭证授权的电子设备的IP地址进行匹配,进一步校验所述访问凭证是否合法。
可选地,所述根据所述第一电子设备的IP地址与所述第一认证凭证授权的电子设备的IP地址进行匹配,进一步校验所述访问凭证是否合法包括:若所述第一电子设备的IP地址与所述第一认证凭证授权的电子设备的IP地址匹配,则确定所述访问凭证合法,允许所述第一电子设备接入所述API;回收所述第一认证凭证,并向所述第一电子设备颁发第二认证凭证,以使第一电子设备根据第二认证凭证进一步访问API。
可选地,所述回收所述第一认证凭证进行回收包括:对所述第一认证凭证进行阅后销毁处理,并将所述第一认证凭证缓存至所述失效凭证队列。
可选地,所述失效凭证队列具有长度限制,所述失效凭证队列中的所述失效凭证设有时效性限制,且所述失效凭证携带有时间戳标记。
可选地,所述方法还包括:在根据所述第一认证凭证对所述第一电子设备的访问合法性进行校验通过之后,允许所述第一电子设备接入所述API;对所述API访问请求消息中的数据进行解密处理;响应所述API访问请求消息,返回加密处理的数据。
第二方面,本发明实施例还提供一种安全通信的方法,所述方法包括步骤:接收第一电子设备发送的API访问请求消息;在所述第一电子设备接入所述API之前,拦截所述API访问请求消息;校验所述API访问请求消息中是否携带用于访问API的认证凭证;若无,则向认证服务器发送认证请求;接收所述认证服务器下发的第一认证凭证,将所述第一认证凭证授权于所述第一电子设备;在所述第一电子设备根据所述第一认证凭证接入所述API之后,响应所述API访问请求消息,返回加密处理的数据。
可选地,所述在所述第一电子设备根据所述第一认证凭证接入所述API之后,所述方法还包括:回收所述第一认证凭证,向所述第一电子设备颁发第二认证凭证,以使所述第一电子设备根据所述第二认证凭证进一步访问API。
第三方面,本发明实施例提供一种电子设备,包括:一个或者多个处理器;存储器;所述存储器中存储有一个或者多个可执行程序,所述一个或者多个处理器读取存储器中存储的可执行程序代码,运行与可执行程序代码对应的密码管理应用程序,以用于执行第一方面任一所述的安全通信方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现第一方面任一所述的安全通信方法。
本发明实施例提供的安全访问API、安全通信的方法、电子设备及存储介质,当第一电子设备在非安全网络通信环境下访问API时,在接收到第一电子设备发送的API访问请求消息之后,在所述第一电子设备接入所述API之前,拦截所述API访问请求消息;向认证服务器发送认证请求;接收所述认证服务器下发的第一认证凭证,将所述第一认证凭证授权于所述第一电子设备,根据所述第一认证凭证对所述第一电子设备的访问合法性进行校验。这样,当数据访问处于非安全网络通信环境中时,通过拦截访问请求消息并向认证服务器发送认证请求,获得一个访问API的认证凭证,根据该认证凭证检验访问API的合法性,相当于在非安全网络通信环境中形成数据安全访问通信链路,进而可以在非安全的网络通信环境下保障数据传输安全,从而提高在非安全网络通信环境下数据传输的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为终端设备之间数据传输过程一实施例示意图;
图2为本发明安全访问API的方法一实施例流程示意图;
图3为本发明一实施例中API认证保护机制示意图;
图4为本发明一实施例中失效凭证队工作机制示意图;
图5为本发明一实施例中安全访问API的方法中校验访问合法性流程示意图;
图6为本发明一实施例中数据加密机制示意图;
图7为本发明一实施例中安全通信方法流程示意图;
图8为本发明电子设备的一个实施例结构示意图。
具体实施方式
下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例提供的安全访问方法及安全通信方法,针对非安全网络环境数据访问、传输中可能存在被窃听的风险,通过基于非安全网络环境在应用层采用API(Application Program Interface)认证保护机制,建立在非安全网络通信环境中的安全访问通信链路,可以在一定程度上保障非安全网络环境下数据访问、传输的安全性;并进一步在校验合法之后,通过访问凭证阅后即焚安全机制以及收发数据加密和访问IP保护等技术手段在步骤上相互衔接、在功能上相互协调、相互配合、协同作用,解决了非安全网络环境下存在的网络应用被窃听的技术问题,从而可以提高在非安全网络通信环境下数据传输的安全性。
需要说明的是,本发明各实施例中提供的方法可以以软件的形式固化于某一制造的实体产品中,当用户在使用该产品时,可以再现本申请的方法流程。
图2为本发明安全访问API的方法一实施例流程示意图;图5为本发明一实施例中安全访问API的方法中校验访问合法性流程示意图;请参看图2及图5所示,本发明实施例提供的安全访问API的方法,包括步骤:
S110、接收第一电子设备发送的API访问请求消息。
S120、在所述第一电子设备接入所述API之前,拦截所述API访问请求消息。
S130、向认证服务器发送认证请求;
S140、接收所述认证服务器下发的第一认证凭证,将所述第一认证凭证授权于所述第一电子设备;所述第一认证凭证为所述第一电子设备的当前有效凭证。
S150、根据所述第一认证凭证对所述第一电子设备的访问合法性进行校验。
示例性地,如图5中无凭证访问流程所示,第一电子设备在访问API时,拦截访问请求消息并进行凭证校验,若校验第一电子设备未携带访问凭证访问API,即当前访问处于非安全网络通信环境下,为了保障数据的安全,在进行凭证校验之后,向认证服务器发送认证请求,服务器进行统一认证之后,颁发第一认证凭证给第一电子设备,相当于在第一电子设备与访问的API之间建立了在非安全网络环境下的安全访问机制,根据所述第一认证凭证对第一电子设备访问API的合法性进行校验,若校验通过,则允许访问,否则拒绝访问,从而便于实现在非安全的网络通信环境下保障数据传输的安全性。
可以理解的是,为了实现上述技术方案,还需要在API开发时,在原有业务系统的基础上,加入API认证保护机制,这是实现上述保障非安全网络通信环境下数据传输安全,防止被窃听的基本步骤。因此,对于所有对外开放且需要防止被窃听的API均需要认证并获取凭证之后,其它访问该API的客户端或其他电子设备需要使用凭证进行访问,。
上述API具体认证的方案,既可以是简单基于Password的,也可以是基于OAuth标准的AuthorizationCode、Credentials等如图3所示的认证机制。
对于携带凭证访问API的用户,为了进一步优化本实施例提供的技术方案,请继续参看图5所示,所述API访问请求消息中携带有访问凭证;
所述根据所述第一认证凭证对所述第一电子设备的访问合法性进行校验包括:在所述第一电子设备携带所述访问凭证访问所述API之前,截获所述访问凭证;将所述访问凭证发送至认证服务器,以使所述认证服务器基于所述第一认证凭证对所述访问凭证进行合法性认证;接收返回的认证结果,根据所述认证结果确定所述第一电子设备的访问是否合法;其中,所述认证结果中包含指示所述访问凭证是否合法的认证信息。
请继续参看图5所示,可以理解的是,该访问凭证可以分为合法凭证和非法凭证;再进一步细分,非法凭证又分为两种情况,第一种是无效访问凭证,第二种是失效访问凭证;合法凭证即为有效访问凭证。前两种访问凭证认证结果一般为不合法,校验不通过;后一种认证结果为合法,校验通过。
具体的,对于无效访问凭证,所述根据所述认证结果确定所述第一电子设备的访问是否合法包括:若所述认证结果指示所述访问凭证不合法,则拒绝所述第一电子设备接入所述API。
对失效访问凭证,所述根据所述认证结果确定所述第一电子设备的访问是否合法包括:若所述认证结果指示所述访问凭证不合法,则将所述访问凭证与预先维护的失效凭证队列进行匹配;所述失效凭证队列中存储有失效凭证;若匹配到与所述访问凭证一致的失效凭证,则确定所述第一认证凭证存在被窃听风险;回收所述第一认证凭证,拒绝所述第一电子设备接入所述API。
在一些实施例中,所述失效凭证队列具有长度限制,所述失效凭证队列中的所述失效凭证设有时效性限制,且所述失效凭证携带有时间戳标记。
示例性地,如图4所示,本实施例中,预先需要维护一个失效凭证队列,该失效凭证队列有长度限制,且队列存储的失效凭证有时效性限制。对于长度限制而言,需要定义一个接口,该接口协议中包含基本的入队、出队方法。针对各种各样的实际生产场景,该接口可以基于各种算法完成,以相应的应对不同场景,如FIFO(First Input First Output)、FILO(First In Last Out)、LIFO(Last In First Out)、LRU(Least Recently Used)等数据结构。
对于时效性而言,在执行入队操作时为每一个入队的访问凭证记录时间戳,若存储时长超过队列的时效性限制则会自动失效。这里的自动失效有两种实现方式,一种是维护一个Daemon Thread,其作用就是定期轮询队列存储数据,若发现已失效数据则立即将其从失效凭证队列中移除。另一种是在出队或入队动作触发时才进行处理,比如出队时如果发现数据是已失效的。则视为未读取到并移除之,然后继续读取下一个;入队时也按照同样处理方式。
在维护好失效凭证队列之后,接下来还需要预先编写拦截器,用于在凭证验证通过进入业务系统之前进行拦截并截获API访问请求消息中的访问凭证信息,判断所传凭证的合法有效性是否通过;当然,该步骤任务也可以由拦截器发送访问凭证至认证服务器,由服务器进行凭证校验,如图5所示。
若校验不通过,则尝试从失效凭证队列中根据访问凭证编码匹配以获取相应的失效凭证,若在失效凭证队列中未获取到,则校验不通过,返回拒绝进一步访问API的相应消息,如图5中示意的无效凭证访问流程。若在失效凭证队列中获取到,则确定第一认证凭证,即当前有效凭证存在被窃听风险,立即回收该账户的当前有效凭证,校验不通过,如图5中示意的失效凭证访问流程,返回拒绝进一步访问API的响应消息,从而保障数据访问的安全。
请继续参看图5所示,在一些实施例中,在接收返回的认证结果,若所述认证结果指示所述访问凭证合法,则获取所述第一电子设备的IP地址;根据所述第一电子设备的IP地址与所述第一认证凭证授权的电子设备的IP地址进行匹配,进一步校验所述访问凭证是否合法。
具体的,所述根据所述第一电子设备的IP地址与所述第一认证凭证授权的电子设备的IP地址进行匹配,进一步校验所述访问凭证是否合法包括:若所述第一电子设备的IP地址与所述第一认证凭证授权的电子设备的IP地址匹配,则确定所述访问凭证合法,允许所述第一电子设备接入所述API;回收所述第一认证凭证,并向所述第一电子设备颁发第二认证凭证,以使第一电子设备根据第二认证凭证进一步访问API。
本实施例中,为了进一步保障数据访问及传输的安全性,在访问凭证校验通过之后,并不贸然允许其接入API,而是在访问凭证校验合法之后,进行第二步校验,即获取当前调用或访问用户设备(如果是第一电子设备访问,则为第一电子设备,若是第二电子设备访问,则为第二电子设备)的IP,和当前有效凭证(即第一认证凭证)颁发的用户设备(第一电子设备)的IP进行匹配比对,若不匹配,则立即将当前凭证进行回收;若匹配,则表示凭证校验通过,并对第一认证凭证进行阅后即焚处理,即立即将当前有效凭证进行回收,同时颁发新的第二认证凭证,以使第一电子设备根据第二认证凭证进一步访问API。
本发明实施例提供的技术方案,通过上述步骤,基本上能避免绝大多数场景中的窃听问题,使得在没有凭证的情况下,无法访问API获取数据;进一步地,即便窃听到当前有效凭证也因为阅后即焚的机制而无法使用,进而可以在非安全的网络通信环境下保障数据传输安全,从而提高在非安全网络通信环境下数据传输的安全性。
在一些实施例中,所述回收所述第一认证凭证进行回收包括:对所述第一认证凭证进行阅后销毁处理,并将所述第一认证凭证缓存至所述失效凭证队。
根据本发明前述实施例提供的安全访问API的技术方案,可以使窃听者无法通过窃取凭证来私自访问API以实现一些非法目的,但是,由于可收发数据是明文的,虽然窃听者无法通过窃取凭证来私自访问API,但却仍可以通过在用户和服务器之间进行抓包进而窃取到数据,因此,在上述方案的基础上,还需要对收发数据进行加密。
因此,为解决上述数据传输中存在的问题,在一些实施例中,所述方法还包括:在根据所述第一认证凭证对所述第一电子设备的访问合法性进行校验通过之后,允许所述第一电子设备接入所述API;对所述API访问请求消息中的数据进行解密处理;响应所述API访问请求消息,返回加密处理的数据。这样,可以避免数据在传输过程中被窃取。
其中,加密算法可以是对称加密的AES、DES等,也可以是RSA、DSA等,由于是对所有的API进行加解密,频率相对比较高,优选效率更高的对称加密算法,以提高加解密效率。
在进行数据加密处理之后,对加密密钥的存储和使用也需要进行一些处理,以避免密钥被窃取。
请参看图6所示,在一些实施例中,所述加密密钥是需要动态变的,可以预设动态变化策略,以不定期动态改变。比如每天更换、每次请求更换、每种类型更换等等策略,亦可以使用多种策略的组合,以期达到进一步降低有效密钥被窃取的可能性。
请继续参看图6所示,本发明实施例中,首先,可采用接口名加第一认证凭证以及二级密钥的组合串计算的出MD5码来作为密钥。其次,客户端的动态密钥计算算法要采取一定的方式来隐藏或混淆,增大窃听者的理解难度。鉴于此,本发明一实施例中,采用将代码进行拆分并且整体混淆的方式;请继续餐看图6所示,示例性地,本来只要封装一个方法就能实现的,可以拆分成N个方法的串联来实现。然而,密码复杂度无论怎么增加,总存在被破解的风险,因此,在根据前述算法得到密钥之后,所述方法还包括:根据预设更新机制定期更新密钥,以进一步增大窃听者的破解难度。示例性地,本发明实施例中约定每15天调整二级密钥,以更新密钥。
为了便于本发明中各实施例提供的安全访问API的方法的应用,在一些实施例中,对上述各个实施例提供的技术方案进行封装,对关键节点进行抽象归纳,并提供出简洁易懂的接口,且以上各步骤用到的关键信息均采用可配置的形式,这样,可以使得整个方案能根据实际生产场景在效率和安全之间自由调整。例如本发明对拦截器抽象,并根据读取的配置参数进行实现,以及抽象出失效凭证队列的入队、出队方法,还有封装动态密钥生成算法等。
为帮助理解本发明各实施例提供的技术方案及其达到的技术效果,下面对本发明作如下整体性描述。
S1:API开发时,对第一交互API加入统一认证保护机制;包括:
S1-1:统一认证服务器,用于提供至少基于一种方式的认证方法;
S1-2:统一认证服务器,用于提供鉴别访问凭证是否合法的方法;
S1-3:统一认证服务器,用于提供销毁当前有效凭证的方法;
S1-4:统一认证服务器,用于提供根据当前有效凭证重新颁发凭证的方法;
S2:创建并维护一个用于存储失效凭证的队列;包括:
S2-1:至少实现一种用于失效凭证存取的算法,本实施例采用LRU算法;
S2-2:至少实现一种失效凭证的过期处理策略,本实施例中采用存取时遍历并移除过期数据的策略;
S2-3:队列的出入队操作均配置乐观锁(Optimistic Locking)实现和悲观锁(Pessimistic Lock)实现,以满足不同场景的业务需求;例如,悲观锁的应用场景:当要对队列中的一条数据进行修改的时候,为了避免同时被其他人修改,直接对该数据进行加锁以防止并发。乐观锁是相对悲观锁而言的,其适应场景为:乐观锁假设队列中的数据一般情况不会造成冲突,在队列中的数据进行提交更新的时候,才会正式对数据的冲突与否进行检测,如果冲突,则返回给用户异常信息,让用户决定如何去做;乐观锁适用于读多写少的场景,这样可以提高程序的吞吐量。
S3:封装Authentication类用于存储凭证编码(对于以编码形式存在的认证凭证)、凭证颁发时间戳、授权主体、授权设备IP等字段;
S4:创建继承于MappedInterceptor的拦截器用于在交互API进入时截取凭证信息并进行相关验证处理;包括:
S4-1:创建注解@SecureMapping,用于支持本实施例中对于API的保护;具体为:
S4-1-1:创建注解解析类,用于读取并保存配置了注解的方法和注解中的MetaData(元数据);
S4-2:在没有传凭证时,即无凭证访问时,需要重定向到统一认证服务器进行凭证获取,以保障API访问的安全性;
S4-2:传了非法凭证时需要对当前授权主体的合法凭证进行销毁表示有人已窃听到凭证;
S4-3:传了合法凭证时校验成功后销毁并重新颁发新凭证;
S4-3-1:将已销毁凭证入队到已失效凭证队列;
S5:创建EncryptionHandler,用于对交互数据进行加解密并至少抽象出getSecretKey(获取加密秘钥)方法用于不定期切换不同密钥生成算法;
S5-1:对拦截器截取到的请求参数进行解密处理;
S5-2:对拦截器的响应数据进行加密处理。
本发明实施例提供的安全访问API的方法,当第一电子设备在非安全网络通信环境下访问API时,在接收到第一电子设备发送的API访问请求消息之后,在所述第一电子设备接入所述API之前,拦截所述API访问请求消息;向认证服务器发送认证请求;接收所述认证服务器下发的第一认证凭证,将所述第一认证凭证授权于所述第一电子设备,根据所述第一认证凭证对所述第一电子设备的访问合法性进行校验。这样,当数据访问处于非安全网络通信环境中时,通过拦截访问请求消息并向认证服务器发送认证请求,获得一个访问API的认证凭证,根据该认证凭证检验访问API的合法性,相当于在非安全网络通信环境中形成数据安全访问通信链路,进而可以在非安全的网络通信环境下保障数据传输安全,从而提高在非安全网络通信环境下数据传输的安全性。
实施例二
图7为本发明一实施例中安全通信方法流程示意图;请参看图7所示,基于与实施例一中任一所述的安全访问API的方法相同的技术构思,本发明还实施例提供一种安全通信的方法,包括步骤:
S210、接收第一电子设备发送的API访问请求消息;
S220、在所述第一电子设备接入所述API之前,拦截所述API访问请求消息;
S230、校验所述API访问请求消息中是否携带用于访问API的认证凭证;
若无,则执行步骤S240、向认证服务器发送认证请求;
S250接收所述认证服务器下发的第一认证凭证,将所述第一认证凭证授权于所述第一电子设备;
S260、在所述第一电子设备根据所述第一认证凭证接入所述API之后,响应所述API访问请求消息,返回加密处理的数据。
本发明实施例提供的技术方案,基于与实施例一相同的技术构思,可以在非安全网络通信环境中形成数据安全访问通信链路,并进行数据加密处理传输,进而可以在非安全的网络通信环境下保障数据传输安全,从而提高在非安全网络通信环境下数据传输的安全性。
在一些实施例中,所述在所述第一电子设备根据所述第一认证凭证接入所述API之后,所述方法还包括:回收所述第一认证凭证,向所述第一电子设备颁发第二认证凭证,以使所述第一电子设备根据所述第二认证凭证进一步访问API。
本实施例中,通过阅后即焚的防护机制,即使对方在窃取到当前有效凭证也因为阅后即焚的机制而无法使用,进而可以在非安全的网络通信环境下保障数据传输安全,从而提高在非安全网络通信环境下数据传输的安全性。
实施例三
图8为本发明电子设备一个实施例的结构示意图,其可以实现本发明实施例一或实施例二中任一所述的方法。如图5所示,作为一可选实施例,上述电子设备可以包括:壳体41、处理器42、存储器43、电路板44和电源电路45,其中,电路板44安置在壳体41围成的空间内部,处理器42和存储器43设置在电路板44上;电源电路45,用于为上述电子设备的各个电路或器件供电;存储器43用于存储可执行程序代码;处理器42通过读取存储器43中存储的可执行程序代码,来运行与可执行程序代码对应的程序,用于执行前述是实施例一中任一所述安全访问API的方法或实施例二中任一所述的安全通信的方法。
其中,所述程序可以为安全访问API程序,其具有封装简单,低侵入性,集成简单,配置灵活等特性,且不依懒于特定的开发语言环境,能根据实际生产场景进行适配,并具有动态更新的机制,能在一定程度上持续保持较强的防窃听性能。
处理器42对上述步骤的具体执行过程以及处理器42通过运行可执行程序代码来进一步执行的步骤,可以参见本发明访问API的方法实施例一的描述,在此不再赘述。
该电子设备以多种形式存在,包括但不限于:(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhoie)、多媒体手机、功能性手机,以及低端手机等。(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放模块(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。(5)其他具有数据交互功能的电子设备。
本发明还实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述实施例一中任一所述的安全访问API的方法或实施例二中任一所述的安全通信的方法。
综上,根据上述各实施例描述可知,本发明实施例公开的安全访问API的方法及安全通信方法,通过基于非安全网络环境在应用层采用API认证保护机制,建立在非安全网络通信环境中的安全访问通信链路,可以在一定程度上保障非安全网络环境下数据访问、传输的安全性;并进一步在校验合法之后,通过访问凭证阅后即焚安全机制以及收发数据加密和访问IP保护等技术手段在步骤上相互衔接、在功能上相互协调、相互配合、协同作用,解决了非安全网络环境下存在的网络应用被窃听的技术问题,从而可以提高在非安全网络通信环境下数据传输的安全性。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质还可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (12)

1.一种安全访问API的方法,其特征在于,所述方法包括步骤:
接收第一电子设备发送的API访问请求消息;
在所述第一电子设备接入所述API之前,拦截所述API访问请求消息;
向认证服务器发送认证请求;
接收所述认证服务器下发的第一认证凭证,将所述第一认证凭证授权于所述第一电子设备;所述第一认证凭证为所述第一电子设备的当前有效凭证;
根据所述第一认证凭证对所述第一电子设备的访问合法性进行校验。
2.根据权利要求1所述的安全访问API的方法,其特征在于,所述API访问请求消息中携带有访问凭证;
所述根据所述第一认证凭证对所述第一电子设备的访问合法性进行校验包括:在所述第一电子设备携带所述访问凭证访问所述API之前,截获所述访问凭证;
将所述访问凭证发送至认证服务器,以使所述认证服务器基于所述第一认证凭证对所述访问凭证进行合法性认证;
接收返回的认证结果,根据所述认证结果确定所述第一电子设备的访问是否合法;其中,所述认证结果中包含指示所述访问凭证是否合法的认证信息。
3.根据权利要求2所述的安全访问API的方法,其特征在于,所述根据所述认证结果确定所述第一电子设备的访问是否合法包括:若所述认证结果指示所述访问凭证不合法,则拒绝所述第一电子设备接入所述API;或者,
所述根据所述认证结果确定所述第一电子设备的访问是否合法包括:若所述认证结果指示所述访问凭证不合法,则将所述访问凭证与预先维护的失效凭证队列进行匹配;所述失效凭证队列中存储有失效凭证;
若匹配到与所述访问凭证一致的失效凭证,则确定所述第一认证凭证存在被窃听风险;
回收所述第一认证凭证,拒绝所述第一电子设备接入所述API。
4.根据权利要求2所述的安全访问API的方法,其特征在于,在接收返回的认证结果,若所述认证结果指示所述访问凭证合法,则获取所述第一电子设备的IP地址;
根据所述第一电子设备的IP地址与所述第一认证凭证授权的电子设备的IP地址进行匹配,进一步校验所述访问凭证是否合法。
5.根据权利要求4所述的安全访问API的方法,其特征在于,所述根据所述第一电子设备的IP地址与所述第一认证凭证授权的电子设备的IP地址进行匹配,进一步校验所述访问凭证是否合法包括:
若所述第一电子设备的IP地址与所述第一认证凭证授权的电子设备的IP地址匹配,则确定所述访问凭证合法,允许所述第一电子设备接入所述API;
回收所述第一认证凭证,并向所述第一电子设备颁发第二认证凭证,以使第一电子设备根据第二认证凭证进一步访问API。
6.根据权利要求3或5所述的安全访问API的方法,其特征在于,所述回收所述第一认证凭证进行回收包括:对所述第一认证凭证进行阅后销毁处理,并将所述第一认证凭证缓存至所述失效凭证队列。
7.根据权利要求3所述的安全访问API的方法,其特征在于,所述失效凭证队列具有长度限制,所述失效凭证队列中的所述失效凭证设有时效性限制,且所述失效凭证携带有时间戳标记。
8.根据权利要求1所述的安全访问API的方法,其特征在于,所述方法还包括:在根据所述第一认证凭证对所述第一电子设备的访问合法性进行校验通过之后,允许所述第一电子设备接入所述API;
对所述API访问请求消息中的数据进行解密处理;
响应所述API访问请求消息,返回加密处理的数据。
9.一种安全通信的方法,其特征在于,所述方法包括步骤:
接收第一电子设备发送的API访问请求消息;
在所述第一电子设备接入所述API之前,拦截所述API访问请求消息;
校验所述API访问请求消息中是否携带用于访问API的认证凭证;
若无,则向认证服务器发送认证请求;
接收所述认证服务器下发的第一认证凭证,将所述第一认证凭证授权于所述第一电子设备;
在所述第一电子设备根据所述第一认证凭证接入所述API之后,响应所述API访问请求消息,返回加密处理的数据。
10.根据权利要求9所述的安全通信的方法,其特征在于,所述在所述第一电子设备根据所述第一认证凭证接入所述API之后,所述方法还包括:回收所述第一认证凭证,向所述第一电子设备颁发第二认证凭证,以使所述第一电子设备根据所述第二认证凭证进一步访问API。
11.一种电子设备,其特征在于,包括:一个或者多个处理器;存储器;所述存储器中存储有一个或者多个可执行程序,所述一个或者多个处理器读取存储器中存储的可执行程序代码,运行与可执行程序代码对应的程序,以用于执行权利要求1至8任一所述的安全访问API的方法;
或者,以用于执行权利要求9至10任一所述的安全通信的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述权利要求1至8任一所述的安全访问API的方法;
或者,以用于执行权利要求9至10任一所述的安全通信的方法。
CN202210794454.5A 2022-07-07 2022-07-07 安全访问api、安全通信的方法、电子设备及存储介质 Active CN115242469B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210794454.5A CN115242469B (zh) 2022-07-07 2022-07-07 安全访问api、安全通信的方法、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210794454.5A CN115242469B (zh) 2022-07-07 2022-07-07 安全访问api、安全通信的方法、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN115242469A true CN115242469A (zh) 2022-10-25
CN115242469B CN115242469B (zh) 2024-05-24

Family

ID=83671321

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210794454.5A Active CN115242469B (zh) 2022-07-07 2022-07-07 安全访问api、安全通信的方法、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN115242469B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103178969A (zh) * 2013-04-16 2013-06-26 河南有线电视网络集团有限公司 一种业务鉴权方法及系统
CN103532981A (zh) * 2013-10-31 2014-01-22 中国科学院信息工程研究所 一种面向多租户的身份托管鉴权云资源访问控制系统及控制方法
CN103685282A (zh) * 2013-12-18 2014-03-26 飞天诚信科技股份有限公司 一种基于单点登录的身份认证方法
CN106302346A (zh) * 2015-05-27 2017-01-04 阿里巴巴集团控股有限公司 Api调用的安全认证方法、装置、系统
CN108183907A (zh) * 2017-12-29 2018-06-19 浪潮通用软件有限公司 一种认证方法、服务器及认证系统
US20180191700A1 (en) * 2016-12-30 2018-07-05 Google Inc. Two-token based authenticated session management
CN109194673A (zh) * 2018-09-20 2019-01-11 江苏满运软件科技有限公司 基于用户授权信息的认证方法、系统、设备及存储介质
CN110690972A (zh) * 2019-10-11 2020-01-14 迈普通信技术股份有限公司 令牌认证方法、装置、电子设备及存储介质
CN111935169A (zh) * 2020-08-20 2020-11-13 腾讯科技(深圳)有限公司 一种业务数据访问方法、装置、设备及存储介质
CN112422477A (zh) * 2019-08-21 2021-02-26 普天信息技术有限公司 服务认证方法、服务端、电子设备和存储介质
CN113839966A (zh) * 2021-11-26 2021-12-24 北京慧点科技有限公司 一种基于微服务的安全管理系统
CN113886802A (zh) * 2021-09-10 2022-01-04 网宿科技股份有限公司 安全认证方法、装置、电子设备和存储介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103178969A (zh) * 2013-04-16 2013-06-26 河南有线电视网络集团有限公司 一种业务鉴权方法及系统
CN103532981A (zh) * 2013-10-31 2014-01-22 中国科学院信息工程研究所 一种面向多租户的身份托管鉴权云资源访问控制系统及控制方法
CN103685282A (zh) * 2013-12-18 2014-03-26 飞天诚信科技股份有限公司 一种基于单点登录的身份认证方法
CN106302346A (zh) * 2015-05-27 2017-01-04 阿里巴巴集团控股有限公司 Api调用的安全认证方法、装置、系统
US20180191700A1 (en) * 2016-12-30 2018-07-05 Google Inc. Two-token based authenticated session management
CN108183907A (zh) * 2017-12-29 2018-06-19 浪潮通用软件有限公司 一种认证方法、服务器及认证系统
CN109194673A (zh) * 2018-09-20 2019-01-11 江苏满运软件科技有限公司 基于用户授权信息的认证方法、系统、设备及存储介质
CN112422477A (zh) * 2019-08-21 2021-02-26 普天信息技术有限公司 服务认证方法、服务端、电子设备和存储介质
CN110690972A (zh) * 2019-10-11 2020-01-14 迈普通信技术股份有限公司 令牌认证方法、装置、电子设备及存储介质
CN111935169A (zh) * 2020-08-20 2020-11-13 腾讯科技(深圳)有限公司 一种业务数据访问方法、装置、设备及存储介质
CN113886802A (zh) * 2021-09-10 2022-01-04 网宿科技股份有限公司 安全认证方法、装置、电子设备和存储介质
CN113839966A (zh) * 2021-11-26 2021-12-24 北京慧点科技有限公司 一种基于微服务的安全管理系统

Also Published As

Publication number Publication date
CN115242469B (zh) 2024-05-24

Similar Documents

Publication Publication Date Title
CN108418691B (zh) 基于sgx的动态网络身份认证方法
WO2019085531A1 (zh) 一种终端联网认证的方法和装置
WO2012037897A1 (zh) 绑定、运行安全数码卡的方法、系统及设备
CN109525565B (zh) 一种针对短信拦截攻击的防御方法及系统
US20220417028A1 (en) Methods, Systems, and Devices for Server Control of Client Authorization Proof of Possession
WO2008053279A1 (en) Logging on a user device to a server
WO2019085311A1 (zh) 云平台专有网络间安全互联方法、装置、设备及存储介质
CN114553480B (zh) 跨域单点登录方法、装置、电子设备及可读存储介质
Larsen et al. Direct anonymous attestation on the road: Efficient and privacy-preserving revocation in c-its
CN110572392A (zh) 一种基于Hyperledger网络的身份认证方法
CN110035035B (zh) 一种单点登录的二次认证方法及系统
US9485229B2 (en) Object level encryption system including encryption key management system
CN115473655B (zh) 接入网络的终端认证方法、装置及存储介质
CN109302442B (zh) 一种数据存储证明方法及相关设备
Sarhan et al. Secure android-based mobile banking scheme
CN115242469B (zh) 安全访问api、安全通信的方法、电子设备及存储介质
WO2022135383A1 (zh) 一种身份鉴别方法和装置
CN112637169B (zh) 一种无源nfc云锁加密方法
KR102539418B1 (ko) Puf 기반 상호 인증 장치 및 방법
CN114282189A (zh) 一种数据安全存储方法、系统、客户端以及服务器
CN114065170A (zh) 平台身份证书的获取方法、装置和服务器
Yoo et al. Confidential information protection system for mobile devices
ALnwihel et al. A Novel Cloud Authentication Framework
CN115118455B (zh) 面向网页安全的基于属性加密访问控制反爬虫系统及方法
WO2022135388A1 (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
GR01 Patent grant