掌桥专利:专业的专利平台
掌桥专利
首页

数据处理方法、装置、计算机设备、存储介质及程序产品

文献发布时间:2024-04-18 19:58:21


数据处理方法、装置、计算机设备、存储介质及程序产品

技术领域

本申请涉及通信、云技术、智慧交通等技术领域,本申请涉及一种数据处理方法、装置、计算机设备、存储介质及程序产品。

背景技术

本领域中,对于需限制访问的专用网络,通常采用VPN(Virtual PrivateNetwork,虚拟专用网络)的方式实现对专用网络的访问。例如,在公用网络上建立专用网络,进行加密通讯,以实现对企业内部的网络资源的访问。

相关技术中,通常利用系统路由表机制访问专用网络,例如,采用TUN/TAP虚拟网卡,通过调整路由表的默认路由的优先级,将指向虚拟网卡的路由设置为默认路由且优先级最高。然而,利用系统路由表机制引流,容易产生与第三方VPN类软件抢夺路由表的冲突,甚至部分VPN软件设置有路由表保护功能,导致访问失败。因此,在许多场景中,利用系统路由表机制无法实现对专用网络的访问,导致访问方式的实用性较低。

发明内容

本申请提供了一种数据处理的方法、装置、计算机设备、存储介质及程序产品,可以解决相关技术中实用性较低的问题。所述技术方案如下:

一方面,提供了一种数据处理方法,所述方法包括:

响应于接收到对网络资源的访问请求,确定所述访问请求对应的通信链路信息,所述通信链路信息包括源地址和目标地址;

响应于基于预配置的目标引流策略确定所述网络资源属于引流资源,基于所述目标地址和预配置的引流端口,将所述访问请求引流至目标网关进行访问目标服务器,并记录所述源地址和进程信息之间的关联关系;

其中,所述目标网关用于将所述访问请求转发至目标服务器、并将目标服务器的响应数据转发至所述源地址,所述进程信息用于指示执行发起所述访问请求的进程;

接收所述目标服务器经目标网关返回的响应数据,并基于所述响应数据、以及所述源地址和进程信息之间的关联关系,显示所述访问请求对应的响应页面。

另一方面,提供了一种数据处理装置,所述装置包括:

通信链路确定模块,用于响应于接收到对网络资源的访问请求,确定所述访问请求对应的通信链路信息,所述通信链路信息包括源地址和目标地址;

引流模块,用于响应于基于预配置的目标引流策略确定所述网络资源属于引流资源,基于所述目标地址和预配置的引流端口,将所述访问请求引流至目标网关进行访问目标服务器,并记录所述源地址和进程信息之间的关联关系;

其中,所述目标网关用于将所述访问请求转发至目标服务器、并将目标服务器的响应数据转发至所述源地址,所述进程信息用于指示执行发起所述访问请求的进程;

接收模块,用于接收所述目标服务器经目标网关返回的响应数据;

显示模块,用于基于所述响应数据、以及所述源地址和进程信息之间的关联关系,显示所述访问请求对应的响应页面。

在一个可能实现方式中,所述引流端口指示用于承载所拦截的访问请求的地址;

所述引流模块,用于响应于基于所述目标引流策略确定所述网络资源属于引流资源,在网络层将所述访问请求的目标地址修改为所述引流端口,并调用所述访问请求的协议类型所对应的回调处理函数,以执行将拦截至所述引流端口的访问请求经鉴权后、通过所述目标网关发送至所述目标服务器;

其中,所述回调处理函数用于执行对所述访问请求进行鉴权、并基于对应协议类型的传输方式将所述访问请求发送至目标服务器。

在一个可能实现方式中,所述装置还包括:

传入模块,用于通过预配置的代理进程,将至少一种协议类型所对应的函数入口地址传入预配置的内核组件;

所述引流模块,用于:

通过所述内核组件,在网络层将所述目标地址修改为所述代理进程的引流端口;

通过所述内核组件,基于所述代理进程所传入的函数入口地址,调用所述协议类型所对应的回调处理函数,以执行将拦截至所述引流端口的访问请求经鉴权后、通过所述目标网关发送至所述目标服务器;

其中,所述目标网关为网关服务地址和网关之间的关联关系中,与所述目标地址对应的网关。

在一个可能实现方式中,所述装置还包括:

通过预配置的代理进程,开启对所述引流端口的数据检测;

所述引流模块,用于响应于检测到所述引流端口所拦截的所述访问请求,通过所述代理进程,以所述访问请求的源地址和源端口为键、以所述进程信息为值,对应存储源地址、源端口和进程信息之间的关联关系,所述通信链路信息还包括源端口。

在一个可能实现方式中,所述通信链路信息还包括源端口,所述关联关系包括以源地址和源端口为键、以所述进程信息为值的对应关系;

所述显示模块,用于确定接收所述响应数据的接收地址和接收端口;以所述接收地址和接收端口为键,从以源地址和源端口为键、以所述进程信息为值的对应关系中,确定所述接收地址和接收端口对应的进程信息;基于所述接收地址和接收端口对应的进程信息,将所述响应数据回传至发起所述访问请求的应用程序,并基于所述响应数据在所述应用程序中显示所述响应页面。

在一个可能实现方式中,所述装置还包括以下任一项:

短连接释放模块,用于在所述发起所述访问请求的进程中释放所述源端口,并删除所述以源地址和源端口为键、以所述进程信息为值的对应关系,所述目标服务器和请求设备之间的通信连接为短连接;

长连接释放模块,用于在所述进程中保持所述源端口,直至所述目标服务器和终端设备之间通信连接达到长连接结束条件,在所述进程中释放所述源端口,并删除所述以源地址和源端口为键、以所述进程信息为值的对应关系,所述目标服务器和请求设备之间的通信连接为长连接。

在一个可能实现方式中,所述装置还包括获取模块,所述获取模块在获取所述目标引流策略时,用于响应于当前对象登录引流管理应用时,基于所述当前对象的对象登录信息,从所述引流管理应用的管理服务器中获取所述当前对象所对应的目标引流策略;将所述目标引流策略存储至预配置的内核组件对应的内存空间中。

在一个可能实现方式中,所述目标引流策略包括:预配置的引流资源域名和端口、引流资源网络地址和端口、引流资源协议类型、引流资源进程特征信息、非引流资源域名和端口、非引流资源网络地址和端口、非引流资源协议类型或非引流资源进程特征信息中的至少一项。

在一个可能实现方式中,所述非引流资源域名和端口包括所述管理服务器所绑定的域名和端口;

所述引流资源域名和端口包括目标网络的私网中的资源服务器绑定的域名和端口,所述非引流资源域名和端口包括目标网络的公网中的资源服务器绑定的域名和端口。

在一个可能实现方式中,所述引流模块,还用于以下至少一项:

响应于所述访问请求的域名和端口属于引流资源域名和端口,确定所述网络资源属于引流资源;

响应于所述访问请求的目标地址和目标端口属于引流资源网络地址和端口,确定所述网络资源属于引流资源;

响应于所述访问请求的协议类型属于引流资源协议类型,确定所述网络资源属于引流资源;

响应于所述访问请求的进程信息符合引流资源进程特征信息,确定所述网络资源属于引流资源。

在一个可能实现方式中,所述装置还包括:

重定向模块,用于响应于所述访问请求的域名和端口属于引流资源域名和端口,将所述访问请求的域名重定向为虚拟网络地址,所述虚拟网络地址不是所述访问请求的域名所对应的真实网络地址。

在一个可能实现方式中,所述装置还包括非引流资源发送模块,所述非引流资源发送模块,用于:

响应于所述访问请求的域名和端口属于非引流资源域名和端口,基于所述通信链路信息发送所述访问请求;

响应于所述进程信息符合非引流资源进程特征信息,基于所述通信链路信息发送所述访问请求;

响应于所述访问请求的通信五元组分别与引流资源网络地址和端口、引流资源协议类型或引流资源进程特征信息中的任一项不匹配时,基于所述通信链路信息发送所述访问请求。

另一方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现上述的数据处理方法。

另一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的数据处理方法。

另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述的数据处理方法。

本申请实施例提供的技术方案带来的有益效果是:

