CN110300125B - Api访问控制方法及api访问代理装置 - Google Patents

Api访问控制方法及api访问代理装置 Download PDF

Info

Publication number
CN110300125B
CN110300125B CN201910693985.3A CN201910693985A CN110300125B CN 110300125 B CN110300125 B CN 110300125B CN 201910693985 A CN201910693985 A CN 201910693985A CN 110300125 B CN110300125 B CN 110300125B
Authority
CN
China
Prior art keywords
access
information
access request
api
user
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.)
Active
Application number
CN201910693985.3A
Other languages
English (en)
Other versions
CN110300125A (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.)
Qianxin Technology Group Co Ltd
Original Assignee
Qianxin 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 Qianxin Technology Group Co Ltd filed Critical Qianxin Technology Group Co Ltd
Publication of CN110300125A publication Critical patent/CN110300125A/zh
Application granted granted Critical
Publication of CN110300125B publication Critical patent/CN110300125B/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/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
    • 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
    • H04L63/102Entity profiles

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)
  • Computer And Data Communications (AREA)

Abstract

一种API访问控制方法,应用于计算机技术领域,包括:在用户通过前置应用访问受控API资源的过程中,拦截所述用户通过所述前置应用发送的访问请求;识别所述访问请求的访问主体,包括识别所述前置应用的身份信息、所述前置应用的服务器设备信息、和/或访问所述前置应用的用户身份和用户终端的设备信息;基于所述访问请求的时间信息,空间信息、环境信息、和/或访问主体的访问行为进行持续评估;当所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹发生变化时,基于预置的访问认证方式和/或预置的访问控制策略,响应所述访问请求。本申请还公开了一种API访问代理装置。

Description

