一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

零信任网络的访问处理方法、装置、电子设备及存储介质与流程

2022-10-15 13:16:54 来源:中国专利 TAG:


1.本技术涉及互联网技术领域,尤其涉及一种零信任网络的访问处理方法、装置、电子设备及计算机可读存储介质。


背景技术:

2.零信任网络通过在访问主体(即用户区)与访问客体(即企业数据区)之间建立安全访问控制,构建了以“身份”为逻辑边界的安全防护体系,即只有可信的主体(例如合法设备、合法用户)才能访问客体(例如应用系统、数据以及服务接口等),从而提高了网络的安全风险感知能力。
3.然而,相关技术提供的零信任网络访问架构中,可信应用都需要通过代理访问的方式访问可达区域中的任意站点,这种单一化的访问方式无法适应应用程序所处的复杂的网络环境。


技术实现要素:

4.本技术实施例提供一种零信任网络的访问处理方法、装置、电子设备及计算机可读存储介质,能够通过零信任网络向应用程序提供灵活的访问模式。
5.本技术实施例的技术方案是这样实现的:
6.本技术实施例提供一种零信任网络的访问处理方法,包括:
7.接收应用程序发送的访问请求;
8.从所述访问请求中获取所述应用程序需要访问的业务站点的地址;
9.基于所述应用程序的标识和所述业务站点的地址,查询零信任网络的访问控制策略,得到所述应用程序访问所述业务站点的访问模式;
10.基于所述访问模式和所述零信任网络建立所述应用程序与所述业务站点之间的通信连接;
11.通过所述通信连接向所述业务站点发送所述访问请求,并通过所述通信连接向所述应用程序发送所述业务站点的访问请求响应。
12.上述方案中,当接收应用程序发送的访问请求时,所述方法还包括:通过以下方式获取所述业务站点的域名:将所述访问请求对应的ip地址与访问控制策略包括的虚拟ip配置名单进行匹配;当所述虚拟ip配置名单中存在所述ip地址时,基于所述ip地址查询虚拟ip地址与域名之间的映射名单,得到所述业务站点的域名;当所述虚拟ip配置名单中不存在所述ip地址时,基于所述ip地址查询系统原生ip地址与域名之间的映射名单,得到所述业务站点的域名。
13.上述方案中,当所述访问模式为代理访问时,所述基于所述访问模式和所述零信任网络建立所述应用程序与所述业务站点之间的通信连接,包括:获取所述访问请求的凭证;将所述凭证通过零信任网络网关转发至零信任网络服务器,以使所述零信任网络服务器对所述凭证进行校验,得到校验结果;当所述校验结果表征所述凭证校验成功时,通过所
述零信任网络网关向所述业务站点发送所述凭证和所述访问请求,以建立所述应用程序与所述业务站点之间、并经由所述零信任网络网关进行代理访问的通信连接;当所述校验结果表征所述凭证校验失败时,通过所述零信任网络网关将所述访问请求转发到所述业务站点,以建立所述应用程序与所述业务站点之间的直连的通信连接。
14.上述方案中,所述接收应用程序发送的访问请求,包括:通过零信任网络代理端运行的虚拟网卡,劫持所述应用程序发送的所述访问请求;所述获取所述访问请求的凭证,包括:通过所述零信任网络客户端提取所述访问请求的请求参数,基于所述请求参数向所述零信任网络服务器发送凭证请求,并接收所述零信任网络服务器返回的所述凭证。
15.上述方案中,所述请求参数包括:所述应用程序的地址和端口、所述业务站点的地址和端口、所述应用程序的标识;所述基于所述请求参数向所述零信任网络服务器发送凭证请求,并接收所述零信任网络服务器返回的所述凭证,包括:通过所述零信任网络代理端向所述零信任网络客户端发送所述请求参数,以使所述零信任网络客户端基于所述请求参数中的所述应用程序的标识,获取所述应用的特征信息;通过所述零信任网络客户端向所述零信任网络服务器发送凭证请求,其中,所述凭证请求携带所述应用程序的地址和端口、所述业务站点的地址和端口、以及所述特征信息,以使所述零信任网络服务器进行鉴权处理,并在鉴权通过时向所述零信任网络客户端返回所述凭证。
16.上述方案中,当所述访问模式为直连访问时,所述基于所述访问模式和所述零信任网络建立所述应用程序与所述业务站点之间的通信连接,包括:通过零信任网络客户端获取所述访问请求的凭证,并经由零信任网络网关将所述凭证转发至零信任网络服务器,以使所述零信任网络服务器对所述凭证进行校验,得到校验结果;当所述校验结果表征所述凭证校验成功时,通过所述零信任网络网关向所述业务站点转发所述凭证和所述网络请求,以建立所述应用程序与所述业务站点之间的直连的通信连接。
17.本技术实施例提供一种零信任网络的访问处理装置,包括:
18.接收模块,用于接收应用程序发送的访问请求;
19.获取模块,用于从所述访问请求中获取所述应用程序需要访问的业务站点的地址;
20.查询模块,用于基于所述应用程序的标识和所述业务站点的地址,查询零信任网络的访问控制策略,得到所述应用程序访问所述业务站点的访问模式;
21.建立模块,用于基于所述访问模式和所述零信任网络建立所述应用程序与所述业务站点之间的通信连接;
22.发送模块,用于通过所述通信连接向所述业务站点发送所述访问请求,并通过所述通信连接向所述应用程序发送所述业务站点的访问请求响应。
23.本技术实施例提供一种电子设备,包括:
24.存储器,用于存储可执行指令;
25.处理器,用于执行所述存储器中存储的可执行指令时,实现本技术实施例提供的零信任网络的访问处理方法。
26.本技术实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本技术实施例提供的零信任网络的访问处理方法。
27.本技术实施例具有以下有益效果:
28.通过应用程序的标识和业务站点的地址,查询零信任网络的访问控制策略,以得到应用程序访问业务站点的访问模式,从而能够根据应用程序和业务站点而提供灵活多样的访问模式,适应了应用程序和业务站点所处网络环境复杂化的特点,保证了通过零信任网络访问业务站点的稳定性和效率。
附图说明
29.图1是本技术实施例提供的零信任网络的访问处理系统100的架构示意图;
30.图2是本技术实施例提供的终端设备400的结构示意图;
31.图3a是本技术实施例提供的零信任网络的访问处理方法的流程示意图;
32.图3b是本技术实施例提供的零信任网络的访问处理方法的流程示意图;
33.图4是本技术实施例提供的零信任网络的访问处理方法的流程示意图;
34.图5是本技术实施例提供的零信任网络的访问处理方法的流程示意图;
35.图6是本技术实施例提供的管理员针对零信任网络的访问控制策略进行配置的场景示意图;
36.图7a是本技术实施例提供的管理员针对零信任网络的访问控制策略进行配置的场景示意图;
37.图7b是本技术实施例提供的管理员针对零信任网络的访问控制策略进行配置的场景示意图;
38.图8是本技术实施例提供的管理员针对零信任网络的访问控制策略进行配置的场景示意图;
39.图9是本技术实施例提供的可信应用的配置示意图;
40.图10是本技术实施例提供的访问用户访问零信任网络客户端的场景示意图;
41.图11a是本技术实施例提供的访问用户查询访问控制策略的场景示意图;
42.图11b是本技术实施例提供的访问用户查询访问控制策略的场景示意图;
43.图12是本技术实施例提供的零信任网络的访问过程示意图;
44.图13是本技术实施例提供的零信任网络的访问处理系统的架构示意图;
45.图14是本技术实施例提供的针对网络访问请求携带的域名执行自定义dns逻辑的流程示意图;
46.图15是本技术实施例提供的针对网络访问请求携带的域名执行自定义dns逻辑的流程示意图;
47.图16是本技术实施例提供的结合配置感知变化推送和配置拉取响应的方式实现ioa客户端与零信任网络代理端之间配置信息同步的原理示意图。
具体实施方式
48.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术作进一步地详细描述,所描述的实施例不应视为对本技术的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
49.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突
的情况下相互结合。
50.在以下的描述中,所涉及的术语“第一\第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本技术实施例能够以除了在这里图示或描述的以外的顺序实施。
51.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
52.对本技术实施例进行进一步详细说明之前,对本技术实施例中涉及的名词和术语进行说明,本技术实施例中涉及的名词和术语适用于如下的解释。
53.1)零信任网络:用于供访问主体与访问客体之间的通信架构,以身份认证为基础,具有业务安全访问、持续信任评估和动态访问控制的能力。
54.2)访问主体:在零信任网络中,发起访问的一方,例如可以是访问内网业务资源的人、设备或者应用等。
55.3)访问客体:在零信任网络中,被访问的一方,例如可以是企业内网的业务资源、数据、开发测试环境和运维环境等。
56.4)直连访问:在零信任网络架构中,当某个应用对目标站点发起网络访问请求时,由零信任网络代理端(例如全流量代理)劫持到请求后,经由全流量代理直接向目标站点发起网络访问请求,即发起直接连接的访问,并由全流量代理将该目标站点的网络响应发送给该应用,这种访问模式称为直连访问。
57.5)代理访问:在零信任网络架构中,某个应用对目标站点发起网络访问请求,由全流量代理劫持到请求后,由全流量代理向零信任网络网关(例如智能网关)发起请求转发,经由智能网关代理针对目标站点的访问,访问后由智能网关将该目标站点的网络响应发送给全流量代理,由全流量代理将目标站点的网络响应转发至该应用,这种访问模式称为代理访问。
58.6)零信任网络代理端:部署于受控终端的发起安全访问的终端代理,负责访问主体可信身份验证的请求发起,当验证身份可信时,即可建立加密的访问连接,同时也是访问控制的策略执行点。例如,零信任网络代理端可以是基于tun/tap虚拟网卡实现全流量劫持的全流量代理。
59.7)零信任网络网关:部署在企业应用程序和数据资源的入口,负责对每一个访问企业资源的会话请求进行验证和请求转发。
60.8)可信应用:管理端授信的、终端可访问内部业务系统的应用载体,包括应用名,应用的md5值,签名信息等。
61.9)可达区域:终端用户可以通过零信任网络访问企业设置的内部站点列表。
62.相关技术提供的零信任网络访问架构中,通常只支持管理员下发单一的访问控制策略类型(即全代理策略类型,例如任意可信应用都需要通过代理访问的方式访问可达区域中的任意站点),且只允许管理员在单一的访问控制策略类型中执行调整,不允许在不同访问控制策略类型之间进行切换。也就是说,相关技术针对零信任网络提供的访问方式的灵活性较差。
63.鉴于此,本技术实施例提供了一种零信任网络的访问处理方法、装置、电子设备和
计算机可读存储介质,能够提高零信任网络访问的灵活性。下面说明本技术实施例提供的电子设备的示例性应用,本技术实施例提供的电子设备可以实施为笔记本电脑,平板电脑,台式计算机,机顶盒,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)等各种类型的用户终端,也可以实施为服务器。下面,将说明电子设备实施为终端设备时的示例性应用。
64.参见图1,图1是本技术实施例提供的零信任网络的访问处理系统100的架构示意图,如图1所示,终端设备400是用户所关联的终端设备,在终端设备400上运行有应用程序401、零信任网络代理端402和零信任网络客户端403,其中,应用程序401可以是各种类型的应用程序,例如视频播放类应用程序、在线会议类应用程序、直播类应用程序、新闻类应用程序以及即时通信类应用程序等。需要说明的是,应用程序401是指经过零信任网络服务器200授信的可以访问内部业务系统(例如业务服务器500)的应用程序。
65.零信任网络代理端402用于劫持应用程序401发送的访问请求,且在零信任网络代理端402中存储有零信任网络客户端403从零信任网络服务器200中获取的访问控制策略,当零信任网络代理端402劫持到应用程序401发送的访问请求时,从访问请求中获取应用程序401需要访问的业务站点(例如业务服务器500)的地址,并基于应用程序401的标识和业务服务器500的地址(例如业务服务器500的网际协议(ip,internet protocol)地址),查询零信任网络的访问控制策略,得到应用程序401访问业务服务器500的访问模式。接着,零信任网络代理端402基于所得到的访问模式和零信任网络(包括零信任网络代理端、零信任网络网关和零信任网络服务器)建立应用程序401与业务服务器500之间的通信连接,并通过通信连接向业务服务器500发送所劫持到的访问请求,以及通过通信连接向应用程序401发送业务服务器500返回的访问请求响应。下面进行具体说明。
66.示例的,当访问模式为直连访问时,零信任网络代理端402将所劫持到的应用程序401发送的访问请求转发至业务服务器500,以建立应用程序401与业务服务器500之间的直连的通信连接,并将业务服务器500针对应用程序401发送的访问请求对应的访问请求响应通过上述建立的直连的通信连接返回给应用程序401,并调用应用程序401的人机交互界面进行呈现。
67.需要说明的是,对于直连访问,实际上只有应用程序401与业务服务器500之间直连的一个通信连接,不需要经过零信任网络网关300进行中转。
68.示例的,当访问模式为代理访问时,零信任网络代理端402在劫持到应用程序401发送的访问请求后,首先向零信任网络客户端403发起鉴权请求(即零信任网络代理端402向零信任网络客户端403申请本次访问请求的凭证),零信任网络客户端403在接收到零信任网络代理端402发送的鉴权请求后,向零信任网络服务器200申请凭证,并将零信任网络服务器200返回的凭证发送给零信任网络代理端402。零信任网络代理端402在接收到零信任网络客户端403发送的凭证后,将凭证发送给零信任网络网关300,以使零信任网络网关300将凭证发送给零信任网络服务器200进行验证。当零信任网络服务器200针对零信任网络网关300发送的凭证验证通过时,零信任网络网关300与零信任网络代理端402建立通信连接,之后零信任网络代理端402将劫持到的应用程序401发送的访问请求转发至零信任网络网关300,由零信任网络网关300将应用程序401发送的访问请求转发至业务服务器500。当零信任网络服务器200针对零信任网络网关300发送的凭证验证失败时,则断开零信任网
络代理端402与零信任网络网关300之间的连接,由零信任网络代理端402直接将应用程序401发送的访问请求转发至业务服务器500。
69.需要说明的是,对于代理访问,实际上包括应用程序401与零信任网络网关300、以及零信任网络网关300与业务服务器500之间的两个通信连接,由零信任网络网关300进行中转(即当应用程序401向业务服务器500发送访问请求时,替换应用程序401的地址为零信任网络网关300的地址;当接收来自业务服务器500返回的访问请求响应时,将零信任网络网关300的地址重新替换成应用程序401的地址,然后将访问请求响应发送给应用程序401)。
70.在一些实施例中,零信任网络服务器200和业务服务器500可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备400可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端设备400与零信任网络服务器200、零信任网络网关300以及业务服务器500之间可以通过有线或无线通信方式进行直接或间接地连接,本技术实施例中不做限制。
71.下面对图1中的终端设备400的结构进行说明。参见图2,图2是本技术实施例提供的终端设备400的结构示意图,图2所示的终端设备400包括:至少一个处理器410、存储器450、至少一个网络接口420和用户接口430。终端设备400中的各个组件通过总线系统440耦合在一起。可理解,总线系统440用于实现这些组件之间的连接通信。总线系统440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统440。
72.处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digital signal processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
73.用户接口430包括使得能够呈现媒体内容的一个或多个输出装置431,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口430还包括一个或多个输入装置432,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
74.存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器410的一个或多个存储设备。
75.存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(rom,read only memory),易失性存储器可以是随机存取存储器(ram,random access memory)。本技术实施例描述的存储器450旨在包括任意适合类型的存储器。
76.在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
77.操作系统451,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,
例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
78.网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(wifi)、和通用串行总线(usb,universal serial bus)等;
79.呈现模块453,用于经由一个或多个与用户接口430相关联的输出装置431(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
80.输入处理模块454,用于对一个或多个来自一个或多个输入装置432之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
81.在一些实施例中,本技术实施例提供的装置可以采用软件方式实现,图2示出了存储在存储器450中的零信任网络的访问处理装置455,其可以是程序和插件等形式的软件,包括以下软件模块:接收模块4551、获取模块4552、查询模块4553、建立模块4554、发送模块4555、匹配模块4556、确定模块4557、推送模块4558和构建模块4559,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。
82.例如,本技术实施例下文记载的对应终端设备、零信任网络服务器和零信任网络网关每个步骤,都可以实施为一个单独的模块,并以硬件、软件或二者结合的方式对应部署在终端设备、零信任网络服务器和零信任网络网关中,从而对终端设备、零信任网络服务器和零信任网络网关赋能,以使终端设备、零信任网络服务器和零信任网络网关协同来共同实现本技术实施例提供的零信任网络的访问处理方法。
83.当然,终端设备、零信任网络服务器和零信任网络网关都可以实施如图2中示出的装置中的所有模块,由于每个电子设备都具备了实现终端设备、零信任网络服务器和零信任网络网关中的任意一个角色的能力,从而可以根据实际需要灵活切换角色,例如,零信任网络服务器可以在必要时切换为零信任网络网关的角色,从而可以根据实际业务需求灵活调整不同角色的电子设备之间的比例。
84.例如,就在图2中示出的终端设备而言,虽然一次性示出了上述访问处理装置455中的所有模块,但是不应视为在终端设备中部署的访问处理装置455中排除了可以只包括接收模块4551、获取模块4552、查询模块4553、建立模块4554和发送模块4555的实施,将在下文中说明各个模块的功能。
85.在另一些实施例中,本技术实施例提供的装置可以采用硬件方式实现,作为示例,本技术实施例提供的装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本技术实施例提供的零信任网络的访问处理方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(asic,application specific integrated circuit)、dsp、可编程逻辑器件(pld,programmable logic device)、复杂可编程逻辑器件(cpld,complex programmable logic device)、现场可编程门阵列(fpga,field-programmable gate array)或其他电子元件。
86.如上所述,本技术实施例提供的零信任网络的访问处理装置455是可以部署在终端设备、零信任网络服务器和零信任网络网关中,从而使在终端设备、零信任网络服务器和零信任网络网关协同实现零信任网络的访问处理方法。
87.参见图3a,图3a是本技术实施例提供的零信任网络的访问处理方法的流程示意
图,图3a示出的步骤可以由运行有零信任网络代理端和零信任网络客户端的终端设备执行。如图3a所示,在步骤s101中,接收应用程序发送的访问请求;在步骤s102中,从访问请求中获取应用程序需要访问的业务站点的地址;在步骤s103中,基于应用程序的标识和业务站点的地址,查询零信任网络的访问控制策略,得到应用程序访问业务站点的访问模式;在步骤s104中,基于访问模式和零信任网络建立应用程序与业务站点之间的通信连接;在步骤s105中,通过通信连接向业务站点发送访问请求,并通过通信连接向应用程序发送业务站点的访问请求响应。如此,能够根据应用程序和业务站点而提供灵活多样的访问模式,适应了应用程序和业务站点所处网络环境复杂化的特点,保证了通过零信任网络访问业务站点的稳定性和效率。
88.下面继续从终端设备(运行有应用程序、零信任网络代理端和零信任网络客户端)、零信任网络网关以及零信任网络服务器之间交互的角度,对本技术实施例提供的零信任网络的访问处理方法进行具体说明。
89.参见图3b,图3b是本技术实施例提供的零信任网络的访问处理方法的流程示意图,如图3b所示,在终端设备上运行有应用程序、零信任网络代理端和零信任网络客户端,下面将结合图3b示出的步骤进行具体说明。
90.在步骤s201中,零信任网络代理端劫持应用程序发送的访问请求。
91.在一些实施例中,访问用户可以针对终端设备上运行的应用程序执行触发操作(例如可以是点击、长按等接触性操作,或者是语音、手势等非接触性操作),以使应用程序发送对应的访问请求,接着,零信任网络代理端(例如全流量代理)通过虚拟网卡,劫持应用程序所发送的访问请求。
92.示例的,以应用程序为检索类应用程序(例如浏览器)为例,当终端设备上运行的浏览器接收到访问用户触发的点击操作时,生成对应的访问请求,例如该访问请求可以是访问用户在浏览器的搜索栏中输入某一业务站点的域名后生成,接着,全流量代理可以基于tun/tap虚拟网卡劫持浏览器所发送的访问请求。
93.在另一些实施例中,应用程序可以通过以下方式发起访问请求:首先,查询域名缓存中存储的需要访问的业务站点与网络地址的绑定关系,接着,基于所查询到的网络地址生成针对业务站点的访问请求。
94.然而,当应用程序的域名缓存中未存储有业务站点与网络地址的绑定关系时,本技术实施例提供的零信任网络的访问处理方法还可以执行以下处理:通过零信任网络代理端监听域名解析端口(例如53端口),以劫持应用程序发送的域名解析请求,并从域名解析请求中提取业务站点的域名,基于所提取的域名查询访问控制策略,得到为域名分配的ip地址(例如当访问控制策略为全代理类型策略时,可以通过零信任网络代理端中的自定义域名系统(dns,domain name system)逻辑为域名分配对应的虚拟ip地址,并创建域名与虚拟ip地址之间的映射名单;当访问控制策略为全直连类型策略时,可以通过互联网中的系统dns对域名进行解析,得到与域名对应的系统原生ip地址,并创建域名与系统原生ip地址之间的映射名单),接着,通过零信任网络代理端向应用程序发送所得到的ip地址,以使应用程序基于该ip地址生成访问请求。
95.示例的,以应用程序需要访问域名为“km.oa.com”的业务站点为例,零信任网络代理端针对53端口进行监听,以劫持应用程序发送的域名解析请求,并从域名解析请求中提
取出业务站点的域名,即“km.oa.com”,接着,基于域名查询访问控制策略,当虚拟ip配置名单中存在域名“km.oa.com”时,即针对域名“km.oa.com”需要通过代理访问的方式进行访问时,则通过零信任网络代理端中的自定义dns逻辑为域名“km.oa.com”分配对应的一个虚拟ip地址,例如“192.168.202.1”,随后,将这个虚拟ip地址返回给应用程序,以使应用程序基于这个虚拟ip地址生成针对域名为“km.oa.com”的访问请求。
96.在步骤s202中,零信任网络代理端从访问请求中获取应用程序需要访问的业务站点的地址。
97.在一些实施例中,业务站点的地址可以包括域名地址,例如“www.aaa.com”、或者ip地址,例如“10.28.0.12”。其中,针对ip地址形式的访问请求,由于不存在域名解析的过程,因此可以直接被虚拟网卡劫持。而对于域名形式的访问请求,由于企业内网域名在公网下可能会出现dns解析失败(即解析不出对应的ip地址)或者dns解析出现域名污染的情况,导致应用程序不会发起后续的网络访问请求(即当应用程序发起针对域名地址形式的业务站点的访问请求时,必须等到dns解析出正确的ip地址后,访问行为才能持续进行)。
98.针对上述技术问题,本技术实施例提供的零信任网络的访问控制方法可以通过以下方式获取业务站点的域名:将访问请求对应的ip地址与访问控制策略中的虚拟ip配置名单进行匹配;当虚拟ip配置名单中存在该ip地址时,基于该ip地址查询虚拟ip地址与域名之间的映射名单,得到业务站点的域名;当虚拟ip配置名单中不存在该ip地址时,基于该ip地址查询系统原生ip地址与域名之间的映射名单,得到业务站点的域名。如此,可以解决某些企业的内网域名在公网下执行dns解析失败或者dns解析出现域名污染,导致应用程序不会发起后续请求的问题。
99.在步骤s203中,零信任网络代理端基于应用程序的标识和业务站点的地址,查询零信任网络的访问控制策略,得到应用程序访问业务站点的访问模式。
100.在一些实施例中,当访问控制策略为全代理类型策略时,零信任网络代理端可以通过以下方式得到应用程序访问业务站点的访问模式:将应用程序与全代理类型策略中的多个可信应用配置节点分别进行匹配,并将业务站点的地址与全代理类型策略中的多个可达区域配置节点分别进行匹配;其中,可信应用配置节点包括允许来访的应用程序的多个特征字段(例如应用程序的名称、进程名称、序列号以及签名信息等),可达区域配置节点包括允许访问的业务站点的多个特征字段(例如可达区域所在模块的名称、可达区域的名称等);当存在与应用程序匹配的可信应用配置节点、且存在与业务站点的地址匹配的可达区域配置节点时,确定访问模式为代理访问;当不存在与应用程序匹配的可信应用配置节点、或不存在与业务站点的地址匹配的可达区域配置节点时,确定访问模式为直连访问。
101.在另一些实施例中,当访问控制策略为全直连类型策略时,零信任网络代理端可以通过以下方式得到应用程序访问业务站点的访问模式:将应用程序与全直连类型策略中的多个可信应用配置节点分别进行匹配,并将业务站点的地址与全直连类型策略中的多个可达区域配置节点分别进行匹配;当存在与应用程序匹配的可信应用配置节点、且存在与业务站点的地址匹配的可达区域配置节点时,确定访问模式为直连访问;当不存在与应用程序匹配的可信应用配置节点、或不存在与业务站点的地址匹配的可达区域配置节点时,确定访问模式为代理访问。
102.示例的,以零信任网络代理端中存储的访问控制策略为全直连类型策略为例,零
信任网络代理端在获取到应用程序(例如应用程序a)的标识以及应用程序a需要访问的业务站点(例如业务站点b)的地址后,将应用程序a与全直连类型策略中的多个可信应用配置节点进行匹配,并将业务站点b的地址与全直连类型策略中的多个可达区域配置节点进行匹配;当可信应用配置节点中存在应用程序a、且可达区域配置节点中存在业务站点b时,确定应用程序a访问业务站点b的访问模式为直连访问;当可信应用配置节点中不存在应用程序a、或者可达区域配置节点中不存在业务站点b时,确定应用程序a访问业务站点b的访问模式为代理访问。
103.在另一些实施例中,当访问控制策略包括直连配置名单时,零信任网络代理端还可以通过以下方式得到应用程序访问业务站点的访问模式:将业务站点的地址与直连配置名单进行匹配;当直连配置名单中存在业务站点的地址时,确定应用程序访问业务站点的访问模式为直连访问。
104.示例的,以业务站点为业务站点a为例,在直连配置名单中存储有多个业务站点的地址(包括ip地址和域名地址),当业务站点a的地址命中直连配置名单时,即直连配置名单中存在业务站点a的地址时,确定应用程序访问业务站点a的访问模式为直连访问。
105.在一些实施例中,当访问控制策略包括虚拟ip配置名单时,零信任网络代理端还可以通过以下方式得到应用程序访问业务站点的访问模式:将业务站点的地址与虚拟ip配置名单进行匹配;当虚拟ip配置名单中存在业务站点的地址时,确定应用程序访问业务站点的访问模式为代理访问。
106.示例的,以业务站点为业务站点b为例,在虚拟ip配置名单中存储有多个业务站点的地址(例如虚拟ip地址),当业务站点b的地址命中虚拟ip配置名单时,即虚拟ip配置名单中存在业务站点b的地址时,确定应用程序访问业务站点b的访问模式为代理访问。
107.在另一些实施例中,零信任网络代理端在确定出访问模式后,可以基于访问模式和零信任网络建立应用程序与业务站点之间的通信连接;并通过通信连接向业务站点发送访问请求,以及通过通信连接向应用程序发送业务站点的访问请求响应。
108.需要说明的是,对于直连访问,不会修改访问请求的源地址/端口(即始终指向应用程序),从而可以通过三次握手协议建立应用程序与业务站点之间的直连的通信连接;而对于代理访问,需要通过零信任网络网关向业务站点发送凭证和访问请求(此时,源地址/端口为零信任网络网关的源地址/端口),即零信任网络网关自身与业务站点之间建立通信连接,同时还需要与应用程序之间建立通信连接,从而零信任网络网关可以在两者之间进行数据的转发。
109.下面对上述两种访问模式进行具体说明。
110.在一些实施例中,当在步骤s203中确定出访问模式为直连访问时,后续将执行步骤s204至步骤s206。
111.在步骤s204中,零信任网络代理端将所劫持到的访问请求发送至业务服务器。
112.在一些实施例中,当零信任网络代理端基于应用程序的标识和业务站点的地址,查询零信任网络的访问控制策略,得到应用程序访问业务站点的访问模式为直连访问时,可以将所劫持到的访问请求直接转发至对应的业务服务器。
113.示例的,以应用程序a访问ip地址为“192.168.202.1”的业务站点b为例,当零信任网络代理端基于应用程序a的标识和业务站点b的ip地址,查询零信任网络的访问控制策略
(例如将业务站点b的ip地址与直连配置名单进行比较),得到应用程序a访问业务站点b的访问模式为直连访问时,直接通过物理网卡将应用程序a发送的访问请求转发至ip地址为“192.168.202.1”的业务服务器中。
114.在步骤s205中,业务服务器向零信任网络代理端返回访问请求响应。
115.在一些实施例中,当业务服务器接收到零信任网络代理端转发的访问请求后进行响应,并将响应结果返回给零信任网络代理端,例如当应用程序发送的访问请求为检索请求时,业务服务器可以将检索结果返回给零信任网络代理端。
116.在步骤s206中,零信任网络代理端将业务服务器返回的访问请求响应发送至应用程序。
117.在一些实施例中,零信任网络代理端在接收到业务服务器返回的访问请求响应后,将所接收到的访问请求响应发送给应用程序,以使应用程序将访问请求响应输出至人机交互界面中。
118.在另一些实施例中,当在步骤s203中确定出访问模式为代理访问时,步骤s204至步骤s206将被替换为步骤s207至步骤s2017,即后续将执行步骤s207至步骤s2017。
119.在步骤s207中,零信任网络代理端向零信任网络客户端发送鉴权请求。
120.在一些实施例中,当零信任网络代理端基于应用程序的标识和业务站点的地址,查询零信任网络的访问控制策略,得到应用程序访问业务站点的访问模式为代理访问时,首先向零信任网络客户端发送鉴权请求(即向零信任网络客户端申请本次访问请求对应的凭证)。
121.在步骤s208中,零信任网络客户端向零信任网络服务器申请针对访问请求的凭证。
122.在一些实施例中,零信任网络客户端在接收到零信任网络代理端发送的鉴权请求后,提取出鉴权请求中携带的请求参数,其中,请求参数可以包括:应用程序的地址和端口、业务站点的地址和端口以及应用程序的标识(例如应用程序对应的进程标识符(pid,process identification))等,接着,零信任网络客户端可以基于请求参数中携带的应用程序的标识,获取应用程序的特征信息(例如应用程序对应的进程md5值,进程路径,进程最近修改时间,版权信息,签名信息等),随后,零信任网络网关向零信任网络服务器发送凭证请求(即向零信任网络服务器申请票据),其中,凭证请求中携带有应用程序的地址和端口、业务站点的地址和端口、以及应用程序的特征信息。
123.在步骤s209中,零信任网络服务器向零信任网络客户端返回凭证。
124.在一些实施例中,零信任网络服务器在接收到零信任网络客户端发送的凭证请求后,对凭证请求进行鉴权处理,并在鉴权通过后,生成与应用程序发送的访问请求对应的凭证,并将凭证、凭证的最大使用次数以及凭证的有效使用时间作为响应返回给零信任网络客户端。
125.在步骤s2010中,零信任网络客户端将零信任网络服务器返回的凭证发送至零信任网络代理端。
126.在一些实施例中,零信任网络客户端在接收到零信任网络服务器返回的凭证、凭证的最大使用次数以及凭证的有效使用时间后,将凭证、凭证的最大使用次数以及凭证的有效使用时间作为针对鉴权请求的响应发送至零信任网络代理端。
127.在步骤s2011中,零信任网络代理端将凭证发送至零信任网络网关。
128.在一些实施例中,零信任网络代理端在接收到零信任网络客户端发送的凭证后,将凭证发送至零信任网络网关,由零信任网络网关将凭证转发至零信任网络服务器,以使零信任网络服务器对凭证进行校验。
129.在步骤s2012中,零信任网络网关将凭证发送至零信任网络服务器进行校验。
130.在一些实施例中,零信任网络服务器在接收到零信任网络网关发送的凭证后,对凭证进行校验,例如将零信任网络网关发送的凭证与零信任网络服务器中自身存储的凭证(即在步骤s209中生成的凭证)进行比对,当两者一致时,确定校验通过,并向零信任网络网关返回表征校验通过的校验结果;当两者不一致时,确定校验失败,并向零信任网络网关返回表征校验失败的校验结果。
131.需要说明的是,当零信任网络网关接收到零信任网络服务器返回的表征校验失败的校验结果时,断开与零信任网络代理端之间的通信连接,以使零信任网络代理端通过物理网卡直接将访问请求转发至对应的业务服务器中。
132.在步骤s2013中,零信任网络代理端将所劫持到的访问请求发送至零信任网络网关。
133.在一些实施例中,当零信任网络服务器针对零信任网络网关发送的凭证校验通过时,零信任网络代理将劫持到的应用程序发送的访问请求转发至零信任网络网关,以使零信任网络网关针对目标业务站点进行访问。
134.在步骤s2014中,零信任网络网关将访问请求转发至业务服务器。
135.在一些实施例中,零信任网络网关在接收到零信任网络代理端发送的访问请求后,根据访问请求携带的目的ip地址或者域名(即业务服务器对应的ip地址或者域名),将访问请求转发至对应的业务服务器中。
136.在步骤s2015中,业务服务器向零信任网络网关发送访问请求响应。
137.在一些实施例中,业务服务器在接收到零信任网络网关转发的访问请求后,针对访问请求进行响应,并将访问请求响应返回给零信任网络网关。例如当应用程序发送的访问请求为检索请求时,业务服务器可以将检索结果返回给零信任网络网关。
138.在步骤s2016中,零信任网络网关将访问请求响应发送至零信任网络代理端。
139.在一些实施例中,零信任网络网关在接收到业务服务器返回的访问请求响应后,将访问请求响应返回至终端设备上运行的零信任网络代理端。例如零信任网络网关可以将业务服务器返回的搜索结果返回至访问用户所关联的终端设备运行的零信任网络代理端。
140.在步骤s2017中,零信任网络代理端将访问请求响应发送至应用程序。
141.在一些实施例中,零信任网络代理端在接收到零信任网络网关转发的业务服务器返回的访问请求响应后,将所接收到的访问请求响应发送给应用程序,以使应用程序将访问请求响应输出至人机交互界面中。
142.下面针对零信任网络代理端中存储的配置信息(包括访问控制策略、零信任网络服务器的连接地址、零信任网络网关的连接配置信息等)的更新过程进行说明。
143.在一些实施例中,可以通过零信任网络服务器主动推送的方式将更新后的配置信息(例如管理员新增了可达区域配置节点或者修改了零信任网络网关的连接地址配置,例如修改了连接协议、连接地址或者连接端口等)下发至零信任网络代理端中。
144.示例的,参见图4,图4是本技术实施例提供的零信任网络的访问处理方法的流程示意图,将结合图4示出的步骤s301至步骤s303进行说明。
145.在步骤s301中,在零信任网络服务器中设置触发器。
146.在一些实施例中,可以在零信任网络服务器中设置触发器,其中,触发器的触发条件可以是当访问控制策略、零信任网络服务器的连接地址和零信任网络网关的连接配置信息任意一项发生更新时,触发零信任网络服务器将更新后的配置信息自动推送至零信任网络客户端。
147.在步骤s302中,当配置信息发生更新时,触发零信任网络服务器将更新后的配置信息推送至零信任网络客户端。
148.在一些实施例中,当触发器检测到零信任网络服务器中存储的配置信息发生更新时,例如管理员修改了访问控制策略时,自动触发零信任网络服务器将修改后的访问控制策略推送至零信任网络客户端。
149.在步骤s303中,零信任网络客户端将更新后的配置信息发送至零信任网络代理端。
150.在一些实施例中,零信任网络客户端在接收到零信任网络服务器推送的更新后的配置信息后,将所接收到的更新后的配置信息推送至零信任网络代理端,以使零信任网络代理端针对接收到的更新后的配置信息进行设置。
151.在另一些实施例中,零信任网络客户端还可以接收零信任网络代理端返回的响应结果,并执行以下操作:基于零信任网络代理端的响应结果,构建推送状态缓存;其中,响应结果是零信任网络代理端基于更新后的配置信息进行设置后生成的,推送状态缓存采用键值对的形式,且键值对以更新后的配置信息对应的哈希值为键、以更新后的配置信息对应的推送时间戳和推送状态为值;其中,推送状态包括以下至少之一:状态未知、待推送状态、推送成功、推送失败。
152.示例的,以更新后的配置信息为配置信息a为例,零信任网络代理端在接收到零信任网络客户端推送的配置信息a之后,针对配置信息a进行设置,并将响应结果(例如设置成功)返回给零信任网络客户端。零信任网络客户端在接收到零信任网络代理端返回的响应结果后,对配置信息a进行哈希运算,得到配置信息a对应的哈希值,并以配置信息a对应的哈希值为键、以配置信息a对应的推送时间戳和推送状态为值,创建与配置信息a对应的缓存项;其中,推送状态为推送成功。
153.在另一些实施例中,零信任网络客户端还可以针对特定时间戳和特定哈希值对应的配置信息,执行以下处理:当零信任网络代理端成功接收且设置配置信息时,基于特定哈希值查询推送状态缓存;当推送状态缓存中存在与特定哈希值对应的缓存记录时,对特定哈希值对应的推送状态进行更新(例如将推送状态从推送失败更新为推送成功);当推送状态缓存中不存在与特定哈希值对应的缓存记录时,确定推送状态缓存包括的缓存项的数量;当缓存项的数量大于数量阈值时,根据推送时间戳删除预设数量的缓存项,并在经过删除后的推送状态缓存中建立与特定哈希值以及特定时间戳对应的缓存项。
154.在另一些实施例中,还可以通过零信任网络客户端主动拉取的方式将更新后的配置信息同步至零信任网络代理端中。
155.示例的,继续参见图4,图4是本技术实施例提供的零信任网络的访问处理方法的
流程示意图,将结合图4示出的步骤s304至步骤s307进行说明。
156.在步骤s304中,在零信任网络客户端中设置定时器。
157.在一些实施例中,可以在零信任网络客户端中设置定时器,以使零信任网络客户端周期性(例如每隔10分钟)向零信任网络服务器发送配置信息获取请求。
158.在步骤s305中,零信任网络客户端基于定时器周期性向零信任网络服务器发送配置信息获取请求。
159.在一些实施例中,每当定时器设置的时间到达时,零信任网络客户端即向零信任网络服务器发起一次配置信息获取请求。例如,当定时器设置的周期为5分钟时,则零信任网络客户端每隔5分钟向零信任网络服务器发起一次配置信息获取请求。
160.在步骤s306中,零信任网络服务器将更新后的配置信息发送至零信任网络客户端。
161.在一些实施例中,当零信任网络服务器接收到零信任网络客户端发送的配置信息获取请求时,检查配置信息是否发生更新,当配置信息没有更新时,忽略零信任网络客户端发送的配置信息获取请求;当配置信息发生更新时,将更新后的配置信息发送至零信任网络客户端。
162.在步骤s307中,零信任网络客户端将更新后的配置信息发送至零信任网络代理端。
163.在一些实施例中,零信任网络客户端在接收到零信任网络服务器返回的更新后的配置信息后,基于所获取的更新后的配置信息生成对应的哈希值,并将生成的哈希值与内存中记录的上一次推送的配置信息对应的哈希值进行比对,当两者不一致时,将所获取的更新后的配置信息推送至零信任网络代理端;当两者一致时,则查询上一次推送的配置信息对应的推送状态;当推送状态为推送失败或者未查询到对应的记录时,将所获取的更新后的配置信息推送至零信任网络代理端。
164.需要说明的是,图4示出的零信任网络服务器主动推送的方案和零信任网络客户端主动拉取的方案可以是同步执行的,例如可以同时在零信任网络服务器中设置触发器以及在零信任网络客户端中设置定时器,当然,也可以是在零信任网络服务器主动推送更新后的配置信息失败时,再执行零信任网络客户端主动拉取的方案,本技术实施例对此不作限定。
165.在另一些实施例中,虽然结合零信任网络服务器主动推送的方案和零信任网络客户端主动拉取的方案能够提高配置信息同步的效率,但不能保证更新后的配置信息能够百分之百地推送至零信任网络代理端中。为了解决推送失败的问题,以进一步提高配置信息同步的成功率,本技术实施例提供的零信任网络的访问处理方法还将零信任网络代理端拉取的方案作为兜底方案。
166.示例的,参见图5,图5是本技术实施例提供的零信任网络的访问处理方法的流程示意图,将结合图5示出的步骤进行说明。
167.在步骤s401中,零信任网络代理端以第一频率周期性向零信任网络客户端发送配置信息获取请求。
168.在一些实施例中,当零信任网络代理端没有获取到更新后的配置信息时,可以以第一频率(即高频率,例如每隔5分钟执行一次)周期性向零信任网络客户端发送配置信息获取请求,以请求获取更新后的配置信息。
169.在步骤s402中,零信任网络客户端向零信任网络服务器发送配置信息获取请求。
170.在一些实施例中,零信任网络客户端在接收到零信任网络代理端发送的配置信息获取请求后,将请求转发至零信任网络服务器。
171.在步骤s403中,零信任网络服务器向零信任网络客户端发送更新后的配置信息。
172.在一些实施例中,当零信任网络服务器接收到零信任网络客户端转发的配置信息获取请求时,检查自身存储的配置信息是否发生更新,当配置信息没有更新时,忽略零信任网络客户端发送的配置信息获取请求;当配置信息发生更新时,将更新后的配置信息发送至零信任网络客户端。
173.在步骤s404中,零信任网络客户端将更新后的配置信息发送至零信任网络代理端。
174.在一些实施例中,当零信任网络客户端接收到零信任网络服务器返回的更新后的配置信息后,将所接收到的更新后的配置信息推送至零信任网络代理端。
175.需要说明的是,零信任网络客户端需要通过零信任网络代理端的推送接口的鉴权后,才能成功调用零信任网络代理端的推送接口,将更新后的配置信息推送至零信任网络代理端。
176.在步骤s405中,零信任网络代理端继续以第二频率周期性向零信任网络客户端发送配置信息获取请求,以请求获取再次更新后的配置信息。
177.在一些实施例中,当零信任网络代理端成功接收且设置零信任网络客户端推送的更新后的配置信息时,由于配置信息在发生更新后不会立即再次更新,因此,零信任网络代理端可以继续以第二频率(即低频率,例如每隔30分钟执行一次)周期性向零信任网络客户端发送配置信息获取请求,以请求获取再次更新后的配置信息。如此,避免了相关技术中配置信息拉取不及时(频率设置较低的情况)和资源消耗过大的问题(频率设置较高的情况)。
178.本技术实施例提供的零信任网络的访问处理方法,解决了全直连类型策略和全代理类型策略之间切换导致的网络访问中断或抖动的问题,同时优化了管控端调整访问控制策略后终端生效慢的问题。在零信任网络访问架构中,终端用户的网络访问操作受访问控制策略的控制和影响。本技术实施例提供的零信任网络的访问处理方法,支持管理员在全直连类型策略和全代理类型策略之间的灵活切换,且通过一种基于配置变动、时间戳和配置哈希值即时实现零信任网络代理端和零信任网络客户端之间网络访问配置信息同步的方案。相较于相关技术提供的仅依靠周期性拉取配置信息的方案,本技术实施例提供的零信任网络的访问处理方法,能够提高配置信息同步的效率,缩短终端响应时间,以及提高网络访问的稳定性。
179.下面,将说明本技术实施例在一个实际的应用场景中的示例性应用。
180.相关技术提供的零信任网络架构中,通常只支持管理员下发单一的访问控制策略类型(即全代理类型策略),且只允许管理员在一种访问控制策略类型中执行调整,不允许在不同访问控制策略类型之间的切换功能。并且,相关技术中,零信任网络代理端通常仅通过周期性向零信任网络客户端(例如智能办公自动化系统(ioa,intelligent office automation)客户端)拉取配置信息,ioa客户端收到配置拉取请求时,采集最新的访问控制策略和与网络相关的配置信息,向零信任网络代理端发送配置响应。也就是说,当管理员在管理端上配置的访问控制策略或者与网络相关的配置信息发生变更时,必须要等到零信任网络代理端向ioa客户端发送拉取配置的请求,ioa客户端才能将最新的配置信息同步至零
信任网络代理端。在此期间,网络访问容易出现抖动,导致出现频繁访问失败的问题。终端针对配置变化的响应时间长,网络访问的稳定性较差。
181.鉴于此,本技术实施例提供了一种零信任网络的访问处理方法,能够支持管理员下发全直连类型策略或者全代理类型策略,并且允许管理员在两种策略类型之间实现灵活切换,提供了较大的配置灵活度,同时也解决了两种策略类型切换时域名类型的站点访问dns解析出错或者dns失败的问题,还解决了代理访问和直连访问之间切换导致的网络访问抖动问题。当访问控制策略或与网络相关的配置信息发生变更时,ioa客户端通过基于触发点主动推送和周期性拉取相结合的方式实现零信任网络代理端和零信任网络客户端之间网络访问配置信息的快速同步。相较于相关技术提供的仅靠周期性拉取配置信息的方案,本技术实施例提供的零信任网络的访问处理方法在提高配置信息同步效率的同时,能够缩短终端针对配置信息变化的响应时间,提高网络访问的稳定性。
182.本技术实施例提供的零信任网络的访问处理方法能够应用于线上办公场景,能够保障高效、稳定的远程协同办公体验,推动零信任技术在数字化产业中的应用落地。
183.下面对本技术实施例提供的零信任网络的访问处理方法进行具体说明。
184.示例的,参见图6,图6是本技术实施例提供的管理员针对零信任网络配置访问控制策略的场景示意图。如图6所示,界面600是基于管理员的账号登录零信任网络客户端(例如ioa客户端)时对应的界面,管理员可以在界面600呈现的可信应用配置区域610中,配置与可信应用相关联的访问控制策略;当然,管理员也可以在界面600呈现的业务系统配置区域620中,配置与业务系统相关联的访问控制策略。
185.本技术实施例提供的零信任网络的访问处理方法允许管理员针对ip形式或者域名形式的业务站点进行配置。
186.示例的,参见图7a,图7a是本技术实施例提供的管理员针对零信任网络的访问控制策略进行配置的场景示意图。如图7a所示,在业务系统配置界面700中呈现有类别选择框,当管理员在类别选择框中选择“ip”710时,还可以在“ip”栏720中选择“指定ip”或者“ip段”,此外,管理员还可以针对“端口”730进行配置,例如配置为所有端口或者指定端口。
187.示例的,参见图7b,图7b是本技术实施例提供的管理员针对零信任网络的访问控制策略进行配置的场景示意图。如图7b所示,当管理员在业务系统配置界面700呈现的类别选择框中选择“域名”740时,还可以在域名填写框750中填入具体的业务站点的域名。
188.本技术实施例提供的零信任网络的访问处理方法基于人(身份)-应用-目标业务系统的组合控制策略,实现了流量过滤、支持泛域名、ip段、多端口,并且基于用户的组织架构可以实现继承和扩展。
189.示例的,参见图8,图8是本技术实施例提供的管理员针对零信任网络的访问控制策略进行配置的场景示意图。如图8所示,管理员还可以在界面800呈现的账号创建区域810中创建多个用户账号(即访问用户账号),该用户账号可以是个人用户账号,也可以是群组用户账号,本技术实施例在此不做限定。对于群组用户账号,还能实现配置信息的继承,例如下一层级的用户账号能够继续上一层级的用户账号的配置信息。
190.下面对可信应用的配置过程进行说明。
191.示例的,参见图9,图9是本技术实施例提供的可信应用的配置示意图。如图9所示,在可信应用的配置界面900中呈现有:应用的进程名910、签名信息920、版本930、进程对应
的散列值(例如md5值)940和进程对应的哈希值(例如sha256值)950。
192.进一步的,在开启零信任办公的情况下,终端用户可以通过登录零信任网络客户端(例如ioa客户端),实现零信任办公功能。
193.示例的,参见图10,图10是本技术实施例提供的访问用户访问零信任网络客户端的场景示意图,如图10所示,在登录界面1000中显示有多种登录方式,包括扫码登录或者账号登录的方式,访问用户可以使用任意一种方式登录零信任网络客户端(例如ioa客户端)。
194.示例的,参见图11a,图11a是本技术实施例提供的访问用户查询访问控制策略的场景示意图,如图11a所示,界面1100是访问用户成功登录零信任网络客户端后呈现的界面,在界面1100中呈现有访问用户的用户账号1101,此外,在界面1100中还呈现有“办公安全实时防护中”控件1102,当访问用户点击控件1102时,将在界面1100中以弹窗的方式呈现对应的子界面1103,在子界面1103中呈现有管理员所配置的访问控制策略中的防护策略,例如应用入口防护和系统底层防护。其中,应用入口防护包括桌面图标防护、摄像头防护、u盘防护、文件下载防护、网页防火墙。系统底层防护包括文件系统防护、注册表防护、进程防护、驱动防护以及黑客入侵防护。
195.示例的,参见图11b,图11b是本技术实施例提供的访问用户查询访问控制策略的场景示意图,如图11b所示,当访问用户在界面1100中点击“可信软件已配置”控件1104时,将在界面1100中以弹窗的方式呈现对应的子界面1105,在子界面1105中显示有管理员配置的访问控制策略中的应用策略,例如可信软件(即可信应用)和拦截软件。其中,可信软件包括应用类别以及业务应用,例如当应用类型为搜索应用时,业务应用可以是具体的浏览器1(例如ie浏览器)、浏览器2(例如chrome浏览器)以及浏览器3(例如qq浏览器)。
196.本技术实施例提供的零信任网络的访问处理方法,依据管理端下发的用户级策略,终端用户可以通过指定的可信应用访问管理员配置的业务系统。
197.下面从技术侧对本技术实施例提供的零信任网络的访问处理方法进行具体说明。
198.示例的,参见图12,图12是本技术实施例提供的零信任网络的访问过程示意图,如图12所示,零信任网络客户端(例如ioa客户端)充当零信任网络安全服务提供方,通过零信任网络代理端和零信任网络网关(例如智能网关)为访问主体通过网络请求访问客体的资源提供统一入口,ioa客户端为统一入口提供鉴权操作,只有通过鉴权的网络请求才能由零信任网络代理端转发至智能网关,通过智能网关代理实际业务系统的访问。
199.示例的,参见图13,图13是本技术实施例提供的零信任网络的访问处理系统的架构示意图,如图13所示,零信任网络的访问处理系统的核心模块主要包括:零信任网络客户端(例如ioa客户端)、零信任网络服务器(例如ioa服务端)、零信任网络代理端(例如全流量代理)和零信任网络网关(例如智能网关),下面分别进行说明。
200.ioa客户端是安装在访问用户(例如公司员工)的工作设备上的安全代理(agent),负责验证设备上的用户可信身份、验证设备是否可信以及应用是否可信;同时,还用于将未知的进程向ioa服务端申请进程送检。
201.零信任网络代理端(proxy)主要用于通过tun/tap虚拟网卡劫持设备流量(例如应用程序发送的访问请求),通过ioa客户端鉴权后负责将应用发送的网络请求转发至智能网关,如果没有鉴权通过,则走直连或者中断连接。
202.智能网关部署在企业应用程序和数据资源的入口,负责对每一个访问企业资源的
会话请求进行验证、授权和转发。
203.ioa服务端主要用于通过策略控制引擎,对业务流量进行安全调度,按照人-设备-业务系统-应用的颗粒度进行授权,其中,ioa服务端包括的身份验证模块用于对访问用户的身份进行验证;设备可信模块用于对设备的硬件信息和设备的安全信息进行验证;应用检测模块用于检测应用进程是否安全,例如是否存在漏洞、是否存在病毒木马等。此外,ioa服务端还会定期向威胁情报云查服务安知或者杀毒引擎(例如tav杀毒引擎)发起文件送检,当识别出恶意进程时,则会通过客户端执行异步阻断操作。
204.总体流程如下:当访问主体通过应用程序发起针对访问客体的网络访问请求时,零信任网络代理端(例如全流量代理)通过tun/tap虚拟网卡劫持应用程序发起的访问请求。如果经过访问控制策略判定是全代理策略类型,则零信任网络代理端向ioa客户端请求票据,ioa客户端进而向ioa服务端申请票据,ioa客户端成功申请到票据后将票据响应给零信任网络代理端,随后,零信任网络代理端将实际的网络访问流量通过物理网卡发送给智能网关,由智能网关代理实际的业务访问;如果经过访问控制策略判定是全直连策略类型,则零信任网络代理端劫持到应用程序发送的网络访问请求后,直接通过物理网卡与对应的目的业务站点进行网络访问和响应过程,实现直连访问。
205.其中,针对全代理策略类型,具体过程如下:ioa客户端首先通过零信任网络代理端劫持到应用程序发起的网络访问请求,接着,零信任网络代理端向ioa客户端发起鉴权请求(即零信任网络代理端向ioa客户端申请本次网络访问请求的凭证),其中,请求参数包括源ip或者域名、源端口、目的ip或者域名、目的端口以及应用程序对应的进程标识符(pid,process identification)。随后,ioa客户端通过零信任网络代理端发送的pid采集进程的md5、进程路径、进程最近修改时间、版权信息以及签名信息等,并且连同零信任网络代理端发送的网络访问请求中携带的源ip或者域名、源端口、目的ip或者域名以及目的端口,向ioa服务端申请票据,如果申请成功,ioa客户端将票据、票据的最大使用次数以及票据的有效时间作为响应返回给零信任网络代理端。此时,零信任网络代理端可以向智能网关发起https请求,在请求的授权(authorization)首部字段中携带了ioa客户端返回的网络请求凭证(即票据),智能网关在接收到零信任网络代理端发送的https请求后,解析出首部字段中的票据,并向ioa服务端请求校验票据,如果校验成功,则智能网关与零信任网络代理端之间成功建立连接,随后零信任网络代理端可以将劫持到的应用程序发起的网络访问请求发送给智能网关,由智能网关转发至对应的业务服务器,代理实际的应用网络访问;如果ioa服务端校验票据失败,则零信任网络代理端与智能网关之间的连接中断,针对访问控制策略以外的应用程序访问特定站点的流量,则通过零信任网络代理端向目标业务服务器发起网络访问请求,以实现直连访问。
206.此外,针对ip形式的站点访问,因为不存在域名解析的过程,因此可以直接被虚拟网卡劫持。但是,如果是域名形式的业务站点,例如“km.oa.com”和“www.crop.com”,由于企业内网域名在公网下可能出现dns解析失败(即解析不出对应的ip)或者dns解析出现域名污染的情况,导致应用程序不会发起后续的网络请求(某个应用程序在发起对域名形式站点的访问时,必须等待dns解析出正确的ip之后,访问行为才能持续进行)。
207.针对上述技术问题,本技术实施例提供的零信任网络的访问处理方法,使用零信任网络代理端通过监听53端口,捕获dns请求,并针对dns请求执行自定义dns解析的逻辑:
即针对每一个请求dns解析的域名,自动生成一个对应的虚拟ip地址(例如“192.168.220.1”),并生成域名与虚拟ip地址之间的映射关系。例如当应用请求针对域名为“www.crop.com”的dns请求时,零信任网络代理端监听53端口,并针对“www.crop.com”自动分配一个对应的虚拟ip地址,例如:“192.168.220.12”,并存储这个域名与虚拟ip地址之间的映射关系:“www.crop.com
”‑“
192.168.220.12”。下面针对自定义dns解析过程进行具体说明。
208.示例的,参见图14,图14是本技术实施例提供的针对网络访问请求携带的域名执行自定义dns逻辑的原理示意图,如图14所示,当某个应用程序针对某个域名形式的业务站点发起网络访问请求时,首先发送dns请求,该dns请求经过虚拟网卡,由零信任网络代理端(例如全流量代理)捕获到,进入零信任网络代理端的自定义dns逻辑中,零信任网络代理端首先根据ioa服务端下发给ioa客户端的访问控制策略(具体访问控制策略要由ioa客户端通过配置同步的方式发送给零信任网络代理端)判定该域名是否需要走代理访问类型(即是否需要通过智能网关代理实际业务站点的访问);如果是,则由自定义dns逻辑分配对应的虚拟ip地址,并在零信任网络代理端中存储虚拟ip地址-域名之间的映射关系;如果不是要走代理访问类型的,则直接转至系统dns执行dns解析,生成系统原生ip地址。
209.下面以应用程序针对域名为“km.oa.com”的业务站点进行访问时,执行自定义dns逻辑为例进行说明。
210.示例的,参见图15,图15是本技术实施例提供的针对网络访问请求携带的域名执行自定义dns逻辑的流程示意图,如图15所示,首先应用程序执行针对域名为“km.oa.com”的dns解析,这个执行dns解析的流量会自动导入到虚拟网卡中,由零信任网络代理端(例如全流量代理)接管dns解析,此时,零信任网络代理端首先会查询访问控制策略,检查该域名是否在访问控制策略中。如果检查到该域名在访问控制策略中,则认为是企业内网域名,执行虚拟ip地址的分配动作;如果该域名不在访问控制策略中,则认为不是内网域名,则发往系统dns执行dns解析,以解析出系统原生ip地址。
211.继续参见图15,零信任网络代理端成功解析出域名“km.oa.com”对应的ip地址为“100.8.0.x”。当零信任网络代理端响应虚拟ip地址或者经由系统dns解析出系统原生ip地址后,将结果通过虚拟网卡响应给应用程序,从而完成应用程序的dns解析过程。同时,零信任网络代理端也会将这个虚拟ip地址(即通过自定义dns逻辑处理的结果)-域名之间的映射或者系统原生ip地址(即系统dns解析的结果)-域名之间的映射关系存储在零信任网络代理端的内存中。
212.应用程序在成功执行dns解析后,紧接着会向dns解析出的ip地址(可能是虚拟ip地址,也可能是经系统dns解析出的系统原生ip地址)发送tcp请求,例如“100.8.0.x”,该tcp请求同样会进入虚拟网卡,由零信任网络代理端捕获,零信任网络代理端会根据ip地址(值是100.8.0.x)反查该域名是在虚拟ip地址-域名映射列表中,还是在系统原生ip地址-域名映射列表中,如果“km.oa.com”在访问控制策略中有配置,则根据该ip地址从虚拟ip地址-域名映射列表中反查到对应的域名,最终获取到该请求对应的域名为“km.oa.com”,从而完成虚拟ip地址-实际域名的查找。
213.通过上述方式,可以解决由于某些企业的内网域名在公网下执行dns解析失败(即解析不出对应的ip地址),或者dns解析出现域名污染,导致应用程序不会发起后续请求的
问题。
214.下面对零信任网络的访问控制策略的具体内容进行介绍。
215.零信任网络的访问控制策略由可达区域(即企业的核心内部站点)配置节点和可信应用(即指定终端用户有权限访问可达区域的安全应用)配置节点构成,如下所示是访问控制策略的一个示例,以及字段的说明(下面的内容中//后面的内容表示对左侧字段的解释说明)。
[0216][0217]
如上示例所示,访问控制策略指定的可访问的企业内部站点是:*.tfs.corp.com
(仅能访问899端口)和*.oa.sof.com(可访问的端口是:443和27800),用户只能通过outlook.exe(版本是4.0.2.132)去访问这两个站点。
[0218]
上述策略示例中"policytype"表示访问控制策略的类型,如果该项的值是"proxy_access"则表示全代理类型策略;如果该项的值是"direct_access"则表示全直连类型策略。
[0219]
全代理类型策略与全直连类型策略的具体说明如下所示,其中终端用户使用某个应用程序a访问某个站点u就称为应用-站点组合。对于全代理类型策略,指定满足策略中的可达区域和可信应用的应用-站点组合才会通过智能网关代理实际业务站点的访问,不满足访问控制策略的应用-站点组合会通过零信任网络代理端直接连接业务站点实现网络访问;而对于全直连类型策略,指定满足策略中的可达区域和可信应用的应用-站点组合才会通过零信任网络代理端直接连接业务站点实现网络访问,对于不满足访问控制策略的应用-站点组合会通过智能网关代理实际业务站点的访问。
[0220]
此外,ioa客户端通过与零信任网络代理端同步直连配置名单和虚拟ip配置名单,实现直连访问类型和代理访问类型之间的灵活切换。其中,直连配置名单表示零信任网络代理端直接连接目标业务站点的类型,不经过智能网关代理。
[0221]
示例的,ioa客户端同步给零信任网络代理端的直连配置名单信息json格式如下:
[0222][0223]
对于命中的域名或者ip,会强制使用全直连类型策略,即强制经由零信任网络代理端直接向目标业务站点发起网络访问,不经过智能网关代理网络访问。也就是说,直连配置名单中的域名均是通过系统dns解析出对应的ip地址,不会经由零信任网络代理端的自定义dns逻辑生成的虚拟ip地址。
[0224]
虚拟ip配置名单表示符合访问控制策略的,且需要被零信任网络代理端的自定义dns逻辑解析成虚拟ip地址的域名列表,其对应的json格式如下:
[0225][0226]
虚拟ip配置名单的内容是访问控制策略中的策略(即零信任网络代理端中的自定义dns逻辑),由企业内部域名站点组成。
[0227]
当访问控制策略是全代理类型策略时,直连配置名单是传递ioa服务端对应的所有后台服务器列表(如果是单机部署,则是单机部署ioa服务端的服务器连接地址,如果是
集群分布式部署,则是所有分布式部署的服务器连接地址列表)以及所有的智能网关连接地址列表,虚拟ip配置名单是传递访问控制策略中所有域名和虚拟ip地址。
[0228]
当访问控制策略是全直连类型策略时,直连配置名单由访问控制策略中的域名信息(不包括策略中的虚拟ip地址),ioa服务端对应的所有服务器列表和所有智能网关连接地址列表所构成,对于虚拟ip配置名单配置为空即可。
[0229]
下面进行举例说明。
[0230]
示例的,假设某企业的管理员配置的ioa服务端的连接地址为“10.80.25.6:8451”、“10.80.25.6:8451”、“www.crop.com:8454”和“km.srp.co.com:8492”,智能网关的连接地址为“www.sg.com:9445”和“crop.sg.com:8492”,访问控制策略的可达区域包括“www.a.com”、“www.b.com”、“www.c.com”、“10.11.56.24”和“10.28.0.12”。
[0231]
当管理员配置的访问控制策略的类型是全代理类型策略时,那么直连配置名单便是ioa服务端对应的所有服务器连接地址列表和智能网关连接地址列表,即“10.80.25.6:8451”、“10.80.25.6:8451”、“www.crop.com:8454”、“km.srp.co.com:8492”、“www.sg.com:9445”和“crop.sg.com:8492”的集合,而虚拟ip配置名单是访问控制策略中的所有域名和ip地址,即“www.a.com”、“www.b.com”、“www.c.com”、“10.11.56.24”和“10.28.0.12”。
[0232]
当管理员配置的访问控制策略的类型是全直连类型策略时,那么直连配置名单便是ioa服务端对应的所有服务器连接地址列表和智能网关连接地址列表、以及访问控制策略中的所有可达区域信息(包括域名类型和ip类型),即“10.80.25.6:8451”、“10.80.25.6:8451”、“www.crop.com:8454”、“km.srp.co.com:8492”、“www.sg.com:9445”、“crop.sg.com:8492”、“www.a.com”、“www.b.com”、“www.c.com”、“10.11.56.24”和“10.28.0.12”的集合,对于虚拟ip配置名单配置为空即可。
[0233]
本技术实施例提供的零信任网络的访问处理方法,结合配置感知变化推送和配置拉取响应两种方式,实现了ioa客户端与零信任网络代理端之间及时而稳定的配置同步逻辑,下面进行具体说明。
[0234]
示例的,参见图16,图16是本技术实施例提供的结合配置感知变化推送和配置拉取响应的方式实现ioa客户端与零信任网络代理端之间配置信息同步的原理示意图,如图16所示,“package1、package2、package3

packagen”表示零信任网络代理端(例如代理客户端)处理的不同的网络数据包;“a、b、c、d
…”
表示代理客户端与ioa客户端执行终端本地进程通信时发送和响应的不同数据包;“trigger”表示触发器;“timer”表示定时器;“policy”表示访问控制策略;“server config”表示ioa服务端对应的连接地址,包括单机部署的连接地址和集群分布式部署场景下的所有服务器连接地址集合;“sg config”表示智能网关的连接地址配置,包括连接协议、连接地址和连接端口;“check”表示检查配置的发送状态;“lastconfig”表示上一次发送的配置;“directsrv”表示直连配置名单;“interdomain”表示虚拟ip配置名单;“state_cache”表示配置发送状态缓存;“hash:state”表示配置的哈希值(hash)与配置发送状态的映射表;“authentication”表示代理客户端推送接口的验证过程;“msgpush”表示执行配置推送。
[0235]
本技术实施例提供的零信任网络的访问处理方法,通过结合推送和拉取两种方式实现配置在零信任网络代理端与ioa客户端之间的快速同步。其中,访问控制策略、ioa服务端的连接地址配置和智能网关配置充当推送的触发器因素。当这三个因素有至少一种发生
变化时,触发ioa客户端拉取最新的配置信息,包括读取并解析访问控制策略、读取最新的ioa服务端的连接地址以及读取和解析最新的智能网关连接配置信息,接着,组合形成当前的虚拟ip配置名单和直连配置名单,并基于配置的内容生成哈希值,然后基于哈希值判断当前配置与ioa客户端的内存中记录的上一次推送的配置的哈希值是否相同,如果不同,则立即执行配置推送;如果当前配置与上一次推送的配置的哈希值相同,则查询上一次配置的推送状态,如果推送状态缓存中与该哈希值对应的配置推送状态是推送失败,或者在推送状态缓存中未找到与该哈希值对应的记录时,则认为当前配置需要执行推送。ioa客户端调用零信任网络代理端的推送接口,对当前的虚拟ip配置名单(interdomain)和直连配置名单(directsrv)执行推送。
[0236]
零信任网络代理端首先对ioa客户端的推送接口调用请求进行鉴权操作,如果鉴权(authentication)失败,则ioa客户端推送失败;如果鉴权成功通过,则零信任网络代理端接收这两种类型的配置,即虚拟ip配置名单(interdomain)和直连配置名单(directsrv),并解析出其中的时间戳和哈希值,对比已经执行过设置操作的历史配置的时间戳,如果当前时间戳比历史配置的时间戳新,则认为当前配置是新配置,进入下一步检查和设置;否则认为是旧配置,忽略即可。
[0237]
零信任网络代理端经检查当前配置是新配置之后,比对当前配置的哈希值与最近一次已设置的历史配置的哈希值是否相同,如果相同,则忽略处理,给ioa客户端响应配置正常设置的结果,以避免反复设置同样的配置,影响网络访问,例如清除已有dns缓存、或者刷新新的虚拟ip列表引起的网络抖动;如果不相同,零信任网络代理端执行配置的刷新操作,同时,将设置的结果响应给ioa客户端,ioa客户端根据零信任网络代理端响应的结果构建推送状态缓存。
[0238]
推送状态缓存可以由多个缓存项构成,各缓存项由缓存对应的哈希值和推送状态构成,形成键-值(key-value)对的结构,其中key是配置信息对应的哈希值,value包括配置信息的推送时间戳和推送状态,其中,推送状态包括状态未知、待推送状态、推送成功和推送失败。ioa客户端在接收到零信任网络代理端响应的结果后,构建推送状态缓存。此外,针对特定时间戳t和特定哈希值h的配置信息推送,如果零信任网络代理端成功进行了配置信息的接收和设置,则ioa客户端首先查找推送状态缓存中是否存在与特定哈希值h对应的缓存记录,如果存在对应的缓存记录,则更新特定哈希值h对应的推送状态。如果没有查找到与特定哈希值h对应的缓存记录,则进一步检查缓存项的数量是否超出设定的最大值,如果超出最大值,则遍历缓存记录,根据推送时间戳删除预设数量(例如1/2)的历史缓存记录。在当前缓存记录的数量小于缓存最大值的情况下,推送状态缓存自动新建与特定哈希值h和特定时间戳t对应的缓存项。
[0239]
此外,当某一次推送配置没有成功时,则ioa客户端自动进入推送重试状态,在达到最大重试次数,例如3次后,如果还是推送失败,则停止推送,并将最后一次的推送结果记录至推送状态缓存中。
[0240]
示例的,继续参见图16,在访问控制策略、ioa服务端连接地址配置和智能网关连接地址配置这3个配置推送的触发器因素触发的配置推送出现失败的情况下,为了提高配置的同步效率和可用性,还可以通过设置定时器周期性检查和推送配置,具体过程如下:
[0241]
ioa客户端首先从ioa服务端读取并解析最新的访问控制策略、读取最新的ioa服
务端连接地址以及读取和解析最新的智能网关配置,组合形成当前的虚拟ip配置名单和直连配置名单,并基于配置的内容生成哈希值,然后基于哈希值判断当前配置与ioa客户端内存中记录的上一次推送的配置信息的哈希值是否相同,如果不同,则立即执行配置推送;如果当前配置信息与上一次推送的配置信息的哈希值相同,则查询到上一次配置的推送状态,如果推送状态缓存中与该哈希值对应的配置推送状态是推送失败,或者在推送状态缓存中未找到与该哈希值对应的推送记录时,则认为当前配置需要执行推送。此时,ioa客户端可以调用零信任网络代理端的推送接口,对当前的虚拟ip配置名单(interdomain)和直连配置名单(directsrv)执行推送。ioa客户端通过零信任网络代理端的推送接口鉴权后,才能够成功调用零信任网络代理端的推送接口,并接收零信任网络代理端的响应结果,并基于该结果调整推送状态缓存。
[0242]
需要说明的是,可能存在因触发机制而执行配置推送的过程与通过设置定时器周期检查和推送配置的过程并行执行的情况,为了实现配置的精准同步和避免出错,因此,需要确保推送状态缓存项的增加、修改和删除均支持线程安全。零信任网络代理端在同时接收到多份配置时,根据配置信息的时间戳选取最新的配置信息进行设置,以及通过哈希值避免短时间内反复设置同一份配置信息,导致的性能消耗和网络抖动问题。
[0243]
以上介绍了ioa客户端同零信任网络代理端之间的配置信息推送的方案,虽然通过结合触发因素主动推送和设置定时器周期检查和推送这两种方式,但是还是不能保证ioa客户端的配置信息能够百分之百地推送成功,仍有一定几率出现推送失败的情况。为了解决ioa客户端主动推送失败的问题,以进一步提高配置信息同步的成功率,本技术实施例提供的零信任网络的访问处理方法,还可以将零信任网络代理端周期性拉取ioa客户端的配置信息作为兜底方案。如图16所示,ioa客户端通过网络接收到ioa服务端下发的服务器连接地址配置信息、智能网关连接地址配置信息和访问控制策略后,零信任网络代理端可以通过设置一个高频率(例如每隔5分钟发送一次)周期性向ioa客户端发起配置信息拉取请求,ioa客户端解析配置信息,并给零信任网络代理端响应最新的配置信息。当零信任网络代理端成功接收到ioa客户端响应的配置信息后,可调整成低频率(例如每隔半个小时发送一次),如此,在降低消耗的同时,实现了配置信息时效性的检测和更新设置,同时,也实现了与配置信息推送机制相补充的兜底机制。也就是说,本技术实施例提供的零信任网络的访问处理方法,通过结合ioa客户端主动推送和零信任网络代理端主动拉取的机制,可实现较高的配置同步成功率,避免了相关技术提供的方案存在的配置信息更新及时性较低、配置同步出错率高、配置拉取不及时(频率设置低的情况)或者资源消耗过大(频率设置较高的情况)的问题。
[0244]
本技术实施例提供的零信任网络的访问处理方法,解决了全直连类型策略和全代理类型策略之间切换导致的网络访问中断或抖动的问题,同时优化了管控端调整访问控制策略后终端生效慢的问题。在零信任网络访问架构中,终端用户的网络访问操作受访问控制策略的控制和影响。本技术实施例提供的零信任网络的访问处理方法,支持管理员在全直连类型策略和全代理类型策略之间的灵活切换,且通过一种基于配置变动、时间戳和配置哈希值即时实现零信任组件(例如零信任网络代理端和ioa客户端)之间网络访问配置信息同步的方案。相较于相关技术提供的仅依靠周期性拉取配置信息的方案,本技术实施例提供的零信任网络的访问处理方法,能够提高配置信息同步的效率,缩短终端响应时间,以
及提高网络访问的稳定性。
[0245]
下面继续说明本技术实施例提供的零信任网络的访问处理装置455实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器450的零信任网络的访问处理装置455中的软件模块可以包括:接收模块4551、获取模块4552、查询模块4553、建立模块4554和发送模块4555。
[0246]
接收模块4551,用于接收应用程序发送的访问请求;获取模块4552,用于从访问请求中获取应用程序需要访问的业务站点的地址;查询模块4553,用于基于应用程序的标识和业务站点的地址,查询零信任网络的访问控制策略,得到应用程序访问业务站点的访问模式;建立模块4554,用于基于访问模式和零信任网络建立应用程序与业务站点之间的通信连接;发送模块4555,用于通过通信连接向业务站点发送访问请求,并通过通信连接向应用程序发送业务站点的访问请求响应。
[0247]
在一些实施例中,零信任网络的访问处理装置455还包括匹配模块4556,用于当访问控制策略为全代理类型策略时,将应用程序与全代理类型策略中的多个可信应用配置节点分别进行匹配,并将业务站点的地址与全代理类型策略中的多个可达区域配置节点分别匹配;其中,可信应用配置节点包括允许来访的应用程序的多个特征字段,可达区域配置节点包括允许访问的业务站点的多个特征字段;零信任网络的访问处理装置455还包括确定模块4557,用于当存在与应用程序匹配的可信应用配置节点、且存在与业务站点的地址匹配的可达区域配置节点时,确定应用程序访问业务站点的访问模式为代理访问;以及用于当不存在与应用程序匹配的可信应用配置节点、或不存在与业务站点的地址匹配的可达区域配置节点时,确定应用程序访问业务站点的访问模式为直连访问。
[0248]
在一些实施例中,匹配模块4556,还用于当访问控制策略为全直连类型策略时,将应用程序与全直连类型策略中的多个可信应用配置节点分别进行匹配,并将业务站点的地址与全直连类型策略中的多个可达区域配置节点分别进行匹配;其中,可信应用配置节点包括允许来访的应用程序的多个特征字段,可达区域配置节点包括允许访问的业务站点的多个特征字段;确定模块4557,还用于当存在与应用程序匹配的可信应用配置节点、且存在与业务站点的地址匹配的可达区域配置节点时,确定应用程序访问业务站点的访问模式为直连访问;以及用于当不存在与应用程序匹配的可信应用配置节点、或不存在与业务站点的地址匹配的可达区域配置节点时,确定应用程序访问业务站点的访问模式为代理访问。
[0249]
在一些实施例中,当访问控制策略包括直连配置名单时,匹配模块4556,还用于将业务站点的地址与直连配置名单进行匹配;确定模块4557,还用于当直连配置名单中存在业务站点的地址时,确定应用程序访问业务站点的访问模式为直连访问。
[0250]
在一些实施例中,当访问控制策略包括虚拟网际协议ip配置名单时,匹配模块4556,还用于将业务站点的地址与虚拟ip配置名单进行匹配;确定模块4557,还用于当虚拟ip配置名单中存在业务站点的地址时,确定应用程序访问业务站点的访问模式为代理访问。
[0251]
在一些实施例中,零信任网络的访问处理装置455还包括推送装置4558,用于当配置信息发生更新时,通过零信任网络服务器将更新后的配置信息推送至零信任网络客户端,以使零信任网络客户端将更新后的配置信息发送至零信任网络代理端;其中,配置信息包括以下至少之一:访问控制策略、零信任网络服务器的连接地址、零信任网络网关的连接
配置信息。
[0252]
在一些实施例中,零信任网络的访问处理装置455还包括构建模块4559,用于基于零信任网络代理端的响应结果,构建推送状态缓存;其中,响应结果是零信任网络代理端基于更新后的配置信息进行设置后生成的,推送状态缓存采用键值对的形式,且键值对以更新后的配置信息对应的哈希值为键、以更新后的配置信息对应的推送时间戳和推送状态为值;其中,推送状态包括以下至少之一:状态未知、待推送状态、推送成功、推送失败。
[0253]
在一些实施例中,构建模块4559,还用于针对特定时间戳和特定哈希值对应的配置信息,执行以下处理:当零信任网络代理端成功接收且设置配置信息时,基于特定哈希值查询推送状态缓存;当推送状态缓存中存在与特定哈希值对应的缓存记录时,对特定哈希值对应的推送状态进行更新;当推送状态缓存中不存在与特定哈希值对应的缓存记录时,确定推送状态缓存包括的缓存项的数量;当缓存项的数量大于数量阈值时,根据推送时间戳删除预设数量的缓存项,并在经过删除后的推送状态缓存中建立与特定哈希值以及特定时间戳对应的缓存项。
[0254]
在一些实施例中,发送模块4555,还用于当零信任网络服务器推送更新后的配置信息失败时,通过零信任网络客户端周期性向零信任网络服务器发送配置信息获取请求,并将零信任网络服务器返回的更新后的配置信息发送至零信任网络代理端。
[0255]
在一些实施例中,发送模块4555,还用于当零信任网络代理端获取更新后的配置信息失败时,通过零信任网络代理端以第一频率周期性向零信任网络客户端发送配置信息获取请求;当零信任网络代理端接收到零信任网络客户端从零信任网络服务器获取的更新后的配置信息时,通过零信任网络代理端继续以第二频率周期性向零信任网络客户端发送获取请求,以请求获取再次更新后的配置信息;其中,第一频率大于第二频率。
[0256]
在一些实施例中,获取模块4552,还用于当应用程序中未存储有业务站点与网络地址的绑定关系时,监听域名解析端口,以劫持应用程序的域名解析请求,并从域名解析请求中提取业务站点的域名,基于域名查询访问控制策略,得到为域名分配的ip地址;发送模块4551,还用于向应用程序发送ip地址,以使应用程序基于ip地址生成访问请求。
[0257]
在一些实施例中,查询模块4553,还用于当访问控制策略为全代理类型策略时,为域名分配对应的虚拟ip地址;以及用于当访问控制策略为全直连类型策略时,对域名进行解析,得到与域名对应的系统原生ip地址。
[0258]
在一些实施例中,获取模块4552,还用于通过以下方式获取业务站点的域名:将访问请求对应的ip地址与访问控制策略包括的虚拟ip配置名单进行匹配;当虚拟ip配置名单中存在ip地址时,基于ip地址查询虚拟ip地址与域名之间的映射名单,得到业务站点的域名;当虚拟ip配置名单中不存在ip地址时,基于ip地址查询系统原生ip地址与域名之间的映射名单,得到业务站点的域名。
[0259]
在一些实施例中,获取模块4552,还用于当访问模式为代理访问时,获取访问请求的凭证;发送模块4555,还用于将凭证通过零信任网络网关转发至零信任网络服务器,以使零信任网络服务器对凭证进行校验,得到校验结果;建立模块4554,还用于当校验结果表征凭证校验成功时,通过零信任网络网关向业务站点发送凭证和访问请求,以建立应用程序与业务站点之间、并经由零信任网络网关进行代理访问的通信连接;以及用于当校验结果表征凭证校验失败时,通过零信任网络网关将访问请求转发到业务站点,以建立应用程序
与业务站点之间的直连的通信连接。
[0260]
在一些实施例中,接收模块4551,还用于通过零信任网络代理端运行的虚拟网卡,劫持应用程序发送的访问请求;获取模块4552,还用于通过零信任网络客户端提取访问请求的请求参数,基于请求参数向零信任网络服务器发送凭证请求,并接收零信任网络服务器返回的凭证。
[0261]
在一些实施例中,请求参数包括:应用程序的地址和端口、业务站点的地址和端口、应用程序的标识;发送模块4555,还用于通过零信任网络代理端向零信任网络客户端发送请求参数,以使零信任网络客户端基于请求参数中的应用程序的标识,获取应用的特征信息;以及用于通过零信任网络客户端向零信任网络服务器发送凭证请求,其中,凭证请求携带应用程序的地址和端口、业务站点的地址和端口、以及特征信息,以使零信任网络服务器进行鉴权处理,并在鉴权通过时向零信任网络客户端返回凭证。
[0262]
在一些实施例中,获取模块4552,还用于当访问模式为直连访问时,通过零信任网络客户端获取访问请求的凭证;发送模块4555,还用于经由零信任网络网关将凭证转发至零信任网络服务器,以使零信任网络服务器对凭证进行校验,得到校验结果;建立模块4554,还用于当校验结果表征凭证校验成功时,通过零信任网络网关向业务站点转发凭证和网络请求,以建立应用程序与业务站点之间的直连的通信连接。
[0263]
需要说明的是,本技术实施例装置的描述,与上述方法实施例的描述和类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本技术实施例提供的零信任网络的访问处理装置中未尽的技术细节,可以根据图3a、图3b、图4、或图5任一附图的说明而理解。
[0264]
本技术实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备(例如计算机设备)的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行本技术实施例上述的零信任网络的访问处理方法。
[0265]
本技术实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本技术实施例提供的方法,例如,如图3a、图3b、图4、或图5任一附图示出的零信任网络的访问处理方法。
[0266]
在一些实施例中,计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、闪存、磁表面存储器、光盘、或cd-rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
[0267]
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
[0268]
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hyper text markup language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
[0269]
作为示例,可执行指令可被部署为在一个电子设备(例如电子设备)上执行,或者在位于一个地点的多个电子设备上执行,又或者,在分布在多个地点且通过通信网络互连
的多个电子设备上执行。
[0270]
综上所述,本技术实施例提供的零信任网络的访问处理方法,解决了全直连类型策略和全代理类型策略之间切换导致的网络访问中断或抖动的问题,同时优化了管控端调整零信任访问控制策略后终端生效慢的问题。在零信任网络访问架构中,终端用户的网络访问操作受零信任访问控制策略的控制和影响。本技术实施例提供的零信任网络的访问处理方法,支持管理员在全直连类型策略和全代理类型策略之间的灵活切换,通过一种基于配置变动、时间戳和配置哈希值即时实现零信任组件(例如零信任网络代理端和零信任网络客户端)之间网络访问配置信息快速同步的方案。相较于相关技术提供的仅依靠周期性拉取配置信息的方案,本技术实施例提供的零信任网络的访问处理方法,能够提高配置信息同步的效率,缩短终端响应时间,以及提高网络访问的稳定性。
[0271]
以上所述,仅为本技术的实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本技术的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献