本申请提供的数据处理方法,通过确定访问请求对应的通信链路信息,当该网络资源属于引流资源时,基于该目标地址和预配置的引流端口,将该访问请求引流至目标网关进行访问目标服务器,而通过目标网关可将该访问请求转发至目标服务器,从而将对需引流的资源的访问自动引流至对应网关进行访问;通过记录该源地址、与发起该访问请求的进程的进程信息之间的关联关系,以便于在接收目标服务器返回的响应数据时,基于该源地址和进程信息之间的关联关系,显示该访问请求对应的响应页面,从而保证该访问请求发起的整个访问过程准确执行,且无需安装虚拟网卡、需要修改系统路由表等操作,有效解决了相关技术中实用性差的问题,提高了对专用网络的访问过程的准确性和实用性。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。

图1为本申请实施例提供的一种数据处理方法的实施环境示意图;

图2为本申请实施例提供的一种数据处理方法的流程示意图;

图3为本申请实施例提供的一种策略配置页面示意图;

图4为本申请实施例提供的一种策略配置页面示意图;

图5为本申请实施例提供的一种引流管理应用的页面示意图;

图6为本申请实施例提供的一种策略配置页面示意图;

图7为本申请实施例提供的一种专用网络访问的架构简图

图8为本申请实施例提供的一种专用网络访问的架构示意图;

图9为本申请实施例提供的一种数据处理方法的信令交互示意图;

图10为本申请实施例提供的一种数据处理装置的结构示意图;

图11为本申请实施例提供的一种计算机设备的结构示意图。

具体实施方式

下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作等。

可以理解的是,在本申请的具体实施方式中,涉及到对象登录信息、通信链路信息、源地址、目标地址、目标端口、源端口、设备信息、操作系统、进程信息等任何与对象相关或与对象的设备相关的数据,当本申请以上实施例运用到具体产品或技术中时,需要获得对象许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。

图1是本申请实施例提供的一种数据处理方法的实施环境示意图,如图1所示,该实施环境包括:请求设备11、管理服务器12、目标网关13和目标服务器14。请求设备11运行有引流管理应用,该管理服务器12为该引流管理应用的后台服务器。该引流管理应用可提供对需引流资源的拦截并引流至指定网关进行访问的功能。该目标服务器14用于提供请求设备11所访问的网络资源,该目标网关13用于将请求设备11的访问请求转发至目标服务器14。

该管理服务器12配置有目标引流策略,该目标引流策略指示需被引流的网络资源。该请求设备11可以基于该引流管理应用获取该目标引流策略。该请求设备11发起用于访问网络资源的访问请求,并基于该目标引流策略判断该网络资源是否属于引流资源。若该网络资源属于引流资源,则继续基于引流管理应用实现将访问请求引流至目标网关13以访问目标服务器14。例如,该需被引流的网络资源可以是企业内网中限制访问的业务资源,企业管理员可在管理服务器12的目标引流策略中将该业务资源配置为引流资源;请求设备11发起对该业务资源的访问请求时,请求设备11基于该目标引流策略确定该访问请求所访问资源为引流资源;则该请求设备11可基于引流管理应用实现将访问请求引流至目标网关13,以访问业务资源所在的目标服务器14。

在一种可能场景中,若该网络资源属于引流资源,该管理服务器12可对该访问请求进行鉴权,管理服务器12鉴权通过,请求设备11再经目标网关13访问目标服务器14。例如,该引流管理应用可以是业务接入客户端,当前对象在请求设备11上登录业务接入客户端,请求设备11基于当前对象的对象登录信息,从管理服务器12中获取该当前对象所对应的目标引流策略。该请求设备11接收到来自任一应用的访问请求时,可基于目标引流策略判断待访问的网络资源是否属于引流资源。当基于目标引流策略确定待访问的网络资源属于引流资源时,该请求设备11基于目标地址和引流端口,对该访问请求进行拦截。该请求设备11还可以基于对象登录信息、该当前对象待访问的网络资源等信息,向管理服务器12发送鉴权请求。在鉴权通过后,将拦截至引流端口的访问请求通过目标网关13发送至目标服务器14。

在一种可能场景中,可通过预配置的进程或组件实现将访问请求引流至目标网关13以访问目标服务器14。示例性的,请求设备11可预配置有控制进程,当前对象在请求设备11上登录该引流管理应用,可通过控制进程从管理服务器12中获取目标引流策略,并拉起代理进程。通过代理进程加载内核组件、并调用内核组件的初始化逻辑,以完成内核组件的初始化。通过代理进程,将目标引流策略存储至内核组件在内存的对应存储空间。该内核组件是请求设备11在操作系统中配置的执行逻辑。可通过内核组件所存储的目标引流策略,对请求设备11接收到的任一访问请求待访问的网络资源进行判断,当网络资源属于引流资源时,通过内核组件,将访问请求的目标地址修改为引流端口,以将访问请求的请求数据拦截至该引流端口。并通过代理进程,执行调用访问请求的协议类型所对应的回调处理函数,以将拦截至该引流端口的访问请求经鉴权后、通过该目标网关发送至该目标服务器代理进程。

示例性的,请求设备11可以是服务器也可以是终端。上述涉及的服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器或服务器集群。上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、Wi-Fi及其他实现无线通信的网络。终端可以是智能手机(如Android手机、iOS手机等)、平板电脑、笔记本电脑、数字广播接收器、MID(Mobile Internet Devices,移动互联网设备)、PDA(个人数字助理)、台式计算机、车载终端(例如车载导航终端、车载电脑等)、智能音箱、智能手表等,终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,但并不局限于此。具体也可基于实际应用场景需求确定,在此不作限定。

图2为本申请实施例提供的一种数据处理方法的流程示意图。该方法的执行主体可以为请求设备。如图2所示,该方法包括以下步骤。

步骤201、请求设备获取目标引流策略。

该目标引流策略指示了需引流的引流资源,也即是,目标引流策略中定义了哪些资源需被引流。该请求设备可以从管理服务器中获取该目标引流策略,以便后续基于目标引流策略来判断是否需对请求访问的资源进行引流。其中,引流资源是指被配置为限制访问的网络资源,对于访问引流资源的访问请求,请求设备会拦截并引流至目指定的网关来访问该网络资源,还可以对该访问请求、发起访问请求的对象、应用、设备等进行验证、鉴权等操作,验证、鉴权通过后,才引流至指定的网关方位该网络资源。非引流资源则可以是不限制访问的网络资源,例如公网中的网络资源,不限制访问权限,对于访问非引流资源的请求可直接透传,不进行拦截和引流。

在一种可能实施方式中,可从域名、端口、网络地址、所采用的通信协议的协议类型、进程信息等角度,定义需引流的资源。示例性的,该目标引流策略包括:预配置的引流资源域名和端口、引流资源网络地址和端口、引流资源协议类型、引流资源进程特征信息中的至少一项。

该引流资源域名和端口可以是需引流的网络资源的域名和端口,例如,企业管理员可在管理服务器中配置本企业内部域名及访问端口为引流资源域名和端口。其中,引流资源域名可以是泛域名、也可以是精准域名;泛域名是指带通配符*的域名信息,表示符合某种特征的所有子域名。例如,某个企业网络域名为“www.ABCD.com”;泛域名可以为“*ABCD.com”,则“www.ABCD.com”、“mail.ABCD.com”等均属于泛域名“*ABCD.com”所覆盖的域名范围内。引流资源端口可以是指定的一个或多个端口,例如,引流资源端口可以是端口列表或所有端口,当然,如果是所有端口,也即是忽略该引流资源域名下对端口的过滤。

该引流资源网络地址和端口可以是需引流的网络资源的网络地址和端口,该网络地址可以是IP(Internet Protocol,网际互连协议)地址,例如,企业管理员可在管理服务器中配置本企业的业务IP及访问端口,请求设备向这些业务IP及访问端口发起的访问请求均需要被拦截并引流。

该引流资源协议类型可以是需引流协议类型,当请求设备采用需引流协议类型的访问请求来访问网络资源时,该访问请求需要被拦截并引流。例如,该引流资源协议类型可以包括TCP或UDP中的至少一项,例如,当采用特定的TCP协议对指定网络资源访问时需引流,而对UDP协议访问网络资源无需引流,从而实现针对特定的协议的流量拦截与放通。

