网络访问管理方法及相关设备与流程

文档序号:31055025发布日期:2022-08-09 16:35阅读:68来源:国知局
1.本公开涉及计算机和通信
技术领域
:,具体而言,涉及一种网络访问管理方法及装置、计算机可读存储介质、电子设备。
背景技术
::2.随着信息技术的迅速发展与广泛应用,人类社会已经进入了一个崭新的互联网时代。一方面,人们享受着互联网科技带来的便利;另一方面,由网络和信息系统构成的网络空间也面临着日益严峻的安全问题。信任是网络空间中安全交互的基础,但随着软件复杂度和攻击水平的提高,移动环境和云平台的安全对硬件和平台安全机制的需要更加迫切。3.企业中的网络安全管理面临一个两难问题:一方面需要严格控制主机网络通信行为;另一方面,为了支持大量新型客户端应用程序,通常不得不放松防火墙策略。然而,宽松的防火墙策略使得未知的客户端应用程序可能将数据泄露。4.同时,当前的防火墙策略只能以粗粒度的协议或端口号等进行配置,即只能做到ip(internetprotocol,网际互联协议)端口细粒度,这些很容易被恶意应用程序(简称为恶意程序)规避和模仿,且由于已知的应用程序对应的ip端口被认为是可信的,但当该已知的应用程序被攻击后,由于默认对应的ip端口是可信的,会导致无法对已知的应用程序被攻击后的流量进行识别。5.因此,需要一种新的网络访问管理方法及装置、计算机可读存储介质、电子设备。6.需要说明的是,在上述
背景技术
:部分公开的信息仅用于加强对本公开的背景的理解。技术实现要素:7.本公开实施例提供一种网络访问管理方法及装置、计算机可读存储介质、电子设备,能够基于应用程序细粒度提高网络访问的安全性。8.本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。9.本公开实施例提供一种网络访问管理方法,应用于不可信客户端,所述不可信客户端包括认证客户端应用程序,所述认证客户端应用程序被隔离加载在提供可信运行环境的目标容器中。所述方法包括:所述认证客户端应用程序向所述可信运行环境发送待发送应用程序数据,所述待发送应用程序数据采用目标传输层协议,所述待发送应用程序数据包括发送源地址和发送目的地址,所述发送源地址包括认证客户端应用程序标识;在所述可信运行环境中,对所述待发送应用程序数据进行处理,生成待发送目标传输层安全协议数据包;确定所述目标容器与位于网关的服务端之间的目标传输层安全协议隧道;通过所述目标传输层安全协议隧道将所述待发送目标传输层安全协议数据包转发至所述服务端,以便所述服务端根据所述发送源地址中的所述认证客户端应用程序标识确定与所述认证客户端应用程序关联的防火墙规则,并根据与所述认证客户端应用程序关联的防火墙规则将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的目标接收设备。10.本公开实施例提供一种网络访问管理方法,应用于位于网关的服务端。所述方法包括:通过所述服务端与目标容器之间的目标传输层安全协议隧道接收不可信客户端发送的待发送目标传输层安全协议数据包,其中所述不可信客户端包括认证客户端应用程序,所述认证客户端应用程序被隔离加载在提供可信运行环境的所述目标容器中,所述待发送目标传输层安全协议数据包包括发送源地址和发送目的地址,所述发送源地址包括认证客户端应用程序标识;根据所述发送源地址中的所述认证客户端应用程序标识确定与所述认证客户端应用程序关联的防火墙规则;根据与所述认证客户端应用程序关联的防火墙规则将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的目标接收设备。11.本公开实施例提供一种网络访问管理装置,应用于不可信客户端,所述不可信客户端包括认证客户端应用程序,所述认证客户端应用程序被隔离加载在提供可信运行环境的目标容器中。所述装置包括:待发送应用程序数据发送单元,用于所述认证客户端应用程序向所述可信运行环境发送待发送应用程序数据,所述待发送应用程序数据采用目标传输层协议,所述待发送应用程序数据包括发送源地址和发送目的地址,所述发送源地址包括认证客户端应用程序标识;传输层安全协议数据包生成单元,用于在所述可信运行环境中,对所述待发送应用程序数据进行处理,生成待发送目标传输层安全协议数据包;传输层安全协议隧道确定单元,用于确定所述目标容器与位于网关的服务端之间的目标传输层安全协议隧道;安全协议数据包转发单元,用于通过所述目标传输层安全协议隧道将所述待发送目标传输层安全协议数据包转发至所述服务端,以便所述服务端根据所述发送源地址中的所述认证客户端应用程序标识确定与所述认证客户端应用程序关联的防火墙规则,并根据与所述认证客户端应用程序关联的防火墙规则将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的目标接收设备。12.本公开实施例提供一种网络访问管理装置,应用于位于网关的服务端。所述装置包括:安全协议数据包接收单元,用于通过所述服务端与目标容器之间的目标传输层安全协议隧道接收不可信客户端发送的待发送目标传输层安全协议数据包,其中所述不可信客户端包括认证客户端应用程序,所述认证客户端应用程序被隔离加载在提供可信运行环境的所述目标容器中,所述待发送目标传输层安全协议数据包包括发送源地址和发送目的地址,所述发送源地址包括认证客户端应用程序标识;防火墙规则确定单元,用于根据所述发送源地址中的所述认证客户端应用程序标识确定与所述认证客户端应用程序关联的防火墙规则;传输层安全协议数据包路由单元,用于根据与所述认证客户端应用程序关联的防火墙规则将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的目标接收设备。13.本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中所述的网络访问管理方法。14.本公开实施例提供了一种电子设备,包括:至少一个处理器;存储装置,配置为存储至少一个程序,当所述至少一个程序被所述至少一个处理器执行时,使得所述至少一个处理器实现如上述实施例中所述的网络访问管理方法。15.在本公开的一些实施例所提供的技术方案中,通过将不可信客户端中的认证客户端应用程序部署在提供可信运行环境的目标容器中,使得认证客户端应用程序在可信运行环境中运行,并建立该目标容器与位于网关的服务端之间的基于认证的目标传输层安全协议隧道,利用该目标传输层安全协议隧道来传输该认证客户端应用程序发送的待发送应用程序数据,且在该待发送应用程序数据的发送源地址中绑定该认证客户端应用程序的认证客户端应用程序标识,一方面,使得位于网关的服务端可以准确可靠地将网络通信行为或者网络通信流量与特定的认证客户端应用程序关联起来,能够为每个认证客户端应用程序定制通信策略,保证位于网关的服务端能够在每个认证客户端应用程序的基础上管理网络访问,可以提供基于应用程序细粒度的安全网关解决方案;另一方面,可以有效地减少被保护的认证客户端应用程序的流量被攻击的风险。16.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明17.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:18.图1示意性示出了根据本公开的一实施例的网络访问管理方法的流程图。19.图2示意性示出了根据本公开的一实施例的不可信客户端的框图。20.图3示意性示出了根据本公开的一实施例的服务端的框图。21.图4示意性示出了根据本公开的一实施例的网络访问管理方法的架构图。22.图5示意性示出了根据本公开的一实施例的网络访问管理方法的企业逻辑拓扑图。23.图6示意性示出了根据本公开的一实施例的应用网络访问管理方法的流量处理示意图。24.图7示意性示出了根据本公开的一实施例的网络访问管理方法的流程图。25.图8示意性示出了根据本公开的一实施例的网络访问管理装置的框图。26.图9示意性示出了根据本公开的一实施例的网络访问管理装置的框图。27.图10示出了适于用来实现本公开实施例的电子设备的结构示意图。具体实施方式28.现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本公开将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。29.本公开所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。30.附图仅为本公开的示意性图解,图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在至少一个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。31.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和步骤,也不是必须按所描述的顺序执行。例如,有的步骤还可以分解,而有的步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。32.本说明书中,用语“一个”、“一”、“该”、“所述”和“至少一个”用以表示存在至少一个要素/组成部分/等;用语“包含”、“包括”和“具有”用以表示开放式的包括在内的意思并且是指除了列出的要素/组成部分/等之外还可存在另外的要素/组成部分/等;用语“第一”、“第二”和“第三”等仅作为标记使用,不是对其对象的数量限制。33.首先对本公开实施例中提及的部分术语进行说明。34.sgx(softwareguardextensions,软件保护扩展):可以用于保护选定的代码和数据不被泄露和修改。开发者可以把应用程序划分到cpu(centralprocessingunit,中央处理器)强化的enclave(目标容器)中或者内存中可执行的保护区域,即使在受攻击的平台中也能提高安全性。使用这种新的应用层可信运行环境,开发者能够启用身份和记录隐私、安全浏览和数字管理保护(drm,digitalrightsmanagement)或者任何需要安全存储机密或者保护数据的高保障安全应用场景中。sgx旨在以硬件安全为强制性保障,不依赖于固件和软件的安全状态,提供用户空间的可信运行环境,通过一组新的指令集扩展与访问控制机制,实现不同程序间的隔离运行,保障用户关键代码和数据的机密性与完整性不受恶意软件的破坏。35.dtls(datagramtransportlayersecurity,数据包传输层安全协议):是一种通信协议,提供udp(userdatagramprotocol,用户数据包协议)协议在传输层的发送安全。它能够提供与tls(transportlayersecurity,传输层安全协议)类似的安全保护。dtls常用于流媒体。其中,使用udp传输的应用程序可以包括实时视频会议、internet(互联网)电话和在线游戏等,这些应用程序都是延迟敏感的。tcp(transmissioncontrolprotocol,传输控制协议)之上的应用程序可以用tls来保证安全,但tls不能用来保证udp上传输的数据的安全。36.lwip(lightweightip,轻型网际互联协议):是一个小型开源的tcp/ip协议栈,有无操作系统的支持都可以运行。lwip实现的重点是在保持tcp协议主要功能的基础上减少对ram(randomaccessmemory,随机存取存储器)的占用,这使lwip协议栈适合在资源有限的嵌入式系统中使用。37.imap(internetmessageaccessprotocol,互联网消息访问协议,以前称作交互邮件访问协议(interactivemailaccessprotocol)):是一个应用层协议,是一种邮件获取协议。它的主要作用是邮件客户端可以通过这种协议从邮件服务器上获取邮件的信息,下载邮件等。imap协议运行在tcp/ip协议之上,使用的端口是143。38.smtp(simplemailtransferprotocol,简单邮件传输协议),是一种提供可靠且有效的电子邮件传输的协议。smtp是建立在ftp(filetransferprotocol,文件传输协议)文件传输服务上的一种邮件服务,主要用于系统之间的邮件信息传递,并提供有关来信的通知。使用smtp,可实现相同网络处理进程之间的邮件传输,也可通过中继器或网关实现某处理进程与其他网络之间的邮件传输。39.dns(domainnamesystem,域名系统):是互联网的一项服务。它作为将域名和ip地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。dns使用tcp和udp端口53。40.ldap(lightweightdirectoryaccessprotocol,轻型目录访问协议):是一个开放的、中立的工业标准的应用协议,通过ip协议提供访问控制和维护分布式信息的目录信息。41.idc(internetdatacenter,互联网数据中心):是指一种拥有完善的设备(包括高速互联网接入带宽、高性能局域网络、安全可靠的机房环境等)、专业化的管理、完善的应用的服务平台。在这个平台基础上,idc服务商为客户提供互联网基础平台服务(服务器托管、虚拟主机、邮件缓存、虚拟邮件等)以及各种增值服务(场地的租用服务、域名系统服务、负载均衡系统、数据库系统、数据备份服务等)。42.dmz(demilitarizedzone,隔离区,也称非军事化区):是为了解决安装防火墙后外部网络的访问用户不能访问内部网络服务器(简称内网服务器)的问题,而设立的一个非安全系统与安全系统之间的缓冲区。该缓冲区位于企业内部网络和外部网络之间的小网络区域内。在这个小网络区域内可以放置一些必须公开的服务器设施,如企业web(网络)服务器、ftp服务器等。另一方面,通过这样一个dmz区域,更加有效地保护了内部网络。因为这种网络部署,比起一般的防火墙方案,对来自外网的攻击者来说又多了一道关卡。43.下面结合附图对本公开示例实施方式进行详细说明。44.基于上述相关技术中存在的技术问题,本公开实施例提出了一种网络访问管理方法,以用于至少部分解决上述问题。本公开各实施例提供的方法可以由任意的电子设备来执行,例如位于网关的服务端或者服务器,或者安装有客户端的终端,或者服务端与终端之间进行交互,本公开对此不做限定。45.本公开实施例中提及的服务端和服务器可以是独立的服务器,也可以是多个服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(contentdeliverynetwork,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。46.本公开实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务端或者服务器可以通过有线或无线通信方式进行直接或间接地连接,本公开在此不做限制。47.图1示意性示出了根据本公开的一实施例的网络访问管理方法的流程图。本公开实施例提供的方法可以应用于不可信客户端,所述不可信客户端包括认证客户端应用程序,所述认证客户端应用程序被隔离加载在提供可信运行环境的目标容器中。48.本公开实施例中,不可信客户端从广义上来说,可以将所有的客户端定义为不可信客户端;从狭义上来说,可以将包括恶意程序和/或未知程序的客户端称之为不可信客户端,或者被病毒感染客户端。其中,恶意程序通常是指带有攻击意图所编写的一段程序,例如病毒、木马等,是一种限制对外联网的程序,其对应的流量称之为恶意流量。未知程序是指有联网需求但未经过认证的应用程序,其对应的流量称之为未知流量。不可信客户端可以是任意的一个不可信客户端。49.在实际应用中,可以通过搭建tee(trustedexecutionenvironment,可信运行环境),并将可信应用程序中的受保护代码,在tee中进行隔离,来实现对这些受保护代码的安全防护,这部分被隔离加载在可信运行环境中的可信应用程序称之为认证客户端应用程序、被保护程序、认证应用或者认证的客户端程序,其中,认证客户端应用程序可以是任意的一个认证客户端应用程序。例如,以利用sgx技术来搭建tee为例,基于sgx技术,通常会将设备的cpu作为硬件支撑,来创建称之为enclave的程序作为目标容器,并将需要受到保护的代码隔离加载在enclave程序中,保护其不受到攻击。在实现时,可信应用程序的软件开发者,可以基于特定的tee搭建技术(比如,sgx技术),来开发作为tee的目标容器(如sgx技术中的enclave程序),并将可信应用程序中的受保护代码隔离加载在该目标容器中。50.本公开实施例中,目标容器泛指基于特定的tee搭建技术,搭建出的一个能够为可信应用程序中的受保护代码提供安全保护的隔离的安全运行环境。其中,在实际应用中,目标容器可以是一个以处理器作为底层硬件支撑,且仅能由处理器进行访问的软件环境。例如,以采用sgx技术搭建tee为例,目标容器具体可以是sgx技术中的enclave程序,通常将可信应用程序中的受保护代码隔离加载到enclave程序中,来对上述受保护代码进行安全防护。当然,在实际应用中,也不排除目标容器具体也可以是一个在物理上隔离的硬件环境。比如,目标容器具体可以是一个在物理上隔离的物理芯片,可以将可信应用程序中的受保护代码隔离加载在该物理芯片中,来对受保护代码进行安全防护。其中,需要强调的是,搭建tee所采用的tee搭建技术,在本公开实施例中不进行特别限定,本领域技术人员可以基于实际的开发需求来灵活的选择。不难理解的是,目标容器的具体形态,通常也取决于本领域技术人员所采用的tee搭建技术,也即,目标容器最终是一个隔离的软件环境,还是一个隔离的硬件环境,取决于所采用的tee搭建技术。例如,如果采用sgx技术来搭建tee,则目标容器是一个以cpu作为底层硬件支撑,且仅能由cpu进行访问的隔离的软件环境,即enclave程序。在以下实施例中,将以基于sgx技术来搭建tee为例进行说明,显而易见的,在实际应用中,显然也可以采用其它的tee搭建技术,来搭建tee,例如,还可以诸如trustzone技术,不进行一一例举。51.如图1所示,本公开实施例提供的方法可以包括以下步骤。52.在步骤s110中,所述认证客户端应用程序向所述可信运行环境发送待发送应用程序数据,所述待发送应用程序数据采用目标传输层协议,所述待发送应用程序数据包括发送源地址和发送目的地址,所述发送源地址包括认证客户端应用程序标识。53.本公开实施例中,所述目标传输层协议可以包括tcp协议和/或udp协议,但本公开并不限定于此。54.在示例性实施例中,所述可信运行环境可以包括网络套接字处理模块(socket处理模块)、客户端协议栈和客户端隧道模块(对应下文中的隧道模块1),所述客户端协议栈可以包括目标网际互联协议,所述客户端隧道模块可以采用目标传输层安全协议。所述服务端可以包括服务端隧道模块(对应下文中的隧道模块2)。55.在下面的举例说明中,均以目标网际互联协议为lwip、目标传输层安全协议为dtls协议为例进行举例说明,但本公开并不限定于此。其中,当目标传输层安全协议采用dtls协议时,客户端隧道模块和服务端隧道模块均可以称之为dtls模块,可以基于dtls协议在不可信客户端和位于网关的服务端之间建立基于认证的目标传输层安全协议隧道,也可以称之为dtls隧道。56.其中,在所述认证客户端应用程序向所述可信运行环境发送待发送应用程序数据之前,所述方法还可以包括:利用所述客户端隧道模块与所述服务端隧道模块,建立所述目标容器与所述服务端之间的所述目标传输层安全协议隧道;在所述不可信客户端启动时,接收所述服务端发送的与所述不可信客户端唯一对应的服务端公钥。57.例如,如图3所示,位于网关的服务端可以包括密钥管理模块,可以用于为每个不可信客户端生成单独的服务端公钥和服务端私钥,以便服务端对每个不可信客户端进行单独管理。当不可信客户端启动时,不可信客户端与服务端的密钥管理模块进行交互,服务端将与该不可信客户端对应的服务端公钥传递至该不可信客户端。58.在步骤s120中,在所述可信运行环境中,对所述待发送应用程序数据进行处理,生成待发送目标传输层安全协议数据包。59.其中,在所述可信运行环境中,对所述待发送应用程序数据进行处理,生成待发送目标传输层安全协议数据包,可以包括:利用所述网络套接字处理模块对所述待发送应用程序数据进行网络套接字函数重定向处理,将其重定向至目标网际互联协议应用程序接口函数上;利用所述目标网际互联协议对重定向至所述目标网际互联协议应用程序接口函数上的所述待发送应用程序数据进行分组处理,生成待发送网际互联协议数据包;利用所述目标传输层安全协议封装所述待发送网际互联协议数据包,生成所述待发送目标传输层安全协议数据包。具体可以参照下图6实施例。60.在示例性实施例中,在所述可信运行环境中,对所述待发送应用程序数据进行处理,生成待发送目标传输层安全协议数据包,还可以包括:利用所述服务端公钥加密所述待发送目标传输层安全协议数据包,生成加密后的所述待发送目标传输层安全协议数据包。61.在步骤s130中,确定所述目标容器与位于网关的服务端之间的目标传输层安全协议隧道。62.本公开实施例中,每个不可信客户端可以通过其dtls模块1与服务端的dtls模块2建立一一对应的dtls隧道,当确定了不可信客户端的目标容器之后,即可确定目标dtls隧道。63.在步骤s140中,通过所述目标传输层安全协议隧道将所述待发送目标传输层安全协议数据包转发至所述服务端,以便所述服务端根据所述发送源地址中的所述认证客户端应用程序标识确定与所述认证客户端应用程序关联的防火墙规则,并根据与所述认证客户端应用程序关联的防火墙规则将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的目标接收设备。64.其中,通过所述目标传输层安全协议隧道将所述待发送目标传输层安全协议数据包转发至所述服务端,可以包括:将加密后的所述待发送目标传输层安全协议数据包通过所述目标传输层安全协议隧道转发至所述服务端,以便所述服务端接收到加密后的所述待发送目标传输层安全协议数据包,采用与所述服务端公钥对应的服务端私钥对其进行解密。65.在示例性实施例中,所述方法还可以包括:若所述待发送应用程序数据未采用所述目标传输层协议,则通过非网络套接字方式将所述待发送应用程序数据转发至所述服务端。具体可以参照下图6实施例。66.在示例性实施例中,所述目标容器中还可以包括操作系统库,所述目标容器可以位于所述不可信客户端的用户空间,所述不可信客户端还可以包括内核空间。其中,通过所述目标传输层安全协议隧道将所述待发送目标传输层安全协议数据包转发至所述服务端,可以包括:通过所述客户端隧道模块将所述待发送目标传输层安全协议数据包发送至所述操作系统库;所述操作系统库将所述待发送目标传输层安全协议数据包从所述目标网际互联协议应用程序接口函数转换为目标传输层协议发送函数,以将所述待发送目标传输层安全协议数据包通过位于所述内核空间的所述目标传输层安全协议隧道转发至所述服务端。具体可以参照下图6实施例。67.在示例性实施例中,所述方法还可以包括:所述不可信客户端通过所述目标传输层安全协议隧道接收所述服务端发送的待接收目标传输层安全协议数据包;通过所述客户端隧道模块接收并解密所述待接收目标传输层安全协议数据包,获得待接收网际互联协议数据包;通过所述目标网际互联协议对所述待接收网际互联协议数据包进行处理,获得待接收应用程序数据;将所述待接收应用程序发送至所述认证客户端应用程序。68.本公开实施方式提供的网络访问管理方法,通过将不可信客户端中的认证客户端应用程序部署在提供可信运行环境的目标容器中,使得认证客户端应用程序在可信运行环境中运行,并建立该目标容器与位于网关的服务端之间的基于认证的目标传输层安全协议隧道,利用该目标传输层安全协议隧道来传输该认证客户端应用程序发送的待发送应用程序数据,且在该待发送应用程序数据的发送源地址中绑定该认证客户端应用程序的认证客户端应用程序标识,一方面,使得位于网关的服务端可以准确可靠地将网络通信行为或者网络通信流量与特定的认证客户端应用程序关联起来,能够为每个认证客户端应用程序定制通信策略,保证位于网关的服务端能够在每个认证客户端应用程序的基础上管理网络访问,可以提供基于应用程序细粒度的安全网关解决方案;另一方面,可以有效地减少被保护的认证客户端应用程序的流量被攻击的风险。69.本公开实施例提供了一种网络访问管理系统,该网络访问管理系统可以包括不可信客户端和服务端。下面以sgx、lwip和dtls为例进行举例说明。70.图2示意性示出了根据本公开的一实施例的不可信客户端的框图。如图2所示,不可信客户端可以包括sgx模块、dtls模块1、协议栈和安全监控模块。71.其中,sgx模块主要基于sgx为认证客户端应用程序提供隔离的可信执行区域,即可信运行环境,以使得可以执行上述图1实施例中的步骤s110和s120,即不可信客户端中的认证客户端应用程序可以向可信运行环境发送待发送应用程序数据,在所述可信运行环境中,对所述待发送应用程序数据进行处理,生成待发送目标传输层安全协议数据包。sgx模块通过sgxenclave与位于网关的服务端搭建安全信道例如dtls隧道,保护认证客户端应用程序免受攻击,例如不被中间人攻击,避免apt(advancedpersistentthreat,高级可持续威胁攻击)攻击等。72.中间人攻击(man-in-the-middleattack,简称“mitm攻击”)是一种“间接”的入侵攻击,这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。apt指某组织对特定对象展开的持续有效的攻击活动,这种攻击活动具有极强的隐蔽性和针对性,通常会运用受感染的各种介质、供应链和社会工程学等多种手段实施先进的、持久的且有效的威胁和攻击。73.dtls模块1(图6中的隧道模块)用于在认证客户端应用程序与位于网关的服务端之间通过dtls协议搭建安全信道例如dtls隧道,以使得后续可以执行上述图1实施例中的步骤s130,即可以确定目标容器与位于网关的服务端之间的目标传输层安全协议隧道。然后再执行上述图1实施例中的步骤s140,认证客户端应用程序通过该dtls隧道进行数据传输。74.图2中的协议栈可以是基于lwip提供的api(applicationprogramminginterface,应用程序接口)操作。lwip适用于嵌入式系统,比较简洁。75.图2中的安全监控模块主要用于监控不可信客户端本身安全性,可以包含完整性、有无被注入、有无被篡改以及检查进程、地址是否被替换等。76.图3示意性示出了根据本公开的一实施例的服务端的框图。77.如图3所示,服务端可以包括dtls模块2、规则管理模块、密钥管理模块和更新管理模块。78.其中,dtls模块2是为了与上述图2中的dtls模块1一起建立dtls隧道。图3中虽然未示出,但图3的服务端同样包括与不可信客户端一样的协议栈。79.本公开实施例中,每个不可信客户端和服务端都有单独一个密钥对,即服务端针对每个不可信客户端有单独的一个服务端公钥和服务端私钥,每个不可信客户端启动时,通过与服务端的密钥管理模块交互,获得每个不可信客户端单独的服务端公钥,不可信客户端拿到这个服务端公钥可以对数据进行加密,然后服务端用服务端私钥进行解密,以用于认证每个不可信客户端和服务端的身份。80.其中,规则管理模块可以包括维护的应用程序列表,包含允许通信的应用程序(例如下表1中动作为accept的认证应用)和被拉黑的应用程序(例如下表1中动作为reject对应的应用程序);另外还可以包含应用程序内网子网段的管理。81.例如可以为每个源区域例如个人终端(以pc(personalcomputer,个人计算机)机器为例进行举例说明,但本公开并不限定于此)、idc/dmz区域、内网服务器等分区域提供子网段,维护一个列表,在这个列表中包括各个源区域及其对应的子网段,这样可以针对不同的源区域制定不同的通信策略/规则(例如下表1),方便服务端进行有针对性、分区域、更加细粒度的网络访问管理。将这些通信策略/规则存储在服务端,即在服务端的规则管理模块中定义和存储每个特定的认证客户端应用程序的通信规则,网关可以执行更多的功能。82.更新管理模块可以包含两部分:自身组件更新和列表应用漏洞更新。83.其中,自身组件更新(密钥key,程序本身,依赖库,libos(操作系统库))既可以包括服务端控制自身组件更新,识别版本号,主动更新版本号;也可以包括服务端控制不可信客户端进行更新,例如,不可信客户端向服务端上报进程,当服务端发现不可信客户端的版本号需要升级时,主动让其更新,不可信客户端下载更新后的版本号后,可以通过验证hash(哈希)值来判断下载的更新后的版本号是否被恶意替换,以用于防止被恶意替换。其中,列表应用漏洞更新是指服务端可以主动断开存在有漏洞的应用程序,并且撤销其应用程序与其他内网子网段的连接。84.图4示意性示出了根据本公开的一实施例的网络访问管理方法的架构图。系统整体架构如图4所示,企业内网中位于个人终端源区域对应的内网子网段的被病毒感染客户端(作为不可信客户端)中假设包括恶意程序、未知程序以及处于运行状态的被保护程序(作为认证客户端应用程序)。图4实施例中的其他子网段是指其他源区域例如idc/dmz、内网服务器等所对应的内网子网段。被病毒感染客户端包括sgx模块以提供sgxenclave,将被保护程序封装在sgxenclave中。85.被病毒感染客户端运行时,将被保护程序(这个在企业内网中可以预先确定后安装在sgx中的)包装在操作系统库(与被保护程序一起封装的被保护程序的一些动态链接库或者其他扩展包)中,并将两者组合在sgxenclave中。服务端位于网关处与防火墙协作,对需要保护的被保护程序的流量进行保护。服务端对被保护程序进行身份验证,并在被病毒感染客户端运行时,在被病毒感染客户端和网关之间安全地转发流量。被保护程序的流量不会被篡改、拦截等。86.sgxenclave和服务端之间建立安全的dtls隧道,服务端监听来自信任的被保护程序的流量,以的dtl隧道传输被保护程序的流量。而恶意程序的恶意流量和未知程序的未知流量是默认禁止联网的,是被服务端屏蔽的,即不允许传输至通过互联网连接的外部服务器。87.本公开实施例中,可以使用sgx的远程证明来检查被保护程序的身份,初始化的时候,服务端的密钥管理模块分发服务端公钥,并检查其文件完整性等。还可以验证sgx模块是否运行在可信运行环境下,查看进程列表中有没有反编译软件如debug(调试),有的话就强制停掉。在不可信客户端侧,安全监控模块实时透明地保护被保护程序不受本地系统级攻击者的攻击,以使得当被病毒感染客户端的主机不被攻击者攻陷,防止攻击者通过进程注入等高级手法hook(钩)可信的被保护程序,利用其可信的被保护程序联网的dtls隧道传输数据。88.服务端的规则管理模块对数据及策略的细节处理可以参照图5实施例。89.图5示意性示出了根据本公开的一实施例的网络访问管理方法的企业逻辑拓扑图。90.如图5所示,假设企业内网被划分为个人终端、内网服务器和idc/dmz三个源区域,且这三个源区域之间是彼此隔离的,每个源区域分配一个内网子网段。91.图5中以四个不可信客户端为例,且假设一个不可信客户端以xx浏览器作为认证客户端应用程序,一个不可信客户端以sql客户端作为认证客户端应用程序,一个不可信客户端以邮件客户端作为认证客户端应用程序,一个不可信客户端以ftp客户端作为认证客户端应用程序。可以理解的是,这里仅用于举例说明,实际并不限定于此。经过封装后的xx浏览器、sql客户端、邮件客户端、ftp客户端分别安装在各自对应的不可信客户端上,xx浏览器、sql客户端、邮件客户端、ftp客户端分别和网关(可信网关)处的服务端sdk(softwaredevelopmentkit,软件开发工具包)进行密钥交换,搭建一条各自对应的dtls隧道,并分别将xx浏览器、sql客户端、邮件客户端、ftp客户端标识为可信的认证客户端应用程序。92.假设企业逻辑拓扑如图5所示,个人终端通过相应的交换机连接至可信网关的服务端,内网服务器假设包括网络服务器、应用程序服务器、数据库服务器,并分别通过相应的交换机连接至服务端,idc/dmz假设包括网络服务器、ftp服务器、dns服务器和邮件服务器,并分别通过相应的交换机连接至服务端。可以理解的是,图5仅是示例性的。因此,可以设计了一套规则如表1所示:93.表1规则样例[0094][0095]上述表1中,规则1和规则2均是指允许对应的不可信客户端中的认证客户端应用程序连接到外部网络的外部服务器。具体地,规则1是指允许源区域为pc_client(不可信客户端为pc机器)的位于pc上的xx浏览器作为认证应用,通过端口80和443连接到目的区域为$external的外部服务器(即访问的是非内网ip)。规则2是指源区域为pc_client的位于pc上的sql_tls作为认证应用,通过端口3306连接到目的区域为$external的外部服务器。其中$pc_sql_tls表示只有有tls握手过程的才可以连接到外部服务器,否则是明文传输,容易被拦截。[0096]表1中的“new”状态表示可以新建连接,“est”状态是指已经建立连接,可以继续连接。)“*”是代表没限制。[0097]规则3是指认证应用为任意邮件客户端($any_mail),且对其源区域不做限制,允许其通过端口143和993连接到目的区域为$imap的内部服务器(对应内网服务器中的邮件服务器(图5中未示出)),并允许其通过端口465和587连接到目的区域为$smtp的idc/dmz区域服务器(对应图5中的idc/dmz中的邮件服务器)。[0098]规则4-7是指允许外部网络的外部客户端/外部服务器连接到idc/dmz区域的相应服务器。具体地,规则4是指允许源区域为$external的外部客户端/外部服务器$external作为认证应用,通过端口25连接到目的区域为$smtp的idc/dmz区域服务器(对应图5中的idc/dmz中的邮件服务器)。规则5是指不对源区域和认证应用进行限制,允许通过端口53连接到目的区域为$dns的idc/dmz区域服务器(对应图5中的idc/dmz中的dns服务器)。规则6是指不对源区域进行限制,将外部网络中的pc上安装的xx浏览器作为认证应用,允许其通过端口21和20连接到目的区域为$ftp的idc/dmz区域服务器(对应图5中的idc/dmz中的ftp服务器)。规则7是指不对源区域和认证应用进行限制,允许通过端口80和443连接到目的区域为外部网络web服务中提供购物服务的webshop。[0099]规则8-10是指允许认证应用连接到内部服务器和idc/dmz区域服务器。具体地,规则8是指允许源区域为pc_client的位于pc上的xx浏览器作为认证应用,通过端口80和443连接到目的区域为$internet的内网服务器中的网络服务器(web服务器)。规则9是指允许源区域为pc_client的位于pc上的sql客户端作为认证应用,通过端口3306连接到目的区域为$database的内网服务器中的数据库服务器。规则10是指允许源区域为pc_client的位于pc上的enc(ldap认证相关客户端,图5中未示出)作为认证应用,通过端口389和636连接到目的区域为$ldap的idc/dmz区域服务器。[0100]规则11中的是指$server代表内网服务器和idc/dmz区域服务器,即允许内网服务器和idc/dmz区域服务器连接到外部服务器。[0101]规则12:允许上述规则1-11已建立连接的所有通信,而规则13是拒绝任何其他流量的默认策略,即相当于iptables里的规则,默认先拒绝,只有上述规则1-12中有的规则才放过。[0102]下面结合图6对流量处理过程进行举例说明,虽然图6中仅示出了不可信客户端,但服务端的执行过程是与此对应的。[0103]图6示意性示出了根据本公开的一实施例的应用网络访问管理方法的流量处理示意图。[0104]如图6所示,不可信客户端通过替换syscall(systemcalls,系统调用)如udpsend(发送)/recv(接收)等函数,将其转换为sgx的lwipapi处理。在此可信运行环境有一套保护程序来隐藏所有网络i/o(input/output,输入输出)函数。受保护的应用程序即图示中的认证的客户端应用程序所有的网络套接字(socket)函数,将重定向到lwipapi函数上。并且通过sgx内部用户空间调用网络i/o函数。lwip管理app所有请求和连接,并且使用隧道模块1请求和收取关联的ip数据包。为了让各种各样的应用程序运行,又不必直接去操作硬件,在应用程序与硬件之间用内核对底层硬件加以抽象。操作系统和驱动程序运行在内核空间,应用程序(包括认证的客户端应用程序)运行在用户空间。[0105]不可信客户端和服务端传输的ip数据包可以包括采用tcp/udp协议的和非采用tcp/udp协议的,对于采用tcp/udp协议的ip数据包可以采用隧道模块1、lwip和socket处理处理成app数据发送至认证的客户端程序,对于非采用tcp/udp协议的ip数据包可以采用非socket方法传输至认证的客户端应用程序,例如smp(symmetricalmulti-processing,对称多处理)、igmp(internetgroupmanagementprotocol,网际组管理协议)。[0106]对外发包过程如下:认证的客户端应用程序将待发送应用程序数据(app数据)发送至可信运行环境中的socket处理模块,进行网络套接字函数重定向处理,将其重定向至lwipapi函数(即目标网际互联协议应用程序接口函数),利用lwip协议对待发送app数据进行分组处理,生成待发送ip数据包(待发送网际互联协议数据包),隧道模块1用dtls协议封装待发送ip数据包,生成待发送dtls数据包(作为待发送目标传输层安全协议数据包),并通过认证的dtls隧道将其转发到位于网关的服务端。服务端接收dtls数据包,解密包含的待发送ip数据包,然后通过虚拟网络接口将它们传递到网关。然后,网关应用app粒度的防火墙规则,并将待发送ip数据包路由到发送目的地址对应的目标接收设备例如目标外部服务器、目标内网服务器或者目标隔离服务器(目标隔离服务器是指指定的位于idc/dmz区域的服务器)。[0107]图6中的graphene-sgx是sgx上针对认证的客户端应用程序的一个实用的操作系统库。一个功能齐全的操作系统库可以在sgx上快速部署未经修改的应用程序。本公开实施例提供了一个graphene到sgx的端口,以及一些使sgx的安全优势更可用的改进,例如对动态加载库的完整性支持和安全的多进程支持。[0108]收包过程如下:服务端通过虚拟网络接口接收来自网关的对应待接收ip数据包。服务端通过接收目的地址查询防火墙规则,找到与受保护的认证的客户端应用程序相应的dtls隧道,利用dtls协议封装该待接收ip数据包生成待接收dtls数据包,并通过该dtls隧道将待接收dtls数据包发送至不可信客户端。隧道模块1接收并解密该待接收dtls数据包活的待接收ip数据包,并将其放到lwip收取队列中,lwip对待接收ip数据包进行处理,并将所包含的待接收应用程序数据传递给认证的客户端应用程序。[0109]本公开实施方式提供的网络访问管理方法,一方面,能抵御针对sgx保护的不可信客户端流量的攻击,例如降低中间人攻击和apt攻击的风险,但并不限定于此,任何能够将流量和认证客户端应用程序(或其运行时的进程)进行关联标识的应用场景都可以适用,如出口流量审计场景以及acl(accesscontrollists,访问控制列表)等。当某个主机被攻陷后,其可信的认证客户端应用程序不被利用,并且可信的认证客户端应用程序依旧可以有联网行为,而不用直接将该不可信客户端断网。另一方面,让位于网关的服务端能够在应用程序细粒度基础上管理网络访问,防火墙可靠地将网络通信流量与特定的认证客户端应用程序关联。认证客户端应用程序在sgx提供的可信运行环境(sgxenclave)中运行,sgxenclave和网关之间透明地建立一个基于认证的dtls隧道。因为每个dtls隧道与每个认证客户端应用程序是一一对应的,确定了dtls隧道即可确定是哪个认证客户端应用程序,可以将流量准确地关联到其源头的认证客户端应用程序,从而能够在防火墙上执行精细的、为每个认证客户端应用程序定制的通信策略。透明的意思是不管传输的数据是什么,不做解析和解密。[0110]图7示意性示出了根据本公开的一实施例的网络访问管理方法的流程图。图7实施例提供的方法可以应用于位于网关的服务端。如图7所示,本公开实施例提供的方法可以包括以下步骤。[0111]在步骤s710中,通过所述服务端与目标容器之间的目标传输层安全协议隧道接收不可信客户端发送的待发送目标传输层安全协议数据包,其中所述不可信客户端包括认证客户端应用程序,所述认证客户端应用程序被隔离加载在提供可信运行环境的所述目标容器中,所述待发送目标传输层安全协议数据包包括发送源地址和发送目的地址,所述发送源地址包括认证客户端应用程序标识。[0112]在步骤s720中,根据所述发送源地址中的所述认证客户端应用程序标识确定与所述认证客户端应用程序关联的防火墙规则。[0113]在步骤s730中,根据与所述认证客户端应用程序关联的防火墙规则将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的目标接收设备。[0114]在示例性实施例中,所述发送源地址还可以包括所述不可信客户端所属的当前源区域(例如图5中的个人终端),所述当前源区域对应内网子网段,所述目标接收设备包括目标外部服务器(例如可以是图5中位于外部网络的外部服务器),所述目标外部服务器属于外部网络,所述外部网络对应非内网子网段。其中,根据与所述认证客户端应用程序关联的防火墙规则将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的目标接收设备,可以包括:若所述发送源地址中的所述当前源区域和所述认证客户端应用程序标识均与所述防火墙规则(例如表1中的规则1和规则2)中的源区域和认证应用匹配,则判断所述发送目的地址是否与所述防火墙规则中的目的区域匹配;若所述发送目的地址属于所述防火墙规则中的目的区域,且所述目的区域包括所述非内网子网段,则新建所述网关与所述目标外部服务器之间的连接,通过所述防火墙规则中的第一指定端口(例如规则1中的端口80和443,或者规则2中的端口3306)将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的所述目标外部服务器。[0115]在示例性实施例中,所述目标接收设备可以包括目标内网服务器(例如可以是图5中的内网服务器中的任意服务器,如网络服务器、应用程序服务器、数据库服务器等中的一个或者多个),所述目标内网服务器属于内网源区域(例如图5中的内网服务器),所述内网源区域和所述不可信客户端所属的当前源区域之间分属于不同的内网子网段,且彼此之间是隔离的。其中,根据与所述认证客户端应用程序关联的防火墙规则将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的目标接收设备,可以包括:若所述发送源地址中的所述认证客户端应用程序标识与所述防火墙规则(例如表1中的规则3)中的认证应用匹配,则判断所述发送目的地址是否与所述防火墙规则中的目的区域匹配;若所述发送目的地址属于所述防火墙规则中的目的区域,且所述目的区域包括所述目标内网服务器,则新建所述网关与所述目标内网服务器之间的连接,通过所述防火墙规则中的第二指定端口(例如规则3中的端口143和993)将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的所述目标内网服务器。[0116]在示例性实施例中,所述目标接收设备包括目标隔离服务器(例如图5中的idc/dmz区域的任意服务器,例如idc/dmz区域中的网络服务器、ftp服务器、dns服务器和邮件服务器中的任意一个或者多个),所述目标隔离服务器属于隔离源区域(例如图5中的idc/dmz区域),所述隔离源区域和所述不可信客户端所属的当前源区域之间分属于不同的内网子网段,且彼此之间是隔离的。其中,根据与所述认证客户端应用程序关联的防火墙规则将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的目标接收设备,可以包括:若所述发送源地址中的所述认证客户端应用程序标识与所述防火墙规则(例如表1中的规则3)中的认证应用匹配,则判断所述发送目的地址是否与所述防火墙规则中的目的区域匹配;若所述发送目的地址属于所述防火墙规则中的目的区域,且所述目的区域包括所述目标隔离服务器,则新建所述网关与所述目标隔离服务器之间的连接,通过所述防火墙规则中的第三指定端口(例如规则3中的端口465和587)将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的所述目标隔离服务器。[0117]本公开实施例提供的方法具体可以参照上述图1至图6实施例。[0118]本公开实施例提供的方法可以涉及云技术中的云安全。当前,云计算环境需要可信计算的支持,云环境的构建通常使用传统分层的安全模型来保护特权程序免受不可信的应用程序的攻击,但是却不能保护应用程序的数据被特权软件所访问和篡改。这导致云环境下的用户只能被动地相信云服务供应商的硬件和软件的可靠性,以及管理人员不会去窃取自己的私密数据。本公开实施例中,可以利用sgx和dtls技术为应用程序提供一个安全的隔离执行环境,从而防止用户数据被特权软件访问,或是受到基于硬件的攻击(如内存扫描),保护云计算环境安全。[0119]其中,云技术(cloudtechnology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。[0120]云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。[0121]云安全(cloudsecurity)是指基于云计算商业模式应用的安全软件、硬件、用户、机构、安全云平台的总称。云安全融合了并行处理、网格计算、未知病毒行为判断等新兴技术和概念,通过网状的大量客户端对网络中软件行为的异常监测,获取互联网中木马、恶意程序的最新信息,并发送到服务端进行自动分析和处理,再把病毒和木马的解决方案分发到每一个客户端。[0122]云安全主要研究方向包括:1.云计算安全,主要研究如何保障云自身及云上各种应用的安全,包括云计算机系统安全、用户数据的安全存储与隔离、用户接入认证、信息传输安全、网络攻击防护、合规审计等;2.安全基础设施的云化,主要研究如何采用云计算新建与整合安全基础设施资源,优化安全防护机制,包括通过云计算技术构建超大规模安全事件、信息采集与处理平台,实现对海量信息的采集与关联分析,提升全网安全事件把控能力及风险控制能力;3.云安全服务,主要研究各种基于云计算平台为用户提供的安全服务,如防病毒服务等。[0123]图8示意性示出了根据本公开的一实施例的网络访问管理装置的框图。图8实施例提供的网络访问管理装置800可以应用于不可信客户端,所述不可信客户端可以包括认证客户端应用程序,所述认证客户端应用程序可以被隔离加载在提供可信运行环境的目标容器中。[0124]如图8所示,本公开实施例提供的网络访问管理装置800可以包括待发送应用程序数据发送单元810、传输层安全协议数据包生成单元820、传输层安全协议隧道确定单元830以及安全协议数据包转发单元840。[0125]本公开实施例中,待发送应用程序数据发送单元810可以用于所述认证客户端应用程序向所述可信运行环境发送待发送应用程序数据,所述待发送应用程序数据采用目标传输层协议,所述待发送应用程序数据包括发送源地址和发送目的地址,所述发送源地址包括认证客户端应用程序标识。传输层安全协议数据包生成单元820可以用于在所述可信运行环境中,对所述待发送应用程序数据进行处理,生成待发送目标传输层安全协议数据包。传输层安全协议隧道确定单元830可以用于确定所述目标容器与位于网关的服务端之间的目标传输层安全协议隧道。安全协议数据包转发单元840可以用于通过所述目标传输层安全协议隧道将所述待发送目标传输层安全协议数据包转发至所述服务端,以便所述服务端根据所述发送源地址中的所述认证客户端应用程序标识确定与所述认证客户端应用程序关联的防火墙规则,并根据与所述认证客户端应用程序关联的防火墙规则将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的目标接收设备。[0126]在示例性实施例中,所述可信运行环境可以包括网络套接字处理模块、客户端协议栈和客户端隧道模块,所述客户端协议栈可以包括目标网际互联协议,所述客户端隧道模块可以采用目标传输层安全协议;其中,传输层安全协议数据包生成单元820可以包括:重定向单元,可以用于利用所述网络套接字处理模块对所述待发送应用程序数据进行网络套接字函数重定向处理,将其重定向至目标网际互联协议应用程序接口函数上;分组处理单元,可以用于利用所述目标网际互联协议对重定向至所述目标网际互联协议应用程序接口函数上的所述待发送应用程序数据进行分组处理,生成待发送网际互联协议数据包;待发送目标传输层安全协议数据包生成单元,可以用于利用所述目标传输层安全协议封装所述待发送网际互联协议数据包,生成所述待发送目标传输层安全协议数据包。[0127]在示例性实施例中,所述服务端包括服务端隧道模块。其中,在所述认证客户端应用程序向所述可信运行环境发送待发送应用程序数据之前,网络访问管理装置800还可以包括:目标传输层安全协议隧道建立单元,可以用于利用所述客户端隧道模块与所述服务端隧道模块,建立所述目标容器与所述服务端之间的所述目标传输层安全协议隧道;服务端公钥接收单元,可以用于在所述不可信客户端启动时,接收所述服务端发送的与所述不可信客户端唯一对应的服务端公钥。[0128]在示例性实施例中,传输层安全协议数据包生成单元820还可以包括:待发送目标传输层安全协议数据包加密单元,可以用于利用所述服务端公钥加密所述待发送目标传输层安全协议数据包,生成加密后的所述待发送目标传输层安全协议数据包。其中,安全协议数据包转发单元840可以包括:加密待发送目标传输层安全协议数据包转发单元,可以用于将加密后的所述待发送目标传输层安全协议数据包通过所述目标传输层安全协议隧道转发至所述服务端,以便所述服务端接收到加密后的所述待发送目标传输层安全协议数据包,采用与所述服务端公钥对应的服务端私钥对其进行解密。[0129]在示例性实施例中,网络访问管理装置800还可以包括:待发送应用程序数据非网络套接字方式转发单元,可以用于若所述待发送应用程序数据未采用所述目标传输层协议,则通过非网络套接字方式将所述待发送应用程序数据转发至所述服务端。[0130]在示例性实施例中,所述目标容器中还可以包括操作系统库,所述目标容器位于所述不可信客户端的用户空间,所述不可信客户端还可以包括内核空间。其中,安全协议数据包转发单元840可以包括:待发送目标传输层安全协议数据包发送单元,可以用于通过所述客户端隧道模块将所述待发送目标传输层安全协议数据包发送至所述操作系统库;系统调用函数转换单元,可以用于所述操作系统库将所述待发送目标传输层安全协议数据包从所述目标网际互联协议应用程序接口函数转换为目标传输层协议发送函数,以将所述待发送目标传输层安全协议数据包通过位于所述内核空间的所述目标传输层安全协议隧道转发至所述服务端。[0131]在示例性实施例中,网络访问管理装置800还可以包括:待接收目标传输层安全协议数据包接收单元,可以用于所述不可信客户端通过所述目标传输层安全协议隧道接收所述服务端发送的待接收目标传输层安全协议数据包;待接收网际互联协议数据包获得单元,可以用于通过所述客户端隧道模块接收并解密所述待接收目标传输层安全协议数据包,获得待接收网际互联协议数据包;待接收应用程序数据获得单元,可以用于通过所述目标网际互联协议对所述待接收网际互联协议数据包进行处理,获得待接收应用程序数据;待接收应用程序发送单元,可以用于将所述待接收应用程序发送至所述认证客户端应用程序。[0132]本公开实施例的网络访问管理装置的其它内容可以参照上述实施例。[0133]图9示意性示出了根据本公开的一实施例的网络访问管理装置的框图。图9实施例提供的网络访问管理装置900可以应用于位于网关的服务端。如图9所示,本公开实施例提供的网络访问管理装置900可以包括安全协议数据包接收单元910防火墙规则确定单元920以及传输层安全协议数据包路由单元930。本公开实施例中,安全协议数据包接收单元910可以用于通过所述服务端与目标容器之间的目标传输层安全协议隧道接收不可信客户端发送的待发送目标传输层安全协议数据包,其中所述不可信客户端包括认证客户端应用程序,所述认证客户端应用程序被隔离加载在提供可信运行环境的所述目标容器中,所述待发送目标传输层安全协议数据包包括发送源地址和发送目的地址,所述发送源地址包括认证客户端应用程序标识。防火墙规则确定单元920可以用于根据所述发送源地址中的所述认证客户端应用程序标识确定与所述认证客户端应用程序关联的防火墙规则。传输层安全协议数据包路由单元930可以用于根据与所述认证客户端应用程序关联的防火墙规则将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的目标接收设备。[0134]在示例性实施例中,所述发送源地址还可以包括所述不可信客户端所属的当前源区域,所述当前源区域对应内网子网段,所述目标接收设备可以包括目标外部服务器,所述目标外部服务器可以属于外部网络,所述外部网络可以对应非内网子网段。其中,传输层安全协议数据包路由单元930可以包括:发送目的地址匹配目的区域判断单元,可以用于若所述发送源地址中的所述当前源区域和所述认证客户端应用程序标识均与所述防火墙规则中的源区域和认证应用匹配,则判断所述发送目的地址是否与所述防火墙规则中的目的区域匹配;网关与目标外部服务器之间新建连接单元,可以用于若所述发送目的地址属于所述防火墙规则中的目的区域,且所述目的区域包括所述非内网子网段,则新建所述网关与所述目标外部服务器之间的连接,通过所述防火墙规则中的第一指定端口将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的所述目标外部服务器。[0135]在示例性实施例中,所述目标接收设备可以包括目标内网服务器,所述目标内网服务器属于内网源区域,所述内网源区域和所述不可信客户端所属的当前源区域之间分属于不同的内网子网段,且彼此之间是隔离的。其中,传输层安全协议数据包路由单元930可以包括:发送目的地址目的区域匹配判断单元,可以用于若所述发送源地址中的所述认证客户端应用程序标识与所述防火墙规则中的认证应用匹配,则判断所述发送目的地址是否与所述防火墙规则中的目的区域匹配;网关与目标内网服务器之间新建连接单元,可以用于若所述发送目的地址属于所述防火墙规则中的目的区域,且所述目的区域包括所述目标内网服务器,则新建所述网关与所述目标内网服务器之间的连接,通过所述防火墙规则中的第二指定端口将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的所述目标内网服务器。[0136]在示例性实施例中,所述目标接收设备可以包括目标隔离服务器,所述目标隔离服务器属于隔离源区域,所述隔离源区域和所述不可信客户端所属的当前源区域之间分属于不同的内网子网段,且彼此之间是隔离的。其中,传输层安全协议数据包路由单元930可以包括:发送目的地址目的区域判断匹配单元,可以用于若所述发送源地址中的所述认证客户端应用程序标识与所述防火墙规则中的认证应用匹配,则判断所述发送目的地址是否与所述防火墙规则中的目的区域匹配;网关与目标隔离服务器之间新建连接单元,可以用于若所述发送目的地址属于所述防火墙规则中的目的区域,且所述目的区域包括所述目标隔离服务器,则新建所述网关与所述目标隔离服务器之间的连接,通过所述防火墙规则中的第三指定端口将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的所述目标隔离服务器。[0137]本公开实施例的网络访问管理装置的其它内容可以参照上述实施例。[0138]应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。[0139]下面参考图10,其示出了适于用来实现本技术实施例的电子设备的结构示意图。图10示出的电子设备仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。[0140]参照图10,本公开实施例提供的电子设备可以包括:处理器1001、通信接口1002、存储器1003和通信总线1004。其中处理器1001、通信接口1002和存储器1003通过通信总线1004完成相互间的通信。[0141]可选的,通信接口1002可以为通信模块的接口,如gsm(globalsystemformobilecommunications,全球移动通信系统)模块的接口。处理器1001用于执行程序。存储器1003用于存放程序。程序可以包括计算机程序,该计算机程序包括计算机操作指令。其中,程序中可以包括:游戏客户端的程序。处理器1001可以是一个中央处理器cpu,或者是特定集成电路asic(applicationspecificintegratedcircuit),或者是被配置成实施本公开实施例的一个或多个集成电路。存储器1003可以包含高速ram(randomaccessmemory,随机存取存储器)存储器,也可以还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。[0142]其中,程序可具体用于不可信客户端,所述不可信客户端可包括认证客户端应用程序,所述认证客户端应用程序可被隔离加载在提供可信运行环境的目标容器中,程序可具体用于:所述认证客户端应用程序向所述可信运行环境发送待发送应用程序数据,所述待发送应用程序数据采用目标传输层协议,所述待发送应用程序数据包括发送源地址和发送目的地址,所述发送源地址包括认证客户端应用程序标识;在所述可信运行环境中,对所述待发送应用程序数据进行处理,生成待发送目标传输层安全协议数据包;确定所述目标容器与位于网关的服务端之间的目标传输层安全协议隧道;通过所述目标传输层安全协议隧道将所述待发送目标传输层安全协议数据包转发至所述服务端,以便所述服务端根据所述发送源地址中的所述认证客户端应用程序标识确定与所述认证客户端应用程序关联的防火墙规则,并根据与所述认证客户端应用程序关联的防火墙规则将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的目标接收设备。或者,程序可具体用于位于网关的服务端。其中,程序可具体用于:通过所述服务端与目标容器之间的目标传输层安全协议隧道接收不可信客户端发送的待发送目标传输层安全协议数据包,其中所述不可信客户端包括认证客户端应用程序,所述认证客户端应用程序被隔离加载在提供可信运行环境的所述目标容器中,所述待发送目标传输层安全协议数据包包括发送源地址和发送目的地址,所述发送源地址包括认证客户端应用程序标识;根据所述发送源地址中的所述认证客户端应用程序标识确定与所述认证客户端应用程序关联的防火墙规则;根据与所述认证客户端应用程序关联的防火墙规则将所述待发送目标传输层安全协议数据包路由至所述发送目的地址对应的目标接收设备。[0143]根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例的各种可选实现方式中提供的方法。[0144]需要理解的是,在本公开附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本
技术领域
:中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1