API访问控制方法及API访问代理装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种API访问控制方法及API访问代理装置。
背景技术
随着互联网的发展,越来越多的平台开放其应用程序接口(ApplicationProgramming Interface,API)供第三方应用(application,APP)调用。现有的API访问控制,大多是基于静态规则的防问认证方法控制,缺少基于动态访问身份的自适应访问控制,当防问主体的身份变化时,很难及时感知,做出相应的响应。
发明内容
本发明的主要目的在于提供一种API访问控制方法及API访问代理装置,当用户的访问环境发生变化时,进行持续的授权决策,并根据决策结果执行响应,增强访问的安全性。
为实现上述目的,本发明实施例第一方面提供了一种API访问控制方法,应用于访问代理装置。所述API访问控制方法包括:
在用户通过前置应用访问受控API资源的过程中,拦截所述用户通过所述前置应用发送的访问请求;
识别所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹是否发生变化;
当所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹发生变化时,基于预置的访问认证方式和/或预置的访问控制策略,响应所述访问请求。
可选地,所述基于预置的访问认证方式,响应所述访问请求,包括基于所述前置应用的身份信息、所述前置应用的服务器设备信息、访问所述前置应用的用户身份和用户终端的设备信息、所述受控API资源、所述访问请求的上下文信息其中的至少一个进行授权策略判定。
可选地,所述拦截所述用户通过前置应用发送的访问请求,包括根据约定条件,开放访问所述受控API资源的端口。
可选地,所述拦截所述用户通过前置应用发送的访问请求,包括对所述访问请求进行合法性检测,所述合法性检测包括自动程序检测、恶意访问检测和请求大小检测其中的至少之一,以及在所述合法性检测通过后,基于对所述受控API资源的请求速度、请求连接数、访问时段中的至少之一,对所述访问请求进行拦截控制。
可选地,在所述识别所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹是否发生变化之前,所述方法还包括:认证所述访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息;以及当所述访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息为预置的认证信息时,获取访问令牌,以通过访问令牌授权所述访问请求访问所述受控API资源。
可选地,所述当所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹发生变化时,基于预置的访问认证方式和/或预置的访问控制策略,响应所述访问请求包括:将所述访问请求根据转发策略进行转发以访问所述受控API资源,以及,根据需要将所述访问令牌传递至所述受控API资源所在的服务端。
可选地,所述方法还包括:当所述访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息不是预置的认证信息时,确定对所述访问请求的授权为不通过;以及拒绝所述访问请求,或,向所述前置应用返回需进行二次认证的信息。
可选地,所述基于预置的访问控制策略,响应所述访问请求包括:当收到表征会话安全状态变更的通知信息时,基于所述预置的访问策略停止对所述访问请求的处理。
可选地,所述基于预置的访问控制策略,响应所述访问请求,还包括记录所述访问请求的访问日志,并基于所述访问日志统计对所述受控API资源进行访问的访问流量。
本发明实施例第二方面提供了一种API访问代理装置。所述装置包括拦截模块、识别模块以及响应模块。所述拦截模块用于在用户通过前置应用访问受控API资源的过程中,拦截所述用户通过所述前置应用发送的访问请求。所述识别模块用于识别所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹是否发生变化。所述响应模块用于当所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹发生变化时,基于预置的访问认证方式和/或预置的访问控制策略,响应所述访问请求。
本发明实施例第三方面提供了一种API访问控制系统。所述API访问控制系统包括一个或多个处理器以及一个或多个存储器。所述一个或多个存储器中存储有计算机可执行指令,所述指令被所述一个或多个处理器执行时用以实现如上所述的API访问控制方法。
从上述本发明实施例可知,本发明提供的API访问控制方法及API访问代理装置,在用户通过前置应用访问受控API资源的过程中,拦截用户通过前置应用发送的访问请求,识别该访问请求的时间信息、空间信息、环境信息和/或行为轨迹(诸如访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息等)是否发生变化,以及当该访问请求的环境信息发生变化时,基于预置的访问认证方式和/或预置的访问控制策略,响应访问请求,从而当用户的访问环境发生变化时,进行动态地访问控制,增强访问的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的API访问控制方法的流程示意图;
图2为本发明一实施例提供的API访问代理装置的结构示意图;
图3为本发明又一实施例提供的API访问代理装置的另一结构示意图;
图4为本发明又一实施例提供的API访问代理装置的另一结构示意图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中,访问代理装置以API访问代理装置为例,API访问代理装置是访问数据服务API时的强制策略执行点,简称“API代理”,API代理与访问控制系统协作,验证防问所述前置应用的用户身份和用户终端的设备信息,以及当所述访问请求的环境信息发生变化时,基于预置的访问认证方式和/或预置的访问控制策略,响应访问请求,从而当用户的访问环境发生变化时,进行动态地访问控制,增强访问的安全性。
请参阅图1和图2,图1为本发明一实施例提供的API访问控制方法的流程示意图,图2为本发明一实施例提供的API访问代理装置的结构示意图,应用于访问代理装置,该方法主要包括以下步骤:
步骤S101、在用户通过前置应用访问受控API资源的过程中,拦截用户通过前置应用发送的访问请求。
拦截访问请求,即对访问请求进行接管,拦截方式包括DNS拦截、浏览器拦截、基于端口的拦截、或者基于IP的拦截,以避免访问认证方式被旁路。上述拦截过程可以由图2中所示的API访问代理装置22中的访问接管模块来执行。
进一步地,如图2所示,在访问接管之前还可以包括端口隐藏,例如根据约定条件,开放访问所述受控API资源的端口。其中,仅对通满足约定条件的访问请求开放端口,该约定条件包括但不限于按照约定暗号进行端口敲门等。该端口开放的过程可以由图2中所示的端口隐藏模块来执行。也就是说该端口默认为不开放,只对满足约定条件的访问请求(例如,访问请求中携带有约定暗号)进行动态开放,以减少恶意端口扫描带来的风险。
进一步地,如图2所示,在访问接管之后还可以对访问请求进行合法性检测。该合法性检测包括自动程序检测、恶意访问检测和请求大小检测中的至少之一,并在所述合法性检测通过后,基于对所述受控API资源的请求速度、请求连接数、访问时段中的至少之一,对所述访问请求进行拦截控制。上述合法性检测过程可以由图2中所示的API访问代理装置22中的安全加固来执行。
步骤S102、识别所述访问请求的访问主体,基于所述访问请求的时间信息,空间信息,环境信息,以及访问主体的访问行为进行持续评。并且识别所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹是否发生变化。具体地,可以通过将所述访问请求的环境信息、空间信息、环境信息和/或行为轨迹与所述访问请求之前所述用户通过所述前置应用发送的一次或多次访问请求中的对应信息进行比较,来识别所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹是否发生变化。该步骤S102可以由2中所示的API访问代理装置22中的访问控制模块来执行。
进一步地,在步骤S102之前,该方法还可以包括认证访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息,当访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息为预置的认证信息时,获取访问令牌。该访问令牌是用来描述进程或线程安全上下文的对象,访问令牌所包含的信息是与用户相关的进程或线程的身份和权限信息。当用户经过身份认证之后,系统会为用户生成一个访问令牌。之后,该用户发起的每次请求都会携带一个该应用的访问令牌。上述认证过程可以由图2中所示的API访问代理装置22中访问认证模块执行。
进一步地,步骤S102中识别访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息,对进行访问请求的访问主体进行身份识别,确定所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹是否发生变化。如果没有变化,就可以按照以往的处理策略处理所述访问请求。如果发生了变化,则API访问代理装置22中的访问控制模块可以从访问控制系统26请求预置的访问认证方式和/或预置的访问控制策略。
可理解的,该访问主体即指访问所述前置应用的用户和用户终端、前置应用和内置有前置应用的终端。
S103、当访问请求的环境信息发生变化时,基于预置的访问控制策略,响应该访问请求。该步骤可以由2中所示的API访问代理装置22中的访问控制模块来执行。
当前置应用21携带访问令牌访问受控API资源23时,访问控制模块识别访问请求的访问主体、客体和操作,以及访问请求的上下文信息,然后和访问控制系统26联动进行授权策略判定。访问主体即访问所述前置应用的用户和用户终端、前置应用、内置有前置应用的终端,客体即受控API资源。
进一步地,步骤S103中访问控制模块对访问认证模块授权通过的访问请求,根据访问控制系统26通知的预置的访问控制策略(例如,转发策略)进行转发,同时根据需要将所述访问令牌传递至所述受控API资源所在的服务端。另外,对访问认证模块授权失败的请求则拒绝访问或者要求二次认证。
进一步地,步骤S103中访问控制模块收在收到访问控制系统26发送的表征会话安全状态变更的通知信息时,停止对所述访问请求的处理。即通知的会话安全状态变更时,强制撤销当前会话。上述控制过程即由图2中所示的访问控制模块执行。其中,对于访问请求转发的过程由图2中所示的访问转发模块执行。
进一步地,对于每一个到达API访问代理装置22的访问请求,可以通过API访问代理装置22中的访问日志模块记录API访问代理装置22对该访问请求进行处理的访问日志,同时访问审计模块可以基于所述访问日志统计对所述受控API资源进行访问的访问流量。该访问日志例如可以包括完整的授权日志、网络访问流量统计等信息,包括但不限于访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息为预置的认证信息、访问时间、API接口、流量等信息。另外,访问日志模块可以将该访问日志上报到风险与信任评估系统,以通过该风险与信任评估系统对受控API资源的访问情况进行审计及安全风险分析。其中统计访问流量的过程可以分别又图2中的API访问代理装置22的访问日志模块和访问审计模块执行。另外,还可以对API访问代理装置22设置接口,该接口用于发送访问日志和统计的访问流量。该接口可以例如为图2中与风险信任评估系统进行连接的接口,向该系统提供访问日志和访问流量。
在本发明实施例中,在用户通过前置应用访问受控API资源的过程中,拦截用户通过前置应用发送的访问请求,识别该访问请求的时间信息、空间信息、环境信息和/或行为轨迹(诸如访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息等)是否发生变化,以及当该访问请求的环境信息发生变化时,基于预置的访问认证方式和/或预置的访问控制策略,响应访问请求,从而当用户的访问环境发生变化时,进行动态地访问控制,增强访问的安全性。
请参阅图3,图3为本发明又一实施例提供的API访问代理装置的另一结构示意图该装置,可以是API代理服务器,该装置主要包括:
拦截模块201,用于在用户通过前置应用访问受控API资源的过程中,拦截用户通过前置应用发送的访问请求。
拦截访问请求,即对访问请求进行接管,拦截方式包括DNS拦截、浏览器拦截、基于端口的拦截、基于IP的拦截,可避免访问认证方式被旁路。上述拦截过程可以由图2中所示的API访问代理装置22中的访问接管模块来执行。进一步地,如图2所示,在访问接管之后还可以对访问请求进行合法性检测。该合法性检测包括自动程序检测、恶意访问检测和请求大小检测中的至少之一,并在所述合法性检测通过后,基于对所述受控API资源的请求速度、请求连接数、访问时段中的至少之一,对所述访问请求进行拦截控制。上述合法性检测过程可以由图2中所示的API访问代理装置22中的安全加固来执行。
识别模块202,用于识别所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹是否发生变化。该识别模块202可以是2中所示的API访问代理装置22中的访问控制模块。
进一步地,该API访问代理装置22还可以包括访问认证模块。该访问认证模块可以用于认证访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息,当访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息为预置的认证信息时,获取访问令牌,该访问令牌是用来描述进程或线程安全上下文的对象,访问令牌所包含的信息是与用户相关的进程或线程的身份和权限信息。当用户经过身份认证之后,系统会为用户生成一个访问令牌。之后,该用户发起的每次请求都会携带一个该应用的访问令牌。
进一步地,识别模块202识别访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息,对进行访问请求的访问主体进行身份识别,确定所述访问请求时间信息、空间信息、环境信息和/或行为轨迹是否发生变化。如果没有变化,就可以按照以往的处理策略处理所述访问请求。如果发生了变化,则API访问代理装置22中的访问控制模块可以从访问控制系统26请求预置的访问认证方式和/或预置的访问控制策略。
可理解的,该访问主体即指访问所述前置应用的用户和用户终端、前置应用和内置有前置应用的终端。
响应模块203,当访问请求的环境信息发生变化时,基于预置的访问控制策略,响应该访问请求。响应模块可以是2中所示的API访问代理装置22中的访问控制模块。
当前置应用21携带访问令牌访问受控API资源23时,响应模块203识别访问请求访问主体,客体和操作,以及访问请求的上下文信息,和访问控制系统联动进行授权策略判定。访问主体即访问所述前置应用的用户和用户终端、前置应用、内置有前置应用的终端。客体即受控API资源。
进一步地,响应模块203对访问认证模块授权通过的访问请求,根据访问控制系统26通知的预置的访问控制策略(例如,转发策略)进行转发,同时根据需要将所述访问令牌传递至所述受控API资源所在的服务端。另外,对访问认证模块授权失败的请求则拒绝访问或者要求二次认证。
进一步地,响应模块203在访问控制模块收在收到访问控制系统26发送的表征会话安全状态变更的通知信息时,停止对所述访问请求的处理。即通知的会话安全状态变更时,强制撤销当前会话。上述控制过程即由图2中所示的访问控制模块执行。
进一步地,于每一个到达API访问代理装置22的访问请求,可以通过API访问代理装置22中的访问日志模块记录API访问代理装置22对该访问请求进行处理的访问日志,同时访问审计模块可以基于所述访问日志统计对所述受控API资源进行访问的访问流量。该访问日志例如可以包括完整的授权日志、网络访问流量统计等信息,包括但不限于访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息为预置的认证信息、访问时间、API接口、流量等信息。另外,访问日志模块可以将该访问日志上报到风险与信任评估系统,以通过该风险与信任评估系统对受控API资源的访问情况进行审计及安全风险分析。其中统计访问流量的过程可以分别又图2中的API访问代理装置22的访问日志模块和访问审计模块执行。另外,还可以对API访问代理装置22设置接口,该接口用于发送访问日志和统计的访问流量。该接口可以例如为图2中与风险信任评估系统进行连接的接口,向该系统提供访问日志和访问流量。
在本发明实施例中,在用户通过前置应用21访问受控API资源23的过程中,拦截用户通过前置应用发送的访问请求,识别该访问请求的时间信息、空间信息、环境信息和/或行为轨迹(诸如访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息等)是否发生变化,以及当该访问请求的环境信息发生变化时,基于预置的访问认证方式和/或预置的访问控制策略,响应访问请求,从而当用户的访问环境发生变化时,进行动态地访问控制,增强访问的安全性。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,拦截模块201(访问接管模块)、识别模块202(访问控制模块)、响应模块203(访问转发模块)、端口隐藏模块、安全加固模块、访问审计模块、以及访问日志模块中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,拦截模块201(访问接管模块)、识别模块202(访问控制模块)、响应模块203(访问转发模块)、端口隐藏模块、安全加固模块、访问审计模块、以及访问日志模块中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,拦截模块201(访问接管模块)、识别模块202(访问控制模块)、响应模块203(访问转发模块)、端口隐藏模块、安全加固模块、访问审计模块、以及访问日志模块中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图4为本发明又一实施例提供的API访问代理装置的另一结构示意图。
如图4所示,API访问代理装置400包括处理器410、计算机可读存储介质420。API访问代理装置400可以执行根据本公开实施例的方法。
具体地,处理器410例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器410还可以包括用于缓存用途的板载存储器。处理器410可以是用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
计算机可读存储介质420,例如可以是非易失性的计算机可读存储介质,具体示例包括但不限于:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;等等。
计算机可读存储介质420可以包括计算机程序421,该计算机程序421可以包括代码/计算机可执行指令,其在由处理器410执行时使得处理器410执行根据本公开实施例的方法或其任何变形。
计算机程序421可被配置为具有例如包括计算机程序模块的计算机程序代码。例如,在示例实施例中,计算机程序421中的代码可以包括一个或多个程序模块,例如包括421A、模块421B、……。应当注意,模块的划分方式和个数并不是固定的,本领域技术人员可以根据实际情况使用合适的程序模块或程序模块组合,当这些程序模块组合被处理器410执行时,使得处理器410可以执行根据本公开实施例的方法或其任何变形。
根据本发明的实施例,拦截模块201(访问接管模块)、识别模块202(访问控制模块)、响应模块203(访问转发模块)、端口隐藏模块、安全加固模块、访问审计模块、以及访问日志模块中的至少一个可以实现为参考图4描述的计算机程序模块,其在被处理器410执行时,可以实现上面描述的相应操作。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
在本申请所提供的多个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信链接可以是通过一些接口,模块的间接耦合或通信链接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
在本申请所提供的多个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信链接可以是通过一些接口,模块的间接耦合或通信链接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上为对本发明所提供的API访问控制方法及API访问代理装置的描述,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种API访问控制方法,应用于访问代理装置,其特征在于,包括:
在用户通过前置应用访问受控API资源的过程中,拦截所述用户通过所述前置应用发送的访问请求;
识别所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹是否发生变化,包括将所述访问请求的环境信息、空间信息、环境信息和/或行为轨迹与所述访问请求之前所述用户通过所述前置应用发送的一次或多次访问请求中的对应信息进行比较,来识别所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹是否发生变化;
当所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹发生变化时,基于预置的访问认证方式和/或预置的访问控制策略,响应所述访问请求;以及
当所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹未发生变化时,按照与所述访问请求之前所述用户通过所述前置应用发送的一次或多次访问请求相同的访问控制策略响应所述访问请求。
2.根据权利要求1所述的API访问控制方法,其特征在于,所述基于预置的访问认证方式,响应所述访问请求包括:
基于所述前置应用的身份信息、所述前置应用的服务器设备信息、访问所述前置应用的用户身份和用户终端的设备信息、所述受控API资源、所述访问请求的上下文信息其中的至少一个进行授权策略判定。
3.根据权利要求2所述的API访问控制方法,其特征在于,所述拦截所述用户通过前置应用发送的访问请求包括:
根据约定条件,开放访问所述受控API资源的端口。
4.根据权利要求3所述的API访问控制方法,其特征在于,所述拦截所述用户通过前置应用发送的访问请求包括:
对所述访问请求进行合法性检测,所述合法性检测包括自动程序检测、恶意访问检测和请求大小检测其中的至少之一;以及
在所述合法性检测通过后,基于对所述受控API资源的请求速度、请求连接数、访问时段中的至少之一,对所述访问请求进行拦截控制。
5.根据权利要求1至4任意一项所述的API访问控制方法,其特征在于,在所述识别所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹是否发生变化之前,所述方法还包括:
认证所述访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息;
当所述访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息为预置的认证信息时,获取访问令牌,以通过访问令牌授权所述访问请求访问所述受控API资源。
6.根据权利要求5所述的API访问控制方法,其特征在于,所述当所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹发生变化时,基于预置的访问认证方式和/或预置的访问控制策略,响应所述访问请求包括:
将所述访问请求根据转发策略进行转发以访问所述受控API资源,以及,根据需要将所述访问令牌传递至所述受控API资源所在的服务端。
7.根据权利要求4所述的API访问控制方法,其特征在于,所述方法还包括:
当所述访问所述前置应用的用户身份和用户终端的设备信息、前置应用的身份信息和内置有前置应用的终端的设备信息不是预置的认证信息时,确定对所述访问请求的授权为不通过;以及
拒绝所述访问请求,或,向所述前置应用返回需进行二次认证的信息。
8.根据权利要求7所述的API访问控制方法,其特征在于,所述基于预置的访问控制策略,响应所述访问请求包括:
当收到表征会话安全状态变更的通知信息时,基于所述预置的访问策略停止对所述访问请求的处理。
9.根据权利要求1所述的API访问控制方法,其特征在于,所述基于预置的访问控制策略,响应所述访问请求还包括:
记录所述访问请求的访问日志,并基于所述访问日志统计对所述受控API资源进行访问的访问流量。
10.一种API访问代理装置,其特征在于,包括:
拦截模块,用于在用户通过前置应用访问受控API资源的过程中,拦截所述用户通过所述前置应用发送的访问请求;
识别模块,用于识别所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹是否发生变化,包括将所述访问请求的环境信息、空间信息、环境信息和/或行为轨迹与所述访问请求之前所述用户通过所述前置应用发送的一次或多次访问请求中的对应信息进行比较,来识别所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹是否发生变化;
响应模块,用于当所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹发生变化时,基于预置的访问认证方式和/或预置的访问控制策略,响应所述访问请求;以及当所述访问请求的时间信息、空间信息、环境信息和/或行为轨迹未发生变化时,按照与所述访问请求之前所述用户通过所述前置应用发送的一次或多次访问请求相同的访问控制策略响应所述访问请求。
CN201910693985.3A 2019-02-02 2019-07-29 Api访问控制方法及api访问代理装置 Active CN110300125B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910108753.7A CN109600399A (zh) 2019-02-02 2019-02-02 Api访问控制方法及api访问代理装置
CN2019101087537 2019-02-02