该引流资源进程特征信息可以是需引流进程,当请求设备通过具备该引流资源进程特征信息的进程,发起对网络资源的访问请求时,该访问需要被拦截并引流。进程信息可包括进程号(pid)、进程名称、进程路径、进程可执行文件哈希值(例如MD5)、版本信息、是否具备指定签名信息以及进程可执行文件的其它属性信息等中的一项或多项。该进程特征信息可以包括引流条件,如无指定签名、进程路径为预配置的需引流路径等。

在一种可能实施方式中,该目标引流策略还可以指示不需引流的非引流资源,也即是,目标引流策略中还可定义哪些资源不被引流。示例性的,该目标引流策略还可以包括:预配置非引流资源域名和端口、非引流资源网络地址和端口、非引流资源协议类型或非引流资源进程特征信息中的至少一项。示例性的,企业管理员可以在管理服务器配置禁止拦截的资源域名和端口,例如,为避免影响指定的业务系统访问,企业管理员可配置指定的业务系统的域名为非引流资源域名。示例性的,该非引流资源网络地址是指不需要引流的网络资源的网络地址。例如,企业管理员还可以指定企业网络地址中的一部分IP地址作为禁止拦截和引流的IP列表或IP段,当请求设备的访问请求的目标地址命中指定的IP列表或IP段,即放通该访问请求,不进行拦截和引流。

在一个可能示例中,该请求设备可以无需对该请求设备与该管理服务器之间的通信连接拦截、引流。也即是,该请求设备发起的对管理服务器的访问请求,无需被拦截、引流。示例性的,该非引流资源域名和端口包括该管理服务器所绑定的域名和端口。例如,请求设备向管理服务器发送用于更新引流策略的策略更新请求、登录引流管理应用的登录请求等。示例性的,该非引流资源网络地址和端口可以包括管理服务器绑定的网络地址和端口,例如,将该引流管理应用的后台部署的服务端集群地址、负载均衡器地址和访问网关地址等作为禁止引流的资源,请求设备可直连访问。

在另一个可能示例中,该请求设备还可以针对目标网络中部分网络资源作为需引流资源、部分网络资源配置为非引流资源。示例性的,该引流资源域名和端口包括目标网络的私网中的资源服务器绑定的域名和端口,该非引流资源域名和端口包括目标网络的公网中的资源服务器绑定的域名和端口。示例性的,该目标网络可以为企业内网,例如将企业内网中分离出一部分IP地址用作为无需引流的直连访问站点信息,另外一部分作为需引流的、限制访问站点。

在一种可能实施方式中,管理服务器可以每个对象为粒度,配置每个对象所对应的引流策略,则该请求设备可以基于当前对象的信息获取该目标引流策略。示例性的,该请求设备获取目标引流策略的过程可以包括:该请求设备响应于当前对象登录引流管理应用时,基于该当前对象的对象登录信息,从该引流管理应用的管理服务器中获取该当前对象所对应的目标引流策略;该请求设备将该目标引流策略存储至预配置的内核组件对应的内存空间中。示例性的,该请求设备也可以定期更新该内核组件在内存中存储的引流策略。该更新过程可以包括:该请求设备按照目标更新周期,周期性的执行基于该当前对象的对象登录信息、从管理服务器中获取目标引流策略,并基于该目标引流策略,更新内核组件的内存空间中已存储的引流策略。示例性的,该对象登录信息可以包括但不限于:当前对象的登录账号、登录地址、登录设备信息、登录时间等等,该登录设备信息可以包括设备名称、型号、操作系统类型等信息。

示例性的,该当前对象登录该引流管理应用,该请求设备可以通过控制进程,执行从管理服务器中获取该当前对象对应的目标引流策略;并通过该控制进程拉起代理进程;通过该代理进程,调用内核组件初始化逻辑,以在该请求设备的操作系统中插入预配置的内核组件。其中,该请求设备通过该控制进程,对从管理服务器中获取的目标引流策略进行格式检查和解析处理,通过IPC(Inter-Process Communication,进程间通信)或代理进程的接口,将该目标引流策略推送至应用层代理进程,通过代理进程调用内核组件对外提供的SDK(Software Development Kit,软件开发工具包)接口,将该目标引流策略存储至内核组件对应的内存空间中。当然,也可以基于上述控制进程、代理进程和内核组件协同完成对引流策略的更新过程。例如,当该内核组件对应内存中已存储的引流策略,与通过控制进程最新获取的目标引流策略不相同时,该请求设备将该内核组件对应内存中的引流策略更新为该最新的目标引流策略。通过上述协同过程,在服务端策略发生变化时,内核组件和代理进程均能在短时间内快速完成策略存储、策略更新同步与内存相关数据结构的更新。

需要说明的是,该请求设备后续可通过该代理进程、内核组件、控制进程,实现对访问请求的拦截、鉴权、并引流至目标网关访问目标服务器等过程。

如图3所示,图3为企业管理员在管理服务器中以对象为粒度,配置单个对象所对应的需引流的资源,例如,对于对象1,在业务系统配置中,配置对象1对应的需引流资源为业务系统中所有URL(uniform resource locator,统一资源定位系统),也即是,对象1具备对业务系统中所有资源具备访问权限,对象1发起的对任一资源的URL请求均需被拦截、引流。当然,还可以对该对象1的发起访问的应用进行权限配置,对于具备访问权限的应用配置为可信应用,其中,可信应用是管理服务器授信的、请求设备可访问内部业务系统的应用载体。如图3所示,在可信应用配置中,支持区分Windows系统、mac系统下等不同系统中对可信应用的配置;来自对象1的Windows系统的设备中的任意应用均为可信应用。当然,也可以对应用进行分组,每个分组包括一个或多个可信应用,以为各个对象配置对应的分组。如图4所示,全网账户下可有多个对象,该管理服务器中还可以针对不同对象进行业务系统配置和可信应用配置。

如图5所示,图5提供了一种引流管理应用的页面示意图。如图5所示,引流管理应用提供零信任办公服务,当然,还提供有病毒查杀、合规检测、漏洞修复、电脑工具等其它服务。对于该零信任办公服务,当该当前对象登录该引流管理应用,该请求设备可基于该当前对象的对象登录信息,连接该当前对象对应的公司内网,以便该当前对象使用本申请提供的专用网络访问方法,访问该公司内容的内部网络资源。其中,零信任办公服务的页面还可显示该引流管理应用提供的办公安全实时防护、可信软件配置、合规策略配置、账号登录等功能。如图5所示,当前未配置合规策略,则显示合规策略未配置的标签。例如,在当前页面中显示可信软件已配置页面,并在该可信软件已配置页面中显示配置的可信软件可以包括任意应用。当然,还可以显示所拦截的软件。以便当前对象可清晰的了解对公司内容的访问情况,从而便于当前对象可使用指定的可信应用来访问管理员配置的公司内容的业务系统。

步骤202、请求设备响应于接收到对网络资源的访问请求,确定该访问请求对应的通信链路信息。

该通信链路信息包括源地址和目标地址。该源地址是指发起访问请求的设备,也即是该请求设备的地址。该目标地址是指该访问请求待访问的网络资源所在的网络地址。在一个可能实施方式中,该通信链路信息可以为该访问请求的通信五元组,则该通信链路信息可以包括:源地址、源端口、目标地址、目标端口和协议类型。

在一个可能示例中,该请求设备可以通过预配置的内核组件获取通信链路信息。该内核组件可包括当接收到访问请求时获取该访问请求的通信链路的执行逻辑。该内核组件作为请求设备插入操作系统中的执行逻辑,该请求设备可通过该内核组件,执行该步骤202。

在一种可能实施方式中,该请求设备还可以通过该内核组件,获取访问请求对应的域名和端口、进程信息、发起的应用程序等信息。示例性的,该请求设备还可以通过该内核组件,获取访问请求对应的域名和端口,该访问请求对应的域名和端口是指待访问的网络资源的域名和端口。一示例中,该请求设备还可以通过内核组件,获取访问请求的进程信息;该进程信息是指执行发起该访问请求的进程的信息,该进程信息可以包括但不限于:进程名称,进程路径,进程可执行文件哈希值(例如MD5),版本信息,是否具备指定签名信息以及进程可执行文件的其它属性信息中的一项或多项。一示例中,该请求设备还可以通过内核组件,获取发起该访问请求的应用程序,该应用程序是指当前对象触发该访问请求的程序;例如,当前对象在企业应用中触发对某限制访问的文件的浏览请求,则该企业应用为发起该访问请求的应用程序。该请求设备可通过引流管理应用,执行以下步骤203-204,以实现对该浏览请求的拦截和引流。

