CN116800443A - 企业访问请求的处理方法、管理系统、设备及存储介质 - Google Patents
企业访问请求的处理方法、管理系统、设备及存储介质 Download PDFInfo
- Publication number
- CN116800443A CN116800443A CN202210263538.6A CN202210263538A CN116800443A CN 116800443 A CN116800443 A CN 116800443A CN 202210263538 A CN202210263538 A CN 202210263538A CN 116800443 A CN116800443 A CN 116800443A
- Authority
- CN
- China
- Prior art keywords
- call request
- api
- public network
- target
- call
- 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
- 238000003672 processing method Methods 0.000 title abstract description 7
- 238000000034 method Methods 0.000 claims abstract description 47
- 238000012545 processing Methods 0.000 claims abstract description 21
- 230000000903 blocking effect Effects 0.000 claims abstract description 16
- 230000015654 memory Effects 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 14
- 239000008186 active pharmaceutical agent Substances 0.000 abstract 6
- 238000007726 management method Methods 0.000 description 23
- 238000004458 analytical method Methods 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 4
- 230000005291 magnetic effect Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000002955 isolation Methods 0.000 description 3
- 206010000117 Abnormal behaviour Diseases 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000003326 Quality management system Methods 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 238000004804 winding Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请的目的是提供一种企业访问请求的处理方法、管理系统、设备及存储介质。具体地,应用于公网的边缘节点的企业访问请求的处理方法包括:接收公网访问客户端针对目标API的调用请求;根据所述调用请求对应的信息执行对应于所述目标API的预设策略,得到执行结果;根据所述执行结果阻断所述调用请求,或者向对应于所述目标API的目标应用转发所述调用请求并且将所述调用请求的调用结果返回所述公网客户端;其中,所述目标应用包括部署于公网或内网的企业自有目标应用,或部署于公网的第三方SaaS目标应用。本申请无需通过配置防火墙即可以使得公网访问客户端安全地访问和调用API,可以实现统一管控私有云、公有云、SaaS等不同环境下的API,实现精细到API粒度的访问控制。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种企业访问请求的处理方法、管理系统、设备及存储介质。
背景技术
作为程序间交换数据的工具,API(Application Programming Interface,应用程序接口)经历了几十年的发展,其数量和能力都产生了质的飞跃。如今,API连接着企业的服务、应用与系统,帮助企业最大程度利用其数据。随着云计算技术的普及,越来越多的企业逐渐将自己的系统和数据,从企业内部私有数据中心(私有云)转移到公有云和SaaS(Software-as-a-Service,软件即服务)。企业如今可以将自己的业务系统部署在私有云,不同厂商的公有云,或者直接使用第三方SaaS厂商管理的系统。
传统的企业网络配置中,在私有云、公有云、SaaS等不同环境中的系统调用其他环境都需要进行不同方式的配置,例如,私有云的系统只能在内网中进行访问和调用API,如果需要从公网上调用私有云里系统的API,则需要通过网络管理员在防火墙上进行配置相应的开放端口和网络转发规则来实现,开放之后公网也可以访问到系统所有暴露的API,无法在API粒度进行访问控制。企业在公有云和SaaS上的系统的API和私有云的API因为网络的隔离也很难统一管理。因此,如何管理企业分布在不同云环境(如私有云、公有云、SaaS等)中的系统的API,已成为业界当前面临的技术难题。
发明内容
本申请的一个目的是提供一种企业访问请求的处理方法、管理系统及设备,以实现针对企业分布在不同云环境中的系统的目标API进行安全的调用,打通不同网络间的隔离以实现统一管理。
根据本申请的一个方面,提供了一种企业访问请求的处理方法,其特征在于,应用于部署于公网的边缘节点,该方法包括:
接收公网客户端针对目标API的调用请求;
根据所述调用请求对应的信息执行对应于所述目标API的预设策略,得到执行结果;
根据所述执行结果阻断所述调用请求,或者向对应于所述目标API的目标应用转发所述调用请求并且将所述调用请求的调用结果返回所述公网客户端;
其中,所述目标应用包括部署于公网或内网的企业自有目标应用,或部署于公网的第三方SaaS目标应用。
可选地,所述预设策略包括以下至少之一:
判断针对所述目标API的调用请求的频率是否超过预定频率,至少部分根据判断结果,确定所述公网客户端是否允许调用所述目标API;
判断所述调用请求中携带的唯一标识信息是否合法,至少部分根据判断结果,确定所述公网客户端是否允许调用所述目标API;
判断所述调用请求信息中携带的来源IP地址是否与访问黑名单匹配,至少部分根据匹配结果,确定是否允许调用所述目标API;
至少部分根据所述调用请求携带的参数信息或所述调用请求的来源信息确定所述目标API的路由信息。
可选地,所述预设策略至少部分由企业用户或代表企业用户的一方在管理节点或所述边缘节点上配置并在所述边缘节点上部署生效,和/或,所述预设策略至少部分根据所述边缘节点采集分析所述调用目标API的调用日志而生成。
可选地,当对应于所述目标API的目标应用为部署于内网的企业自有目标应用时,所述向对应于所述目标API的目标应用转发所述调用请求包括:
所述调用请求经由基于部署于内网的隧道客户端与所述边缘节点之间的出向连接而建立的安全通道转发;
所述出向连接在所述隧道客户端启动后建立。
根据本申请的另一个方面,还提供了一种企业访问请求的处理方法,其特征在于,应用于部署于内网的隧道客户端,该方法包括:
所述隧道客户端启动后,主动与预先配置的部署于公网的边缘节点建立出向连接;
接收所述边缘节点转发的对应于部署于内网的企业自有目标应用的目标API的调用请求;
基于所述出向连接转发所述调用请求,以使所述调用请求最终被转发至所述目标应用;
接收所述调用请求的调用结果,返回所述调用结果至所述边缘节点,以使所述调用结果最终被转发至所述公网客户端。
根据本申请的又一个方面,还提供了一种企业访问请求的处理方法,其特征在于,应用于管理节点,所述方法包括:
从企业用户或代表企业用户的一方接收目标API的预设策略;
向所述边缘节点部署所述预设策略并生效;
所述预设策略用于使所述边缘节点在接收到公网客户端目标API的调用请求时能够根据所述调用请求对应的信息执行对应于所述目标API的预设策略,得到执行结果,并根据所述执行结果阻断所述请求,或者向对应于所述目标API的目标应用转发所述调用请求并且将所述调用请求的调用结果返回所述公网客户端。
可选地,所述方法还包括:接收目标API的预设策略并使能所述预设策略在所述公网客户端上部署并生效,所述预设策略用于使所述公网客户端在检测到公网客户端的目标API的调用请求操作时,能够根据所述调用请求对应的信息确定对应的边缘节点,并向所述边缘节点发送所述调用请求。
根据本申请的又一个方面,还提供了一种企业访问请求的管理系统,其特征在于,所述管理系统包括:配置于边缘节点的第一API网关,以及配置于内网系统的第二API网关;
所述第一API网关,用于接收公网客户端针对目标API的调用请求,根据所述调用请求对应的信息执行配置于所述第一API网关的对应于所述目标API的预设策略,得到执行结果,并根据所述执行结果阻断所述请求,或将所述调用请求发送至所述第二API网关;向对应于所述目标API的目标应用转发所述调用请求并且将所述调用请求的调用结果返回所述公网客户端;
所述第二API网关,用于接收所述调用请求并且将所述调用请求的调用结果返回所述第一API网关,以使所述第一API网关将所述调用结果返回所述公网客户端。
可选地,所述第二API网关将所述调用请求的调用结果返回所述第一API网关包括:
所述第二API网关经由同一局域网内的隧道客户端与部署于公网的边缘节点预先建立的安全连接,将所述调用请求的调用结果返回所述第一API网关。
可选地,所述第二API网关还用于:接收内网客户端针对目标API的第二调用请求,根据所述第二调用请求对应的信息执行配置于所述第二API网关的对应于所述目标API的预设策略,得到执行结果,并根据所述执行结果阻断所述请求,或向对应于所述目标API的目标应用转发所述第二调用请求并且将所述第二调用请求的调用结果返回所述内网客户端。
可选地,所述目标应用包括部署于公网或内网的企业自有目标应用,或部署于公网的第三方SaaS目标应用。
根据本申请的又一个方面,还提供了一种计算设备,其中,该设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述设备执行所述企业访问请求的处理方法。
根据本申请的又一个方面,还提供了一种计算机可读介质,其上存储有计算机程序指令,所述计算机可读指令可被处理器执行以实现所述企业访问请求的处理方法。
在本申请实施例中,应用于公网的边缘节点的企业访问请求的处理方法包括:接收公网客户端针对目标API的调用请求;根据所述调用请求对应的信息执行对应于所述目标API的预设策略,得到执行结果;根据所述执行结果阻断所述调用请求,或者向对应于所述目标API的目标应用转发所述调用请求并且将所述调用请求的调用结果返回所述公网客户端;其中,所述目标应用包括部署于公网或内网的企业自有目标应用,或部署于公网的第三方SaaS目标应用。与现有技术相比,在本申请实施例中,无需通过配置防火墙,即可使得公网客户端安全地访问和调用目标API,可以统一管控私有云、公有云、SaaS等不同环境下的目标API,实现精细到API粒度的访问控制,并且不需要对不同网络环境中的系统做特殊的网络配置,即可打通不同系统中的目标API对应的应用服务。进一步地,本申请实施例通过在互联网边缘节点上部署日志分析模块,可以识别出公网客户端的异常行为,从而可以阻断或允许调用请求。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其他特征、目的和优点将会变得更明显:
图1是根据本申请实施例的一种应用于公网的边缘节点的企业访问请求的处理方法流程图;
图2是根据本申请实施例的一种应用于内网的隧道客户端的企业访问请求的处理方法流程图;
图3是根据本申请实施例的一种应用于管理节点的企业访问请求的处理方法流程图;
图4是根据本申请实施例的一种企业访问请求的管理系统结构图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本申请作进一步详细描述。
在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的装置或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
传统的企业网络配置中,在私有云、公有云、SaaS等不同环境中的系统调用其他环境都需要进行不同方式的配置,例如,私有云的系统只能在内网中进行访问和调用API,如果需要从公网上调用私有云里系统的API,则需要通过网络管理员在防火墙上进行配置相应的开放端口和网络转发规则来实现,开放之后公网也可以访问到系统所有暴露的API,无法在API粒度进行访问控制。企业在公有云和SaaS上的系统的API和私有云的API因为网络的隔离也很难统一管理。
在上述情况下,本发明实施例提供一种企业访问请求的处理方法,下面首先对本发明实施例所提供的企业访问请求的处理方法的系统框架进行介绍。
本发明实施例所提供的企业访问请求的处理的管理系统,如图4所示,该管理系统包括边缘节点10、内网系统20、SaaS应用系统30、公有云系统40、公网客户端300、内网客户端50。其中,边缘节点10包括配置于边缘节点10的第一API网关100、日志分析模块500,以及配置于内网系统20的第二API网关200。
在一实施例中,边缘节点10接收公网客户端300针对不同系统(如内网系统20、SaaS应用系统30、公有云系统40)中应用服务对应的目标API的调用请求,边缘节点10根据调用请求对应的信息执行对应于不同系统中的目标API的预设策略,得到执行结果;边缘节点10根据所述执行结果阻断公网客户端的调用请求,或者,向对应于不同系统中的目标API的目标应用转发该调用请求,并将调用请求的调用结果返回公网客户端,至此公网客户端300得以调用应用系统的相应服务,其中,该目标应用包括部署于公网或内网的企业自有应用,或部署于公网的第三方SaaS目标应用。
进一步地,在边缘节点上部署日志分析模块,日志分析模块用于采集调用目标API的调用日志数据,预设策略可以根据日志分析模块采集到的调用日志数据进行自动学习生成,或者也可以由企业用户或代表企业用户的一方的开发人员根据日志分析模块采集到的日志数据配置相应的预设策略。其中,以在访问内网的目标API的实际场景为例,如图4所示,部署于边缘节点10中的第一API网关100,用于接收公网客户端300针对内网系统20的目标API的调用请求,根据调用请求对应的信息执行配置于第一API网关100的对应于目标API的预设策略,得到执行结果,并根据执行结果阻断调用请求,或将调用请求发送至部署于内网系统20的第二API网关200;第二API网关200,用于接收公网客户端300发送的针对目标API的调用请求并且将调用请求的调用结果返回第一API网关100,以使第一API网关100将调用结果返回公网客户端300。
公网客户端300至此得以调用内网系统20相应应用程序的相关服务。
其中,公网,也称公共网络,一般是指企业以外的网络,公网的计算机和因特网上的其他计算机之间可随意互相访问。内网,也称内部网络,一般是指企业内部的网络,属于未经授权无法访问的局部网络。
边缘节点是相当于云节点的概念,是指在靠近用户的网络边缘侧构建的业务平台中提供存储、计算、网络、安全等能力的资源,将部分关键业务应用由云端下沉到接入网络边缘,以减少网络传输和多级转发带来的带宽和时延损耗。
公网客户端、内网客户端包括但不限于智能手机、平板电脑、个人计算机或者物联网(Internet of Things,IoT)设备等终端设备。终端设备的类型不同,终端设备运行相应的操作系统。终端设备运行的操作系统包括桌面操作系统、移动操作系统或物联网操作系统。
在一实施例中,第二API网关经由同一局域网内的隧道客户端与部署于公网的边缘节点预先建立的安全连接,将调用请求的调用结果返回第一API网关。
例如,通过部署于边缘节点上的隧道服务端和部署于企业内网中的隧道客户端,在内网网络和公网网络之间搭建了一个安全通道,使得公网客户端可以通过该隧道访问企业内网的系统。隧道客户端启动后会自动连接隧道服务端,建立一个持久的TCP连接,因为隧道客户端的网络连接是自内网向外的连接,因此内网防火墙只需要开放出向端口并且阻断一切的入向连接即可。若公网客户端发起针对部署于内网的企业自有目标应用的调用请求,可以通过隧道服务端与隧道客户端之间的安全通道转发到企业内网。
其中,以图4为例,边缘节点10与内网系统20之间通过隧道连接,隧道包括配置于边缘节点10的隧道服务端11、部署于内网系统10的隧道客户端21。具体地,边缘节点10上的第一API网关100在接收到公网客户端300发起针对内网系统20的目标API的调用请求时,将该调用请求经由边缘节点侧的隧道服务端11、隧道客户端21、第二API网关200,得以在企业内网系统20调用相应的目标API。
其中,公网客户端300可以通过任播技术、智能DNS技术或全局负载均衡技术将针对目标API的调用请求调度至分布式网络中的最优的边缘节点10或第一API网关100的IP地址。内网系统20中的隧道客户端21启动后,也会通过向DNS服务器请求解析以获得隧道服务端的IP地址,从而会主动与预先配置的部署于公网的边缘节点的隧道服务端11建立出向连接;在隧道客户端21与隧道服务端11建立连接之后,此时隧道客户端21在接收边缘节点10上第一API网关100转发的针对部署于内网系统20的企业自有目标应用的目标API的调用请求后,基于之前建立的出向连接转发该调用请求,以使该调用请求最终被转发至企业自有目标应用,并接收自有目标应用针对调用请求作出的调用结果,返回调用结果至边缘节点10(或第一API网关100),以使调用结果最终被转发至公网客户端300。
在一些实施例中,第二API网关还用于:接收内网客户端针对目标API的第二调用请求,根据第二调用请求对应的信息执行配置于第二API网关的对应于目标API的预设策略,得到执行结果,并根据执行结果阻断请求,或向对应于目标API的目标应用转发第二调用请求并且将第二调用请求的调用结果返回内网客户端。
例如,配置于内网系统的第二API网关有一个内网的调用地址(如IP地址或内网域名),内网访问客户端通过该内网的调用地址来发起第二调用请求;第二调用请求包括对第二API网关上的API的调用;第二调用请求会直接发送到第二API网关,由第二API网关处理,执行预设策略(如限流、鉴权、黑名单等策略),得到执行结果。其中,执行结果包括允许针对目标API的第二调用请求,或者阻断针对目标API的第二调用请求。若允许针对目标API的第二调用请求,则将该第二调用请求转发到对应于目标API的目标应用。本申请实施例对于内网客户端发起的调用请求也会执行预设策略,不需要对不同网络环境中的系统做特殊的网络配置,并且保证了访问的安全性,同时内网客户端对内网系统的应用发起的API请求可以在更为靠近内网客户端的位置上进行直接处理,而无需绕到公网网络,处理效率更高。
在一些实施例中,第一API网关执行用户对应于目标API配置的预设策略,得到的执行结果包括:针对目标API的调用请求,或者阻断针对目标API的调用请求。若允许针对目标API的调用请求,则将该调用请求转发到对应于目标API的目标应用。
在一些实施例中,目标应用包括部署于公网或内网的企业自有目标应用,或部署于公网的第三方SaaS目标应用。
在本发明提供的实施例的上述系统架构中,公网客户端、边缘节点、内网系统/公有云系统/SaaS系统协同工作,共同执行安全调用目标API工作。本发明提供的实施例通过在公网的边缘节点根据前置的预设策略的访问控制,使得公网客户端在调用不同系统的目标API时,无需通过配置防火墙即可以使得公网访问客户端安全地访问和调用不同系统的目标API,可以实现统一管控私有云、公有云(企业网站服务或SaaS服务)等不同环境下的API,实现精细到API粒度的访问控制。
基于上述系统框架,本发明实施例提供了一种企业访问请求的处理方法,下面对该企业访问请求的处理方法进行介绍。
图1示出了本申请实施例的一种企业访问请求的处理方法的流程图,该方法可以应用于部署于公网的边缘节点,该方法包括步骤S101、步骤S102和步骤S103。
步骤S101,接收公网访问客户端针对目标API的调用请求。该请求为针对不同应用(如企业内网自有应用、第三方SaaS应用、公有云企业自有应用)的目标API的调用请求。
其中,由边缘云服务商给其客户(如此实施例中的公网客户端)分配一个边缘节点或第一API网关的域名,公网访问客户端通过边缘云服务商分配的域名,向DNS服务器解析以获得边缘节点或第一API网关的访问IP地址,公网客户端向该访问IP地址发出调用目标API的请求。
假设某企业员工想在公网网络登录企业内网的HR系统,该员工向HR业务逻辑接口(即目标API)发起调用请求,比如通过发送域名信息以解析获得访问IP地址(例如XXX.api-XXX.com/hr/login),进而基于得到边缘节点的IP地址(具体可以为第一API网关的IP地址),则该部署于公网的边缘节点可以接收企业员工的HR系统调用请求,再由边缘节点执行后续步骤。
步骤S102,根据调用请求对应的信息执行对应于目标API的预设策略,得到执行结果。在一些实施例中,预设策略包括以下至少之一:判断针对目标API的调用请求的频率是否超过预定频率,至少部分根据判断结果,确定公网客户端是否允许调用目标API;判断调用请求中携带的唯一标识信息是否合法,至少部分根据判断结果,确定公网客户端是否允许调用目标API;判断调用请求信息中携带的来源IP地址是否与访问黑名单匹配,至少部分根据匹配结果,确定是否允许调用目标API;至少部分根据调用请求携带的参数信息或调用请求的来源信息确定目标API的路由信息。本申请实施例在边缘节点处根据公网访问客户端发起的调用请求先行进行预设策略的执行,通过一种或多种预设策略的前置判断,兼顾多种公网访问客户端可能的安全问题,降低了公网环境下调用不同系统环境下应用可能导致的安全隐患,提高了目标API调用的安全性,同时还优化了访问路径的选择,提高了访问效率。
例如,预设策略可以包括以下一种或多种策略的组合:(1)限流策略:在部署于边缘节点上的第一API网关针对目标API的调用进行限流;比如,设置针对某系统目标API的调用频率不能超过1000次/分钟,若公网客户端在规定时间窗口(如1分钟)内请求次数到达1000次后,后续调用请求会被拒绝。(2)鉴权策略:部署于边缘节点上的第一API网关检查调用请求中携带的唯一标识信息是否合法;比如,公网客户端发起针对目标API的调用请求时必须携带唯一标识信息(如API key),当公网客户端发起调用请求后,检查该调用请求的唯一标识信息(如API key)是否合法,若合法则正常处理,若不合法则拒绝该调用请求。(3)黑名单策略:部署于边缘节点上的第一API网关检查调用请求信息中携带的来源IP地址是否与访问黑名单匹配;比如,配置某系统的目标API不允许IP为10.1.1.1(黑名单)调用,允许IP为192.168.1.1(白名单)调用,当公网客户端发起调用请求后,检查该公网客户端的IP地址和黑白名单配置,若符合黑名单则拒绝该调用请求,若符合白名单则允许该调用请求。(4)路由策略:部署于边缘节点上的第一API网关根据针对目标API的调用请求携带的参数信息或来源信息,确定是否符合何种路由规则进入对应的后端系统。比如,假设某公司部署了2套物流系统分别存储了北京(BJ)和上海(SH)分部的物流数据,当公网客户端发起针对物流API的调用请求时,可以在请求头上添加BJ或SH的参数,部署于互联网边缘节点上的第一API网关会根据该调用请求携带的参数信息或来源信息是否符合路由配置策略,从而决定是否将该调用请求转发到相应地区的物流系统中的对应API以获取请求的物流数据。
在一些实施例中,预设策略至少部分由企业用户或代表企业用户的一方在管理节点或边缘节点上配置并在边缘节点上部署生效,和/或,预设策略至少部分根据边缘节点采集分析调用目标API的调用日志而生成。例如,在由企业用户或代表企业用户的一方在管理节点配置预设策略并由管理节点下发至边缘节点部署生效,或者,直接由企业用户或代表企业用户的一方直接在边缘节点上配置预设策略并在边缘节点部署生效。在实际场景中,由管理中心或边缘中心获取由企业用户或代表企业用户的一方的开发人员上传的与预设策略对应的代码。具体地,为了便于开发者进行代码的上传,管理节点或边缘节点可以向开发者提供进行人机交互的图形用户界面(graphical user interface,GUI),使得开发者可以通过用户设备中的客户端程序或者浏览器显示该图形用户界面,并通过图形用户界面中的相关交互控件实现该预设策略的代码的上传,从而降低了运维成本,提高了迭代效率。
又例如,也可以在边缘节点上部署日志分析模块,该日志分析模块用于采集调用目标API的调用日志数据,预设策略可以根据日志分析模块采集到的调用日志数据进行自动学习生成,或者也可以由企业用户或代表企业用户的一方的开发人员根据日志分析模块采集到的日志数据配置相应的预设策略。通过企业用户或代表企业用户一方开发人员自行配置策略、日志分析模块采集自学习来配置预设策略或综合考虑自行配置方案和日志分析模块采集数据自动学习配置方案进行配置等多种预设策略的配置形式,提高了对各种应用场景的适应性和灵活性,配置形式丰富,预设策略设置可以综合考虑多种情况,使得边缘节点可以更为精准阻断不恰当的来自公网客户端的调用请求。
步骤S103,根据执行结果阻断调用请求,或者向对应于目标API的目标应用转发调用请求并且将调用请求的调用结果返回公网客户端。其中,目标应用包括部署于公网或内网的企业自有目标应用,或部署于公网的第三方SaaS目标应用;最后,将该调用请求的调用结果返回至公网客户端。
在一实施例中,步骤S102中的执行结果包括:允许针对目标API的调用请求,或者阻断针对目标API的调用请求。若允许针对目标API的调用请求,则将该调用请求转发到对应于目标API的目标应用,由相应的目标应用提供服务;若阻断针对目标API的调用请求,则对该公网客户端发送拒绝信息,并将相应的拒绝信息记录在日志分析模块中,企业用户或代表企业用户一方的开发人员也可根据日志分析模块记录的信息去调整预设策略,或者,日志分析模块可以通过自学习去调整预设策略。其中,目标应用包括部署于公网或内网的企业自有目标应用,或部署于公网的第三方SaaS目标应用;最后,将该调用请求的调用结果返回至公网客户端。例如,被记录为非企业员工的IP黑名单用户在公网上针对某企业的HR系统的API发起调用请求,根据预设策略,则由边缘节点阻断该调用请求,并向该用户响应返回4XX响应码或者直接进行内核层丢弃。若为本企业员工发起的HR系统的API调用请求,根据预设策略,则由第一API网关转发该调用请求至HR系统的API并将该员工想要的HR信息响应并原路返回给该本企业员工。
在一些实施例中,当对应于目标API的目标应用为部署于内网的企业自有目标应用时,向对应于目标API的目标应用转发调用请求包括:调用请求经由基于部署于内网的隧道客户端与边缘节点之间的出向连接而建立的安全通道转发;出向连接在隧道客户端启动后建立。通过由企业内网中隧道客户端主动发起出向连接,一方面因防火墙的设置保证所有公网的入向连接全部阻断,而保证出向的连接是畅通的,且不需要配置其他的NAT/ACL地址转换规则及无inbound规则需要。这样避免了因防火墙设置问题而无法直接进入企业内网,以及公网访问客户端访问企业内网的安全性问题,同时保证公网调用请求快速、安全地到达内网系统调用服务。
例如,若一个企业员工生病了在家(也即在公网环境下)登录公司的HR考勤系统进行请假操作,则该员工需要到内网系统去调用目标应用(本例中为HR考勤系统),在此,该员工可以通过部署于内网系统的隧道客户端与边缘节点之间的出向连接而建立的安全通道进入内网系统。在实际场景中,如图4所示,由部署于边缘节点上的隧道服务端和部署于企业内网中的隧道客户端,在内网和公网边缘节点之间搭建了一个安全通道,使得公网客户端可以通过该隧道安全地访问企业内网的系统。具体地,边缘节点中的第一API网关要通过向DNS服务器请求解析以得到部署于边缘节点中的隧道服务端的IP地址,并将针对目标API的调用请求转发至隧道服务端,部署于内网系统中的隧道客户端启动后会自动连接隧道服务端,建立一个持久的TCP连接,因为隧道客户端的网络连接是自内网向外的连接,因此内网防火墙只需要开放出向端口并且阻断一切的入向连接即可,而此时可以就通过隧道服务端将调用请求传递给内网系统的隧道客户端。至此,若公网客户端发起针对部署于内网的企业自有目标应用的调用请求,可以通过隧道服务端与隧道客户端之间的安全通道转发到企业内网。
与现有技术中在私有云、公有云、SaaS等不同环境中的系统调用API时需要进行不同的方式的配置方式相比,本发明实施例提供的处理方法为在公网环境中的企业访问请求对分布在不同云环境(例如:私有云、公有云、SaaS)中的目标API进行调用时,会经由边缘节点并执行该调用请求对应于不同系统的目标API的预设策略,并得到执行结果,并根据执行结果的情况选择阻断该调用请求以阻止调用目标API或在执行结果通过的情况下将该调用请求转发至不同的系统的以调用目标API,并将调用结果返回给公网,从而不需要对不同的网络环境的系统进行特殊的网络配置,即可对不同系统中的目标API对应应用服务打通。并且在边缘节点上可通过对目标API的调用日志情况进行分析,从而识别出调用请求是否异常从而得以阻断调用请求或允许调用。
由此,本发明实施例提供了一种对多系统目标API进行联动的安全防护方案,实现企业用户对不同的API资产有一个全局和统一的管控。
至此,企业用户在自身的网络边界不需要作出任何调整,也没有基于VPN的技术需求,而是基于这种网络层的技术就能实现零信任的框架,其兼容企业已有的身份管理、身份控制能力,从而打通访问链条,实现了零信任的框架。
图2示出的为本申请实施例的一种企业访问请求的处理方法的流程图,应用于内网的隧道客户端,该方法包括步骤S201、步骤S202、步骤S203和步骤S204。
步骤S201,部署于内网的隧道客户端启动后,主动与预先配置的部署于公网的边缘节点建立出向连接;
在一些实施例中,本实施例中通过在企业内网网络中设置隧道客户端,由隧道客户端在启动后,从企业内网系统中主动与预先配置的部署于公网的边缘节点建立出向连接,具体与部署于公网的边缘节点的隧道服务端建立出向连接。在本实施例中,隧道客户端为连接器。
步骤S202,接收边缘节点转发的对应于部署于内网的企业自有目标应用的目标API的调用请求;其中,内网的企业目标应用可以为人力资源系统(HR)系统、财务会计系统、物流管理系统、质量管理系统、成本控制系统、仓库管理系统、生产计划系统等企业业务相关系统应用;目标API指的是上述相关系统的业务逻辑接口,一个目标API代表着一项对应的应用服务。
步骤S203,基于出向连接转发调用请求,以使调用请求最终被转发至目标应用;
步骤S204,接收调用请求的调用结果,返回调用结果至边缘节点,以使调用结果最终被转发至公网访问客户端。至此,公网访问客户端得以调用相应系统的相关应用服务。
在实际场景中,由部署于边缘节点上的隧道服务端和部署于企业内网中的隧道客户端,在内网和公网边缘节点之间搭建了一个安全通道,使得公网客户端可以通过该隧道安全地访问企业内网的系统。具体地,边缘节点中的第一API网关要通过向DNS服务器请求解析以得到部署于边缘节点中的隧道服务端的IP地址,并将针对目标API的调用请求转发至隧道服务端,部署于内网系统中的隧道客户端启动后会通过向DNS服务器请求解析以获得隧道服务端的IP地址,从而自动连接隧道服务端,建立一个持久的TCP连接,因为隧道客户端的网络连接是自内网向外的连接,因此内网防火墙只需要开放出向端口并且阻断一切的入向连接即可,而此时可以就通过隧道服务端将调用请求传递给内网系统的隧道客户端。至此,若公网客户端发起针对部署于内网的企业自有目标应用的调用请求,可以通过隧道服务端与隧道客户端之间的安全通道转发到企业内网。
在现有技术中,因为企业内网中有防火墙的设置,公网中的网络请求无法直接进入企业内网,本实施例中通过在企业内网网络中设置隧道客户端,由隧道客户端在启动后,从企业内网中主动与预先配置的部署于公网的边缘节点建立出向连接,具体与部署于公网的边缘节点的隧道服务端建立出向连接。通过由企业内网中隧道客户端主动发起出向连接,一方面因防火墙的设置保证所有公网的入向连接全部阻断,而保证出向的连接是畅通的,且不需要配置其他的NAT/ACL规则、无inbound规则需要。这样避免了因防火墙设置问题而无法直接进入企业内网,以及公网访问客户端访问企业内网的安全性问题。
图3示出的是本申请实施例的一种企业访问请求的处理方法流程图,该方法应用于管理节点,该方法包括步骤S301、步骤S302和步骤S303。
步骤S301,从企业用户或代表企业用户的一方接收目标API的预设策略;
在一实施例中,由企业用户或代表企业用户的一方的开发者通过在管理节点上配置针对目标API的预设策略。具体地,获取由开发者上传的与预设策略对应的代码。在实际场景中,为了便于开发者进行代码的上传,管理节点可以向开发者提供进行人机交互的图形用户界面(graphical user interface,GUI),使得开发者可以通过用户设备中的客户端程序或者浏览器显示该图形用户界面,并通过图形用户界面中的相关交互控件实现该预设策略的代码的上传。
步骤S302,向边缘节点部署预设策略并生效;
在一实施例中,在管理节点接收到开发者配置的预设策略后,由管理节点向分布式网络中的边缘节点部署预设策略。此外,以边缘云网络或CDN(Content DeliveryNetwork,内容分发网络)网络的分布式网络的等实际场景为例,在边缘云网络中,所述边缘节点可以是边缘云网络中的一个边缘节点。在CDN网络中,所述边缘节点可以是CDN网络中的一个CDN节点,具体的,可以由CDN节点中的边缘服务器执行本发明方法。
步骤S303,预设策略用于使边缘节点在接收到公网访问客户端目标API的调用请求时能够根据调用请求对应的信息执行对应于目标API的预设策略,得到执行结果,并根据执行结果阻断请求,或者向对应于目标API的目标应用转发调用请求并且将调用请求的调用结果返回公网客户端。
其中,边缘节点在接收到使用公网IP访问的客户端目标API的调用请求时,根据调用请求对应的信息执行对应于目标API的预设策略,得到执行结果。例如,执行结果包括:允许针对目标API的调用请求,或者阻断针对目标API的调用请求。若允许针对目标API的调用请求,则将该调用请求转发到对应于目标API的目标应用;其中,目标应用包括部署于公网或内网的企业自有目标应用,或部署于公网的第三方SaaS目标应用;最后,将该调用请求的调用结果返回至公网客户端。
在一些实施例中,该方法还包括:接收目标API的预设策略并使能预设策略在公网访问客户端上部署并生效,预设策略用于使公网访问客户端在检测到公网访问客户端的目标API的调用请求操作时,能够根据调用请求对应的信息确定对应的边缘节点,并向边缘节点发送调用请求。
综上,在本申请实施例中,无需通过配置防火墙,则可以使得公网客户端安全地访问和调用API,可以统一管控私有云、公有云、SaaS等不同环境下的API,实现精细到API粒度的访问控制。进一步地,本申请实施例通过在互联网边缘节点上部署日志分析模块,可以识别出公网客户端的异常行为,从而可以阻断或允许调用请求。本申请实施例可以对分布在私有云、公有云、SaaS等不同网络环境中的API进行统一管理,不需要对不同网络环境中的系统做特殊的网络配置,即可打通不同系统中的目标API对应应用服务。
另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据程序指令运行的计算机设备的工作存储器中。在此,本申请的一些实施例提供了一种计算设备,该设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发设备执行前述本申请的多个实施例的方法和/或技术方案。
此外,本申请的一些实施例还提供了一种计算机可读介质,其上存储有计算机程序指令,计算机可读指令可被处理器执行以实现前述本申请的多个实施例的方法和/或技术方案。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一些实施例中,本申请的软件程序可以通过处理器执行以实现上文步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (13)
1.一种企业访问请求的处理方法,其特征在于,应用于部署于公网的边缘节点,所述方法包括:
接收公网客户端针对目标API的调用请求;
根据所述调用请求对应的信息执行对应于所述目标API的预设策略,得到执行结果;
根据所述执行结果阻断所述调用请求,或者,向对应于所述目标API的目标应用转发所述调用请求,并将所述调用请求的调用结果返回所述公网客户端;
其中,所述目标应用包括部署于公网或内网的企业自有目标应用,或部署于公网的第三方SaaS目标应用。
2.根据权利要求1所述的方法,其特征在于,所述预设策略包括以下至少之一:
判断针对所述目标API的调用请求的频率是否超过预定频率,至少部分根据判断结果,确定所述公网客户端是否允许调用所述目标API;
判断所述调用请求中携带的唯一标识信息是否合法,至少部分根据判断结果,确定所述公网客户端是否允许调用所述目标API;
判断所述调用请求信息中携带的来源IP地址是否与访问黑名单匹配,至少部分根据匹配结果,确定是否允许调用所述目标API;
至少部分根据所述调用请求携带的参数信息或所述调用请求的来源信息确定所述目标API的路由信息。
3.根据权利要求1所述的方法,其特征在于,所述预设策略至少部分由企业用户或代表企业用户的一方在管理节点或边缘节点上配置并在所述边缘节点上部署生效,和/或,所述预设策略至少部分根据所述边缘节点采集分析所述调用目标API的调用日志而生成。
4.根据权利要求1所述的方法,其特征在于,当对应于所述目标API的目标应用为部署于内网的企业自有目标应用时,所述向对应于所述目标API的目标应用转发所述调用请求包括:
所述调用请求经由基于部署于内网的隧道客户端与所述边缘节点之间的出向连接而建立的安全通道转发;
所述出向连接在所述隧道客户端启动后建立。
5.一种企业访问请求的处理方法,其特征在于,应用于部署于内网的隧道客户端,所述方法包括:
所述隧道客户端启动后,主动与预先配置的部署于公网的边缘节点建立出向连接;
接收所述边缘节点转发的对应于部署于内网的企业自有目标应用的目标API的调用请求;
基于所述出向连接转发所述调用请求,以使所述调用请求最终被转发至所述目标应用;
接收所述调用请求的调用结果,返回所述调用结果至所述边缘节点,以使所述调用结果最终被转发至所述公网客户端。
6.一种企业访问请求的处理方法,其特征在于,应用于管理节点,所述方法包括:
从企业用户或代表企业用户的一方接收目标API的预设策略;
向所述边缘节点部署所述预设策略并生效;
所述预设策略用于使所述边缘节点在接收到公网客户端目标API的调用请求时能够根据所述调用请求对应的信息执行对应于所述目标API的预设策略,得到执行结果,并根据所述执行结果阻断所述请求,或者向对应于所述目标API的目标应用转发所述调用请求并且将所述调用请求的调用结果返回所述公网客户端。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:接收目标API的预设策略并使能所述预设策略在所述公网客户端上部署并生效,所述预设策略用于使所述公网客户端在检测到公网客户端的目标API的调用请求操作时,能够根据所述调用请求对应的信息确定对应的边缘节点,并向所述边缘节点发送所述调用请求。
8.一种企业访问请求的管理系统,其特征在于,所述管理系统包括:配置于边缘节点的第一API网关,以及配置于内网系统的第二API网关;
所述第一API网关,用于接收公网客户端针对目标API的调用请求,根据所述调用请求对应的信息执行配置于所述第一API网关的对应于所述目标API的预设策略,得到执行结果,并根据所述执行结果阻断所述请求,或将所述调用请求发送至所述第二API网关;向对应于所述目标API的目标应用转发所述调用请求并且将所述调用请求的调用结果返回所述公网客户端;
所述第二API网关,用于接收所述调用请求并且将所述调用请求的调用结果返回所述第一API网关,以使所述第一API网关将所述调用结果返回所述公网客户端。
9.根据权利要求8所述的系统,其特征在于,所述第二API网关将所述调用请求的调用结果返回所述第一API网关包括:
所述第二API网关经由同一局域网内的隧道客户端与部署于公网的边缘节点预先建立的安全连接,将所述调用请求的调用结果返回所述第一API网关。
10.根据权利要求8所述的系统,其特征在于,所述第二API网关还用于:
接收内网客户端针对目标API的第二调用请求,根据所述第二调用请求对应的信息执行配置于所述第二API网关的对应于所述目标API的预设策略,得到执行结果,并根据所述执行结果阻断所述请求,或向对应于所述目标API的目标应用转发所述第二调用请求并且将所述第二调用请求的调用结果返回所述内网客户端。
11.根据权利要求8至10中任一项所述的系统,其特征在于,所述目标应用包括部署于公网或内网的企业自有目标应用,或部署于公网的第三方SaaS目标应用。
12.一种计算设备,其中,该设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述设备执行权利要求1至7中任一项所述的方法。
13.一种计算机可读介质,其上存储有计算机程序指令,所述计算机可读指令可被处理器执行以实现如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210263538.6A CN116800443A (zh) | 2022-03-17 | 2022-03-17 | 企业访问请求的处理方法、管理系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210263538.6A CN116800443A (zh) | 2022-03-17 | 2022-03-17 | 企业访问请求的处理方法、管理系统、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116800443A true CN116800443A (zh) | 2023-09-22 |
Family
ID=88044871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210263538.6A Pending CN116800443A (zh) | 2022-03-17 | 2022-03-17 | 企业访问请求的处理方法、管理系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116800443A (zh) |
-
2022
- 2022-03-17 CN CN202210263538.6A patent/CN116800443A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11652797B2 (en) | Secure application access systems and methods via a lightweight connector and a cloud-based system | |
US11258817B2 (en) | Rule-based assignment of criticality scores to assets and generation of a criticality rules table | |
US11943297B2 (en) | Distributed network security system providing isolation of customer data | |
US20230115001A1 (en) | Localization at scale for a cloud-based security service | |
US20090217346A1 (en) | Dhcp centric network access management through network device access control lists | |
US20220345495A1 (en) | Application-specific data flow for synthetic request injection | |
CN113949573A (zh) | 一种零信任的业务访问控制系统及方法 | |
US7966650B2 (en) | Dynamic internet address assignment based on user identity and policy compliance | |
US8392379B2 (en) | Method and system for preemptive scanning of computer files | |
WO2022247751A1 (zh) | 远程访问应用的方法、系统、装置、设备及存储介质 | |
US10595320B2 (en) | Delegating policy through manufacturer usage descriptions | |
US11368448B2 (en) | Passwordless privilege access | |
US20210281445A1 (en) | Personalized private roaming service set identifiers | |
US10484545B2 (en) | Method for optimizing quality of experience in mixed managed and unmanaged network environments with governance and regulation constraints | |
US20230198987A1 (en) | Systems and methods for controlling accessing and storing objects between on-prem data center and cloud | |
CN115037551B (zh) | 连接权限控制方法、装置、电子设备及存储介质 | |
US20220021653A1 (en) | Network security device | |
US20200267146A1 (en) | Network analytics for network security enforcement | |
WO2024039468A1 (en) | Granular secure user access to private resources | |
CN113194099B (zh) | 一种数据代理方法及代理服务器 | |
CN113852697B (zh) | 一种sdp终端流量代理方法、装置、设备及存储介质 | |
CN116800443A (zh) | 企业访问请求的处理方法、管理系统、设备及存储介质 | |
CN115913583A (zh) | 业务数据访问方法、装置和设备及计算机存储介质 | |
US11470048B1 (en) | Virtual private network environments for serverless code executions | |
US20240064138A1 (en) | Intelligent secure user access to private resources |
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 |