Publications (2)

Publication Number Publication Date
CN110300125A CN110300125A (zh) 2019-10-01
CN110300125B true CN110300125B (zh) 2022-07-08

Family

ID=65967201

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201910108753.7A Pending CN109600399A (zh) 2019-02-02 2019-02-02 Api访问控制方法及api访问代理装置
CN201910693985.3A Active CN110300125B (zh) 2019-02-02 2019-07-29 Api访问控制方法及api访问代理装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201910108753.7A Pending CN109600399A (zh) 2019-02-02 2019-02-02 Api访问控制方法及api访问代理装置

Country Status (1)

Country Link
CN (2) CN109600399A (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981684A (zh) * 2019-04-12 2019-07-05 浙江中烟工业有限责任公司 一种基于应用代理控制流速的实现方法
CN110049046A (zh) * 2019-04-19 2019-07-23 北京奇安信科技有限公司 访问控制方法、终端、服务器及系统
CN110851456B (zh) * 2019-11-08 2022-03-29 北京字节跳动网络技术有限公司 一种信息处理方法、电子设备及存储介质
CN112311788A (zh) * 2020-10-28 2021-02-02 北京锐安科技有限公司 一种访问控制方法、装置、服务器及介质
CN112637026B (zh) * 2020-12-21 2022-11-29 厦门亿联网络技术股份有限公司 一种全球服务请求的接入转发方法及系统
CN113420312B (zh) * 2021-07-08 2022-04-26 山东浪潮超高清视频产业有限公司 一种动态控制api接口访问的方法
CN114329602A (zh) * 2021-12-30 2022-04-12 奇安信科技集团股份有限公司 一种访问控制方法、服务器、电子设备及存储介质
CN116132198B (zh) * 2023-04-07 2023-07-25 杭州海康威视数字技术股份有限公司 基于轻量化上下文语义的物联网隐私行为感知方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102340493A (zh) * 2010-07-21 2012-02-01 中兴通讯股份有限公司 访问控制方法及网关
CN103020498A (zh) * 2012-11-19 2013-04-03 广东亚仿科技股份有限公司 一种智能化动态权限控制方法和系统
CN104580344A (zh) * 2013-10-10 2015-04-29 国际商业机器公司 用于生成资源访问控制决策的方法和系统
CN104639650A (zh) * 2015-02-27 2015-05-20 杭州华三通信技术有限公司 一种细粒度分布式接口访问控制方法及装置
CN107704765A (zh) * 2017-08-28 2018-02-16 深圳市诚壹科技有限公司 一种接口访问方法、服务器及计算机可读存储介质
CN104811465B (zh) * 2014-01-27 2018-06-01 电信科学技术研究院 一种访问控制的决策方法和设备
US10044714B1 (en) * 2017-05-12 2018-08-07 International Business Machines Corporation Device authentication with mac address and time period

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102340493A (zh) * 2010-07-21 2012-02-01 中兴通讯股份有限公司 访问控制方法及网关
CN103020498A (zh) * 2012-11-19 2013-04-03 广东亚仿科技股份有限公司 一种智能化动态权限控制方法和系统
CN104580344A (zh) * 2013-10-10 2015-04-29 国际商业机器公司 用于生成资源访问控制决策的方法和系统
CN104811465B (zh) * 2014-01-27 2018-06-01 电信科学技术研究院 一种访问控制的决策方法和设备
CN104639650A (zh) * 2015-02-27 2015-05-20 杭州华三通信技术有限公司 一种细粒度分布式接口访问控制方法及装置
US10044714B1 (en) * 2017-05-12 2018-08-07 International Business Machines Corporation Device authentication with mac address and time period
CN107704765A (zh) * 2017-08-28 2018-02-16 深圳市诚壹科技有限公司 一种接口访问方法、服务器及计算机可读存储介质

Also Published As

Publication number Publication date
CN110300125A (zh) 2019-10-01
CN109600399A (zh) 2019-04-09

Similar Documents

Publication Publication Date Title
CN110300125B (zh) Api访问控制方法及api访问代理装置
CN110311926B (zh) 一种应用访问控制方法、系统和介质
CN110298188B (zh) 动态访问权限的控制方法及系统
WO2021114925A1 (zh) 访问控制方法和访问控制装置
US10692138B1 (en) Secure data exchange
CN111274583A (zh) 一种大数据计算机网络安全防护装置及其控制方法
US20080005798A1 (en) Hardware platform authentication and multi-purpose validation
US20070261103A1 (en) Method and apparatus for imposing quorum-based access control in a computer system
US9521032B1 (en) Server for authentication, authorization, and accounting
US10965680B2 (en) Authority management method and device in distributed environment, and server
US9990505B2 (en) Temporally isolating data accessed by a computing device
US10326773B2 (en) Ensuring the credibility of devices for global attestation
CN113076376B (zh) 基于区块链的多方异步抽样共识方法及系统及装置及介质
CN110650216B (zh) 云服务请求方法和装置
CN110069911B (zh) 访问控制方法、装置、系统、电子设备和可读存储介质
US20160335433A1 (en) Intrusion detection system in a device comprising a first operating system and a second operating system
CN116319024A (zh) 零信任系统的访问控制方法、装置及零信任系统
Onarlioglu et al. Overhaul: Input-driven access control for better privacy on traditional operating systems
US20220060463A1 (en) Method for managing network devices, apparatus, and computer readable storage medium
US20170142160A1 (en) Systems and Methods for Controlling Access to a Computer Device with Access Counting
CN111783047A (zh) Rpa自动化安全防护方法及装置
US11876835B2 (en) Techniques to enforce policies for computing platform resources
CN113901428A (zh) 多租户系统的登录方法及装置
CN116155565B (zh) 数据访问控制方法和装置
US20220150277A1 (en) Malware detonation

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
GR01 Patent grant