步骤203、请求设备响应于基于预配置的目标引流策略确定该网络资源属于引流资源,基于该目标地址和预配置的引流端口,将该访问请求引流至目标网关进行访问目标服务器,并记录该源地址和进程信息之间的关联关系。

其中,该目标网关用于将该访问请求转发至目标服务器、并将目标服务器的响应数据转发至该源地址,该进程信息用于指示执行发起该访问请求的进程。该引流端口用于指示所拦截的访问请求的地址。

本步骤中,该请求设备可基于目标引流策略判断待访问的网络资源是否属于引流资源。如果该网络资源属于引流资源,请求设备则将该访问请求的目标地址修改为引流端口,以拦截该访问请求;该请求设备对该访问请求进行鉴权通过后,通过该目标网关该访问请求发送至目标服务器。在一种可能实施方式中,该步骤203可以包括以下步骤2031-步骤2032。

步骤2031、请求设备基于该目标引流策略,确定该网络资源是否属于引流资源。

该请求设备可基于该访问请求的域名、目标地址、协议类型、进程信息中的至少一项,判断该网络资源是否属于该引流资源。

示例性的,该请求设备可采用域名进行判断。该步骤2031可以包括:该请求设备响应于该访问请求的域名和端口属于引流资源域名和端口,确定该网络资源属于引流资源。例如,该请求设备可通过内核组件,将该访问请求的域名和端口,与内核组件对应内存空间中的引流资源域名和端口进行比较,如果该访问请求的域名和端口属于引流资源域名和端口,确定该网络资源属于引流资源。其中,该请求设备可以仅基于该访问请求的域名和引流资源域名进行比较,如果该访问请求的域名属于引流资源域名,也可确定该网络资源属于引流资源。例如,以该访问请求为DNS(Domain Name System,域名系统)请求为例,内核组件对应的内存中存储有DNS重定向列表,该DNS重定向列表包括需重定向的DNS请求的域名,如果该DNS请求的域名属于该DNS重定向域名列表,则该DNS请求待访问的资源属于引流资源。

示例性的,该请求设备可采用目标地址进行判断。该步骤2031可包括:该请求设备响应于该访问请求的目标地址和目标端口属于引流资源网络地址和端口,确定该网络资源属于引流资源。例如,该请求设备可通过内核组件,将该访问请求的目标地址和目标端口,与内核组件对应内存空间中的引流资源网络地址和端口进行比较,如果该访问请求的目标地址和目标端口属于引流资源网络地址和端口,确定该网络资源属于引流资源。例如,该内核组件对应内存中可存储需引流的IP地址和端口列表;如果目标地址属于该IP地址,或者该目标地址和目标端口属于该IP地址和和端口列表;则网络资源属于引流资源。

示例性的,该请求设备可结合协议类型进行判断。该步骤2031可包括:该请求设备响应于该访问请求的协议类型属于引流资源协议类型,确定该网络资源属于引流资源。例如,该请求设备可通过内核组件,将该访问请求的协议类型,与内核组件对应内存空间中的引流资源协议类型进行比较,如果该访问请求的协议类型属于引流资源网络协议类型,确定该网络资源属于引流资源。

示例性的,该请求设备可结合进程信息进行判断。该步骤2031可包括:该请求设备响应于该访问请求的进程信息符合引流资源进程特征信息,确定该网络资源属于引流资源。例如,该请求设备可通过内核组件,将该访问请求的进程信息,与内核组件对应内存空间中的进程特征信息进行比较,如果该访问请求的进程符合信息属于引流资源进程特征信息,确定该网络资源属于引流资源。例如,访问请求的进程路径为指定的预配置引流进程路径,该访问请求的进程不具备指定的签名信息等,则可确定由该进程发起访问的网络资源属于引流资源。

需要说明的是,该请求设备可以结合域名、网络地址、协议类型或进程信息中的一项或多项进行判断,以结合网络地址和协议类型进行举例。示例性的,内核组件对应内存中目标引流策略可包括引流资源网络地址端口以及协议类型。则该请求设备可通过内核组件,将该访问请求的目标地址和目标端口、以及协议类型,与内核组件对应内存空间中的引流资源网络地址和端口、以及引流资源协议类型进行比较,如果该访问请求的目标地址和目标端口属于引流资源网络地址和端口、且协议类型属于引流资源网络协议类型,确定该网络资源属于引流资源。例如,访问属于企业内容指定IP段、采用TCP协议的访问请求需拦截、引流。

在一种可能实施方式中,该目标引流策略还定义了不被引流的网络资源,该请求设备还可以基于该目标引流策略进行判断的过程,还包括以下四种情况。情况一、请求设备响应于该访问请求的域名和端口属于非引流资源域名和端口,确定该网络资源属于非引流资源。情况二、请求设备响应于该访问请求的进程信息符合非引流资源进程特征信息,确定该网络资源属于非引流资源。例如,该请求设备通过内核组件根据进程标识信息(如进程号pid)获取到进程信息后,与目标引流策略中非引流进程列表进行比对,如果匹配成功,则直接放通该访问请求,不拦截和引流。如果未匹配成功,则继续执行步骤2032以进行下一步处理。情况三、请求设备响应于该访问请求的通信五元组分别与引流资源网络地址和端口、引流资源协议类型或引流资源进程特征信息中的任一项不匹配时,确定该网络资源属于非引流资源。情况四、请求设备响应于该访问请求的目标地址和目标端口属于非引流资源网络地址和端口,确定该网络资源属于非引流资源。

示例性的,如果该网络资源属于非引流资源,该请求设备可基于该通信链路信息发送该访问请求。例如,DNS请求的域名为禁止重定向的域名,则通过核组件直接放通直连处理,不对该DNS请求拦截和引流。例如,对于企业管理员配置的禁止拦截流量的IP列表或IP段,若访问请求的目标地址命中该IP列表或IP段,直接透传该访问请求,不进行拦截和引流。例如,对于访问管理服务器的访问请求,直接透传该访问请求。

当然,该请求设备还可以结合引流资源和非引流资源的特征进行判定。例如,基于目标引流策略中非引流资源的网段列表判定该目标地址是否命中直连的网段列表。如果命中,则直接放通该访问请求,以便该访问请求的直连访问。如果未命中,则结合五元组中的目标地址、目标端口和协议类型这三个信息,基于目标引流策略中需引流资源对应的IP、端口或协议列表中至少一项进行过滤查找。如果满足以下任一情况:情况1、如果目标地址命中需引流资源对应的IP,或者,情况2、如果目标地址、目标端口命中需引流资源对应的IP、端口,又或者,情况3、如果目标地址、目标端口和协议类型命中需引流资源对应的IP、端口和协议列表,则确定该网络资源属于引流资源,需将该访问请求引流至代理进程。如果不能满足上述任一情况,则确定该网络资源属于非引流资源,通过内核组件直接放通处理。

如果网络资源属于引流资源,则请求设备通过执行以下步骤2032,实现对该访问请求进行拦截、鉴权和引流。

在一种可能实施方式中,对于访问请求的域名属于引流资源域名,该请求设备还可以为该访问请求配置虚拟IP地址,因此,在执行以下步骤2032之前,该请求设备执行以下步骤A,步骤A、该请求设备响应于该访问请求的域名和端口属于引流资源域名和端口,将该访问请求的域名重定向为虚拟网络地址,该虚拟网络地址不是该访问请求的域名所对应的真实网络地址。

示例性的,该请求设备通过内核组件确定该访问请求的域名属于引流资源域名时,该请求设备通过代理进程,对该访问请求的域名进行解析,将该访问请求的域名解析为虚拟网络地址。例如,以DNS请求为例,经内核组件判断DNS请求的域名属于重定向域名,则内核组件请求应用层的代理进程进一步判定,经代理进程识别该DNS请求的域名确实属于需引流的域名,如需限制访问的企业域名,通过代理进程,执行对该域名的DNS解析,以为该DNS请求分配虚拟IP。当然,如果该代理进程进一步判定该DNS请求的域名不属于需引流的域名,则通过代理进程直接将该DNS请求转发至上游的DNS服务器执行真正的DNS域名解析过程,以为该DNS请求分配该DNS请求的域名所对应的真实网络地址。

步骤2032、请求设备响应于该网络资源属于引流资源,基于该目标地址和预配置的引流端口,将该访问请求引流至目标网关进行访问目标服务器。

该引流端口指示用于承载所拦截的访问请求的地址。

在一种可能实施方式中,该请求设备可利用该引流端口对该访问请求进行拦截处理,并对拦截到的访问请求的请求数据进行鉴权、引流至目标网关。示例性的,该步骤2032可包括:该请求设备响应于基于该目标引流策略确定该网络资源属于引流资源,在网络层将该访问请求的目标地址修改为该引流端口,并调用该访问请求的协议类型所对应的回调处理函数,以执行将拦截至该引流端口的访问经鉴权后、通过该目标网关发送至该目标服务器。示例性的,该请求设备可通过内核组件,在网络层将该目标地址修改为该代理进程的引流端口;该请求设备通过该代理进程,拦截到发送至引流端口的访问请求;并通过该内核组件,调用该访问请求的协议类型所对应的回调处理函数,以完成该回调处理函数对应的执行过程。

示例性的,该引流端口是通过代理进程进行检测的端口,在请求设备执行步骤2032之前,也即是基于该目标地址和预配置的引流端口,将该访问请求引流至目标网关进行访问目标服务器之前,该请求设备先通过预配置的代理进程,开启对该引流端口的数据检测。例如,代理进程可开启本地配置的回环网卡上的指定端口作为引流端口,以检测该引流端口接收的数据。因此,当该请求设备在网络层将该访问请求的目标地址修改为该引流端口时,该请求设备可通过代理进程,检测到发送至该引流端口的访问请求,从而得到该访问请求的请求数据。

示例性的,该回调处理函数用于执行对该访问请求进行鉴权、并基于对应协议类型的传输方式将该访问请求发送至目标服务器。协议类型的传输方式包括但不限于:TCP协议的传输方式、UDP协议的传输方式等。

对于鉴权过程,该请求设备可通过代理进程,将该访问请求的进程信息、修改之前的目标地址和目标端口、源地址和源端口、协议类型、发起访问请求的应用程序、以及对象登录信息等其中的一项或多项,通过进程间通信的方式发送至控制进程。该请求设备通过控制进程,基于该代理进程所发送的信息,对该访问请求进行鉴权;例如,该鉴权过程可以包括以下至少一项验证操作:验证发起访问请求的应用程序是否为可信应用,验证该目标地址和目标端口是否为指定站点,验证该访问请求是否为合规请求,验证该访问请求的进程是否为合规进程,验证该访问请求的设备环境是否安全,验证该当前对象是否具备对该目标地址和目标端口的资源的访问权限等。如果鉴权通过,该请求设备通过该控制进程,向管理服务器发送凭证申请请求;其中,该凭证申请请求用于向该管理服务器申请网关访问凭证;该凭证申请请求可携带用于鉴权的鉴权信息,该鉴权信息可包括该代理进程发送给控制进程的至少一项信息。该管理服务器可基于该凭证申请请求所携带的鉴权信息,对该访问请求进行鉴权,当该管理服务器鉴权通过后,该管理服务器向该请求设备发送网关访问凭证。该请求设备接收该网关访问凭证,并通过控制进程将该网关访问凭证传入代理进程;该请求设备通过该代理进程,向该目标网关发送该网关访问凭证。该目标网关可将该网关访问凭证发送至目标服务器进行进一步鉴权,该目标网关基于目标服务器返回的鉴权通过消息,向请求设备发送鉴权通过消息。该请求设备将该访问请求发送至目标网关。最终通过目标网关,将该访问请求发送至目标服务器。

在一种可能实施方式中,该请求设备可通过代理进程,在内核组件中传入回调处理函数的地址,以使通过内核组件调用该回调处理函数。因此,在调用该访问请求的协议类型所对应的回调处理函数之前,该请求设备可以执行以下步骤B,步骤B、该请求设备通过预配置的代理进程,将至少一种协议类型所对应的函数入口地址传入预配置的内核组件。相应的,步骤2032的实现方式可以包括:该请求设备可通过该内核组件,在网络层将该目标地址修改为该代理进程的引流端口;并通过该内核组件,基于该代理进程所传入的函数入口地址,调用该协议类型所对应的回调处理函数,以执行将拦截至该引流端口的访问请求经鉴权后、通过该目标网关发送至该目标服务器。

示例性的,该代理进程对应内存空间中存储有至少一项协议类型所对应的函数入口地址,例如,TCP回调处理函数的函数入口地址、UDP回调处理函数的函数入口地址。例如,通过代理进程直接读写内核驱动句柄操作,以调用该内核组件的SDK接口;并通过代理进程,将TCP回调处理函数的函数入口地址、UDP回调处理函数的函数入口地址传入该内核组件的SDK接口,以使内核组件基于所传入的函数入口地址调用对应的回调处理函数。

示例性的,该目标网关为网关服务地址和网关之间的关联关系中,与该目标地址对应的网关。例如,企业管理员可在管理服务器中配置网关服务地址和网关之间的关联关系,该网关服务地址可以包括提供引流资源的服务器的地址。则该请求设备可基于该网关服务地址和网关之间的关联关系,将该目标地址对应的网关作为该目标网关。

如图6所示,企业管理员在管理服务器中配置引流策略后,还可针对各个业务系统配置对应的可访问网关,例如,不同的网关对不同的业务地址提供网关服务。例如,网关A对应服务的地址可以为“9.134.65.163:9443”;当然,企业管理员配置多个网关后,企业管理员还可配置各个网关的访问顺序,如,定义各个网关的排序,以使各个智能网关基于该排序被访问。

步骤2033、请求设备记录该源地址和进程信息之间的关联关系。

本步骤中,由于该请求设备通过预配置的代理进程,开启对该引流端口的数据检测;因此,当该请求设备通过代理进程检测到该引流端口的访问请求时,该请求设备记录该访问请求的源地址和进程信息之间的关联关系。

在一种可能实施方式中,该通信链路信息还包括源端口,该请求设备可采用键值对的方式对应存储该源地址和进程信息。相应的,本步骤的实施方式可包括:该请求设备响应于检测到该引流端口所拦截的该访问请求,通过该代理进程,以该访问请求的源地址和源端口为键、以该进程信息为值,对应存储源地址、源端口和进程信息之间的关联关系。

示例性的,该代理进程可通过引流端口检测到发送至该引流端口的访问请求,将该访问请求的通信五元组中的源地址(LocalAddr)和源端口(LocalPort)作为key(键)。该请求设备可通过内核组件,向该代理进程上报该访问请求的进程信息;该请求设备通过该代理进程,将进程信息作为value(值),从而在代理进程对应的内存空间中构造key-value形式的映射表结构。示例性的,该进程信息可包括进程ID(例如进程ID可以是进程号pid)、进程名、进程全路径等信息;当然,也可以包括进程可执行文件哈希值(例如MD5)、版本信息、是否具备指定签名信息以及进程可执行文件的其它属性信息等中的一项或多项;本申请对该进程信息的具体包括内容不做限制,本段仅以进程ID、进程名、进程全路径等进行举例说明。一可能示例中,该请求设备还可通过内核组件,向该代理进程上报该访问请求的流量ID、通信五元组等详细信息。因此,该请求设备还可以通过该代理进程,将通信五元组中的源地址和源端口作为key,将进程信息、通信五元组作为value(值),构造源地址和源端口、与进程信息、通信五元组之间的对应关系。又例如,还可以将通信五元组中的源地址和源端口作为key,将流量ID、进程信息、通信五元组作为value(值),构造源地址和源端口、与流量ID、进程信息、通信五元组之间的对应关系。例如,该请求设备通过代理进程接收到的由该内核组件上报的详细信息可包括以下至少一项:

/>

需要说明的是,步骤2032和步骤2033可同步执行,当然,也可先后执行,步骤2032和步骤2033的序号大小并不限制两个步骤之间的先后执行顺序。

步骤204、请求设备接收该目标服务器经目标网关返回的响应数据,并基于该响应数据、以及该源地址和进程信息之间的关联关系,显示该访问请求对应的响应页面。

该请求设备接收该响应数据,并基于该源地址和进程信息之间的关联关系,确定该响应数据对应的应用程序,基于该响应数据,显示该应用程序中对访问请求进行响应的响应页面。其中,该响应数据对应的应用程序是指发起该响应数据所对应的访问请求的应用程序。该请求设备可基于该进程信息,确定该响应数据所对应的应用程序;例如,该进程信息可包括发起访问请求的应用程序的应用ID。例如,当前对象在企业应用中发起对指定文件进行浏览的请求,该请求设备接收到企业的业务服务器返回的文件数据,基于该关联关系,定位文件数据对应的企业应用,并在企业应用的页面中展示该文件数据。

在一种可能实施方式中,该关联关系包括以源地址和源端口为键、以该进程信息为值的对应关系;则步骤204的实施方式可包括:该请求设备确定接收该响应数据的接收地址和接收端口;该请求设备以该接收地址和接收端口为键,从以源地址和源端口为键、以该进程信息为值的对应关系中,确定该接收地址和接收端口对应的进程信息;该请求设备基于该接收地址和接收端口对应的进程信息,将该响应数据回传至发起该访问请求的应用程序,并基于该响应数据在该应用程序中显示该响应页面。其中,该响应数据的接收地址和接收端口,是指接收该响应数据的地址和端口。该响应数据的接收地址和接收端口,即为该响应数据所对应的访问请求的源地址和源端口。其中,在golang语言中,可以使用net.TCPConn获取TCP通信对端的IP和端口;可使用net.UDPConn获取UDP通信对端的IP和端口,也即是接收地址和接收端口。

示例性的,回调处理函数还用于执行确定响应数据所对应的进程信息。则该请求设备响应于接收到响应数据时,该请求设备调用该回调处理函数,以基于该响应数据的接收地址和接收端口,确定该响应数据对应的进程信息。例如,该请求设备可通过代理进程,获取该响应数据的接收地址和接收端口,并通过读写内核驱动句柄操作,将该接收地址和接收端口以及响应数据传入内核组件,通过该内核组件基于该代理进程传入的数据执行该回调处理函数,以从代理进程维护的以源地址和源端口为键、以该进程信息为值的对应关系中,确定该响应数据对应的进程信息,并将该响应数据回传至应用程序,以便在该应用程序中显示该响应页面。

在一种可能实施方式中,在接收该目标服务器经目标网关返回的响应数据之后,该接收该目标服务器经目标网关返回的响应数据之后,该请求设备可基于访问请求的发送与响应过程,对上述访问过程所涉及的资源进行释放。例如,释放所占用的源端口。一可能示例中,如果该目标服务器和请求设备之间的通信连接为短连接;则该请求设备可在该发起该访问请求的进程中释放该源端口,并删除该以源地址和源端口为键、以该进程信息为值的对应关系。例如,如果该目标服务器和请求设备之间建立短连接,则该请求设备接收到响应数据,该目标服务器和请求设备之间本次访问即结束,该请求设备可释放本次访问占用的源端口。另一可能示例中,如果该目标服务器和请求设备之间的通信连接为长连接;则该请求设备可在该进程中保持该源端口,直至该目标服务器和终端设备之间通信连接达到长连接结束条件,在该进程中释放该源端口,并删除该以源地址和源端口为键、以该进程信息为值的对应关系。其中,该长连接结束条件可以包括但不限于:通信时长超过长连接时长阈值、接收到触发长连接结束的触发操作等。例如,当前对象观看企业内网中视频资源时,请求设备和目标服务器之间可建立长连接,当长连接时长超过阈值、或者当前对象触发关闭观看视频的操作时,该请求设备释放该源端口。

需要说明的是,通过在短连接或长连接情况时,适时释放源端口,以保证同一时间一个源端口只对应唯一的访问请求,进而保证基于访问请求发起的访问和响应之间准确的一一对应,保证访问的准确性。

图7提供了一种访问专用我拿过来的框架结构简图。如图7所示,该引流管理应用作为零信任网络安全服务的提供方,请求设备作为发起访问请求的访问主体,专用网络的资源服务器作为被访问的访问客体,零信任代理和访问网关为访问主体和访问客体之间提供统一入口,实现上述步骤201至步骤204的整个访问过程。

图8提供了一种专用网络访问的框架结构示意图,如图8所示,该框架中包括请求设备、管理服务器、智能网关以及业务服务器。该框架中各个设备之间通过交互以实现对该专用网络的访问过程,具体包括:

步骤①、请求设备通过代理进程proxy拦截到需引流的访问请求,获取该访问请求的URL、进程pid(进程号)、通信五元组、域名等信息。

步骤②、请求设备可通过代理进程,向引流管理应用请求票据。该票据可包括登录该引流管理应用的凭证票据、访问网络资源的凭证票据等。

步骤③、请求设备通过该引流管理应用获取发起该访问请求的应用程序的信息、发起该访问请求的进程特征等信息。

步骤④、请求设备向管理服务器发送票据置换请求,该票据置换请求用于基于票据置换对专用网络的访问权限。

步骤⑤、请求设备将基于步骤③所获取的信息,发送至管理服务器,以实现进程送检。该管理服务器配置有策略中心、送检服务、票据中心等。其中,该送检服务可用于基于请求设备发送的信息检验是否具备访问权限。该策略中心用于对引流策略的管理,如配置各个对象的引流策略;该票据中心用于管理票据,如票据置换。

步骤⑥、请求设备经管理服务器鉴权通过后,向代理进程返回票据响应。

步骤⑦、请求设备通过代理进程,将该票据以及访问请求转发至智能网关。

步骤⑧、该智能网关基于该票据,向管理服务器发送票据校验请求。

步骤⑨、该智能网关接收管理服务器返回的校验结果。

步骤⑩、如果该校验结果指示具备访问权限,请智能网关验证并将该访问请求转发至对应的业务服务器。

步骤

步骤

步骤

本申请提供的数据处理方法,通过确定访问请求对应的通信链路信息,当该网络资源属于引流资源时,基于该目标地址和预配置的引流端口,将该访问请求引流至目标网关进行访问目标服务器,而通过目标网关可将该访问请求转发至目标服务器,从而将对需引流的资源的访问自动引流至对应网关进行访问;通过记录该源地址、与发起该访问请求的进程的进程信息之间的关联关系,以便于在接收目标服务器返回的响应数据时,基于该源地址和进程信息之间的关联关系,显示该访问请求对应的响应页面,从而保证该访问请求发起的整个访问过程准确执行,且无需安装虚拟网卡、需要修改系统路由表等操作,有效解决了相关技术中实用性差的问题,提高了对专用网络的访问过程的准确性和实用性。

并且,本申请不需要安装虚拟网卡,不需要修改系统路由表、本地DNS配置等风险性冲突操作,整个访问过程因此可以避免相关技术中存在的难以解决的兼容性问题。

并且,本申请通过在驱动层提供精简的内核组件且与应用层代理进程、控制进程进行交互,实现对专用网络的访问,通过代理进程、内核组件、控制进程之间的进程通信,将不需要引流的流量由系统原路径输出,需要引流的流量则通过代理进程自动进入回调处理函数进行处理;即可保证整个访问过程被准确执行。在稳定性和兼容性方面,对系统没有全局性的配置,从而较大的提升了系统稳定性和兼容性。

并且,在性能提升方面,没有额外的其它资源初始化过程,通过本申请的数据处理方法,引流驱动瞬间启动并工作,可实现对访问请求的迅速引流、访问并返回响应数据,提高了访问效率。并且,通过本申请的方法,基于目标引流策略对需要引流的资源进行精准引流后,策略外的业务走系统原有出口,不受引流的影响,总而言之,本申请在稳定性、兼容性、性能等方面均有较大提升。

图9是本申请提供的一种数据处理方法的信令交互示意图,如图9所示,该方法由请求设备、管理服务器、目标网关、目标服务器之间交互实现。该信息交互过程包括以下步骤。

步骤901、请求设备向管理服务器发送登录请求。

该登录请求用于请求登录引流管理应用,该登录请求可携带当前对象的对象登录信息。请求设备可基于当前对象的触发操作,启动并运行该引流管理应用;该请求设备可显示该引流管理应用的登录页面,当前对象可在该登录页面中输入登录名、登录密钥等信息,请求设备基于对象登录信息向管理设备发送登录请求。

步骤902、管理服务器基于该登录请求,向请求设备返回目标引流策略。

该管理服务器可基于该对象登录信息,确定该当前对象所对应的目标引流策略。

步骤903、请求设备接收该目标引流策略。

其中,步骤903的实施方式,为与步骤201的方式同理的过程,此处不再一一赘述。

步骤904、请求设备响应于接收到对网络资源的访问请求,确定该访问请求对应的通信链路信息。

例如,该访问请求可以是针对专用网络的访问请求,例如,对于远程办公场景,当前对象可通过该引流管理应用连接企业内网,并发起针对企业内网中网络资源进行访问的访问请求。例如,在企业应用中发起浏览企业内网中的文件的浏览请求;观看企业内网中的视频的观看请求等。

该通信链路信息包括源地址和目标地址;其中,步骤904的实施方式,为与步骤202的方式同理的过程,此处不再一一赘述。

步骤905、请求设备基于目标引流策略确定该网络资源是否属于引流资源。

例如,该引流资源可以认为是企业内网中需限制访问的网络资源。

步骤906、如果该网络资源属于引流资源,请求设备将该访问请求的目标地址修改为引流端口,以将访问请求拦截至该引流端口,并记录该源地址和进程信息之间的关联关系。

该目标网关用于将该访问请求转发至目标服务器、并将目标服务器的响应数据转发至该源地址,该进程信息用于指示执行发起该访问请求的进程。

步骤907、请求设备将拦截至引流端口的访问请求经鉴权后,发送至目标网关。

例如,该目标网关可以是为企业内网服务器提供服务的网关,例如,可提供对每个访问企业资源的访问请求的验证、授权和转发等。

其中,步骤905-907的实施方式,为与步骤203的方式同理的过程,此处不再一一赘述。

其中,该鉴权过程与上述步骤2032中涉及的鉴权过程同理,已采用图8对应的步骤流程举例说明,此处不再一一赘述。

步骤908、目标网关将该访问请求发送至该目标服务器。

例如,该目标服务器可以为企业内网中的服务器,用于提供企业内网中的目标资源。

步骤909、目标服务器基于该访问请求,向目标网关返回对应的响应数据。

例如,该响应数据可以是浏览请求所对应的文件数据;或者,也可以时观看请求所对应的视频数据流、音频数据流等。

步骤910、目标网关接收该响应数据,并将该响应数据发送至请求设备。

步骤911、请求设备接收该目标服务器经目标网关返回的响应数据;基于该响应数据、以及该源地址和进程信息之间的关联关系,显示该访问请求对应的响应页面。

例如,该请求设备可基于该文件数据,在企业应用的文件展示页面中显示待浏览的文件,或者,在文件下载页面中显示对该文件的下载入口、以便当前对象下载该文件。例如,该请求设备可基于视频数据流、音频数据流,在企业应用的视频播放页面中播放该视频,或者,也可在视频下载中显示对该视频的下载入口、以便当前对象下载该视频。

其中,步骤911的实施方式,为与步骤204的方式同理的过程,此处不再一一赘述。

本申请提供的数据处理方法,涉及以下的云安全、云计算技术等。示例性的,本申请中可以利用云安全技术实现对访问请求进行鉴权、将访问请求引流至目标网关以访问目标服务器等过程,以保证针对引流资源的访问过程中各个环节的安全性。

应理解的是,云安全(Cloud Security)是指基于云计算商业模式应用的安全软件、硬件、对象、机构、安全云平台的总称。云安全主要研究方向包括:1、云计算安全,主要研究如何保障云自身及云上各种应用的安全,包括云计算机系统安全、对象数据的安全存储与隔离、对象接入认证、信息传输安全、网络攻击防护、合规审计等;2、安全基础设施的云化,主要研究如何采用云计算新建与整合安全基础设施资源,优化安全防护机制,包括通过云计算技术构建超大规模安全事件、信息采集与处理平台,实现对海量信息的采集与关联分析,提升全网安全事件把控能力及风险控制能力;3、云安全服务,主要研究各种基于云计算平台为对象提供的安全服务,如防病毒服务等。

应理解的是,云计算(Cloud Computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。

图10为本申请实施例提供的一种数据处理装置的结构示意图。如图10所示,该装置包括:

通信链路确定模块1001,用于响应于接收到对网络资源的访问请求,确定该访问请求对应的通信链路信息,该通信链路信息包括源地址和目标地址;

引流模块1002,用于响应于基于预配置的目标引流策略确定该网络资源属于引流资源,基于该目标地址和预配置的引流端口,将该访问请求引流至目标网关进行访问目标服务器,并记录该源地址和进程信息之间的关联关系;

其中,该目标网关用于将该访问请求转发至目标服务器、并将目标服务器的响应数据转发至该源地址,该进程信息用于指示执行发起该访问请求的进程;

接收模块1003,用于接收该目标服务器经目标网关返回的响应数据;

显示模块1004,用于基于该响应数据、以及该源地址和进程信息之间的关联关系,显示该访问请求对应的响应页面。

在一个可能实现方式中,该引流端口指示用于承载所拦截的访问请求的地址;

该引流模块1002,用于响应于基于该目标引流策略确定该网络资源属于引流资源,在网络层将该访问请求的目标地址修改为该引流端口,并调用该访问请求的协议类型所对应的回调处理函数,以执行将拦截至该引流端口的访问请求经鉴权后、通过该目标网关发送至该目标服务器;

其中,该回调处理函数用于执行对该访问请求进行鉴权、并基于对应协议类型的传输方式将该访问请求发送至目标服务器。

在一个可能实现方式中,该装置还包括:

传入模块,用于通过预配置的代理进程,将至少一种协议类型所对应的函数入口地址传入预配置的内核组件;

该引流模块1002,用于:

通过该内核组件,在网络层将该目标地址修改为该代理进程的引流端口;

通过该内核组件,基于该代理进程所传入的函数入口地址,调用该协议类型所对应的回调处理函数,以执行将拦截至该引流端口的访问请求经鉴权后、通过该目标网关发送至该目标服务器;

其中,该目标网关为网关服务地址和网关之间的关联关系中,与该目标地址对应的网关。

在一个可能实现方式中,该装置还包括:

通过预配置的代理进程,开启对该引流端口的数据检测;

该引流模块1002,用于响应于检测到该引流端口所拦截的该访问请求,通过该代理进程,以该访问请求的源地址和源端口为键、以该进程信息为值,对应存储源地址、源端口和进程信息之间的关联关系,该通信链路信息还包括源端口。

在一个可能实现方式中,该通信链路信息还包括源端口,该关联关系包括以源地址和源端口为键、以该进程信息为值的对应关系;

该显示模块1004,用于确定接收该响应数据的接收地址和接收端口;以该接收地址和接收端口为键,从以源地址和源端口为键、以该进程信息为值的对应关系中,确定该接收地址和接收端口对应的进程信息;基于该接收地址和接收端口对应的进程信息,将该响应数据回传至发起该访问请求的应用程序,并基于该响应数据在该应用程序中显示该响应页面。

在一个可能实现方式中,该装置还包括以下任一项:

短连接释放模块,用于在该发起该访问请求的进程中释放该源端口,并删除该以源地址和源端口为键、以该进程信息为值的对应关系,该目标服务器和请求设备之间的通信连接为短连接;

长连接释放模块,用于在该进程中保持该源端口,直至该目标服务器和终端设备之间通信连接达到长连接结束条件,在该进程中释放该源端口,并删除该以源地址和源端口为键、以该进程信息为值的对应关系,该目标服务器和请求设备之间的通信连接为长连接。

在一个可能实现方式中,该装置还包括获取模块,该获取模块在获取该目标引流策略时,用于响应于当前对象登录引流管理应用时,基于该当前对象的对象登录信息,从该引流管理应用的管理服务器中获取该当前对象所对应的目标引流策略;将该目标引流策略存储至预配置的内核组件对应的内存空间中。

在一个可能实现方式中,该目标引流策略包括:预配置的引流资源域名和端口、引流资源网络地址和端口、引流资源协议类型、引流资源进程特征信息、非引流资源域名和端口、非引流资源网络地址和端口、非引流资源协议类型或非引流资源进程特征信息中的至少一项。

在一个可能实现方式中,该非引流资源域名和端口包括该管理服务器所绑定的域名和端口;

该引流资源域名和端口包括目标网络的私网中的资源服务器绑定的域名和端口,该非引流资源域名和端口包括目标网络的公网中的资源服务器绑定的域名和端口。

在一个可能实现方式中,该引流模块1002,还用于以下至少一项:

响应于该访问请求的域名和端口属于引流资源域名和端口,确定该网络资源属于引流资源;

响应于该访问请求的目标地址和目标端口属于引流资源网络地址和端口,确定该网络资源属于引流资源;

响应于该访问请求的协议类型属于引流资源协议类型,确定该网络资源属于引流资源;

响应于该访问请求的进程信息符合引流资源进程特征信息,确定该网络资源属于引流资源。

在一个可能实现方式中,该装置还包括:

重定向模块,用于响应于该访问请求的域名和端口属于引流资源域名和端口,将该访问请求的域名重定向为虚拟网络地址,该虚拟网络地址不是该访问请求的域名所对应的真实网络地址。

在一个可能实现方式中,该装置还包括非引流资源发送模块,该非引流资源发送模块,用于:

响应于该访问请求的域名和端口属于非引流资源域名和端口,基于该通信链路信息发送该访问请求;

响应于该进程信息符合非引流资源进程特征信息,基于该通信链路信息发送该访问请求;

响应于该访问请求的通信五元组分别与引流资源网络地址和端口、引流资源协议类型或引流资源进程特征信息中的任一项不匹配时,基于该通信链路信息发送该访问请求。

本申请提供的数据处理装置,通过确定访问请求对应的通信链路信息,当该网络资源属于引流资源时,基于该目标地址和预配置的引流端口,将该访问请求引流至目标网关进行访问目标服务器,而通过目标网关可将该访问请求转发至目标服务器,从而将对需引流的资源的访问自动引流至对应网关进行访问;通过记录该源地址、与发起该访问请求的进程的进程信息之间的关联关系,以便于在接收目标服务器返回的响应数据时,基于该源地址和进程信息之间的关联关系,显示该访问请求对应的响应页面,从而保证该访问请求发起的整个访问过程准确执行,且无需安装虚拟网卡、需要修改系统路由表等操作,有效解决了相关技术中实用性差的问题,提高了对专用网络的访问过程的准确性和实用性。

并且,本申请不需要安装虚拟网卡,不需要修改系统路由表、本地DNS配置等风险性冲突操作,整个访问过程因此可以避免相关技术中存在的难以解决的兼容性问题。

并且,本申请通过在驱动层提供精简的内核组件且与应用层代理进程、控制进程进行交互,实现对专用网络的访问,通过代理进程、内核组件、控制进程之间的进程通信,将不需要引流的流量由系统原路径输出,需要引流的流量则通过代理进程自动进入回调处理函数进行处理;即可保证整个访问过程被准确执行。在稳定性和兼容性方面,对系统没有全局性的配置,从而较大的提升了系统稳定性和兼容性。

并且,在性能提升方面,没有额外的其它资源初始化过程,通过本申请的数据处理方法,引流驱动瞬间启动并工作,可实现对访问请求的迅速引流、访问并返回响应数据,提高了访问效率。并且,通过本申请的方法,基于目标引流策略对需要引流的资源进行精准引流后,策略外的业务走系统原有出口,不受引流的影响,总而言之,本申请在稳定性、兼容性、性能等方面均有较大提升。

本申请实施例的装置可执行本申请实施例所提供的方法,其实现原理相类似,本申请各实施例的装置中的各模块所执行的动作是与本申请各实施例的方法中的步骤相对应的,对于装置的各模块的详细功能描述具体可以参见前文中所示的对应方法中的描述,此处不再赘述。

图11是本申请实施例中提供了一种计算机设备的结构示意图。如图11所示,该计算机设备包括:存储器、处理器及存储在存储器上的计算机程序,该处理器执行上述计算机程序以实现数据处理方法的步骤,与相关技术相比可实现:

本申请提供的数据处理方法,通过确定访问请求对应的通信链路信息,当该网络资源属于引流资源时,基于所述目标地址和预配置的引流端口,将所述访问请求引流至目标网关进行访问目标服务器,而通过目标网关可将所述访问请求转发至目标服务器,从而将对需引流的资源的访问自动引流至对应网关进行访问;通过记录所述源地址、与发起该访问请求的进程的进程信息之间的关联关系,以便于在接收目标服务器返回的响应数据时,基于该源地址和进程信息之间的关联关系,显示所述访问请求对应的响应页面,从而保证该访问请求发起的整个访问过程准确执行,且无需安装虚拟网卡、需要修改系统路由表等操作,有效解决了相关技术中实用性差的问题,提高了对专用网络的访问过程的准确性和实用性。

并且,本申请不需要安装虚拟网卡,不需要修改系统路由表、本地DNS配置等风险性冲突操作,整个访问过程因此可以避免相关技术中存在的难以解决的兼容性问题。

并且,本申请通过在驱动层提供精简的内核组件且与应用层代理进程、控制进程进行交互,实现对专用网络的访问,通过代理进程、内核组件、控制进程之间的进程通信,将不需要引流的流量由系统原路径输出,需要引流的流量则通过代理进程自动进入回调处理函数进行处理;即可保证整个访问过程被准确执行。在稳定性和兼容性方面,对系统没有全局性的配置,从而较大的提升了系统稳定性和兼容性。

并且,在性能提升方面,没有额外的其它资源初始化过程,通过本申请的数据处理方法,引流驱动瞬间启动并工作,可实现对访问请求的迅速引流、访问并返回响应数据,提高了访问效率。并且,通过本申请的方法,基于目标引流策略对需要引流的资源进行精准引流后,策略外的业务走系统原有出口,不受引流的影响,总而言之,本申请在稳定性、兼容性、性能等方面均有较大提升。

在一个可选实施例中提供了一种计算机设备,如图11所示,图11所示的计算机设备1100包括:处理器1101和存储器1103。其中,处理器1101和存储器1103相连,如通过总线1102相连。可选地,计算机设备1100还可以包括收发器1104,收发器1104可以用于该计算机设备与其他计算机设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器1104不限于一个,该计算机设备1100的结构并不构成对本申请实施例的限定。

处理器1101可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器1101也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。

总线1102可包括一通路,在上述组件之间传送信息。总线1102可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线1102可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

存储器1103可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscReadOnly Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质其他磁存储设备、或者能够用于携带或存储计算机程序并能够由计算机读取的任何其他介质,在此不做限定。

存储器1103用于存储执行本申请实施例的计算机程序,并由处理器1101来控制执行。处理器1101用于执行存储器1103中存储的计算机程序,以实现前述方法实施例所示的步骤。

其中,电子设备包括但不限于:服务器、终端或云计算中心设备等。

本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。

本申请实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“该”和“该”也可包括复数形式。本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作等。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”、“1”、“2”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除图示或文字描述以外的顺序实施。

应该理解的是,虽然本申请实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本申请实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本申请实施例对此不限制。

以上所述仅是本申请部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的方案技术构思的前提下,采用基于本申请技术思想的其他类似实施手段,同样属于本申请实施例的保护范畴。

相关技术
  • 数据处理方法、装置、计算机设备及计算机可读存储介质
  • 数据仓库内数据处理方法、装置、计算机设备和存储介质
  • 一种数据处理方法、数据处理装置、计算机设备及可读存储介质
  • 应用程序处理方法和装置、电子设备、计算机可读存储介质
  • 图像处理方法和装置、电子设备、存储介质、程序产品
  • 数据处理方法、装置、设备、计算机存储介质及计算机程序产品
  • 数据处理方法、数据传输方法、数据接收方法、设备、代码本、计算机程序产品以及计算机程序分发介质
技术分类

06120116485944