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

一种用户隔离方法、数据传输方法、计算设备及存储介质与流程

2022-03-04 23:23:18 来源:中国专利 TAG:

一种用户隔离方法、数据传输方法、计算设备及存储介质
1.本技术是2021年8月30日提交的发明专利申请2021110014941的分案申请。
技术领域
2.本发明涉及通信技术领域,特别涉及一种用户隔离方法、数据传输方法、计算设备及存储介质。


背景技术:

3.通信信道,是数据传输的通路,在计算机网络中通信信道分为物理信道和逻辑信道。物理信道指用于传输数据的物理通路,它由传输介质与有关通信设备组成。逻辑信道指在物理信道的基础上,发送与接收数据的双方通过中间结点所实现的逻辑通路,由此为传输数据形成的逻辑通路。已有技术中,创建的通信信道多为加密信道,例如通过ipsec来创建加密通信信道,此信道可以实现不同安全等级用户之间的通信。例如,终端(即计算设备)a登录的用户是管理员身份,终端b登录的用户是普通用户,此时,终端a和终端b之间可以相互通信。但是,上述方案中,由于不同安全等级用户之间可以相互访问,那么当低安全等级用户访问高安全等级用户的数据时,那么对于高安全等级的用户而言,其数据存在一定的风险。


技术实现要素:

4.为此,本发明提供一种用户隔离方法,以力图解决或者至少缓解上面存在的问题。
5.根据本发明的一个方面,提供了一种用户隔离方法,在客户端中执行,客户端备与控制服务器通信连接,所述方法包括:接收控制服务器发送的第一预设规则,第一预设规则用于区分安全用户和普通用户;响应登录任一应用程序的操作,通过所述第一预设规则判断当前登录用户是否为安全用户,若是,则为当前登录用户分配第一网络资源,若否,则为当前登录用户分配第二网络资源。
6.可选地,第一网络资源为第一网络命名空间,第二网络资源为第二网络命名空间,所述方法还包括步骤:创建第一网络命名空间和第二网络命名空间,第一网络命名空间和第二网络命名空间的网络属于不同的网段。
7.可选地,通过第一预设规则判断当前登录用户是否为安全用户的步骤包括:获取当前登录用户的用户名和登录密码,作为一组键值对;判断当前登录用户的键值对是否满足第一预设规则,若是,则当前登录用户为安全用户,并为安全用户当前登录的应用程序的进程分配第一网络命名空间,若否,则当前登录用户为普通用户,并为普通用户当前登录的应用程序的进程分配第二网络命名空间。
8.可选地,若当前登录用户为普通用户时,为普通用户当前登录的应用程序的进程分配第二网络命名空间的步骤包括:获取本地存储的登录用户键值对;判断当前登录用户的键值对是否存在于本地存储的登录用户键值对中,若是,则当前登录用户为普通用户,并为普通用户当前登录的应用程序的进程分配第二网络命名空间,若否,则登录失败。
9.可选地,第一预设规则为当前登录用户的用户名和登录密码组成的一组键值对存储在可信硬件芯片中。
10.可选地,还包括步骤:创建隔离数据表;获取第一信息,第一信息包括计算设备ip地址、当前登录的应用程序标识、当前登录用户的用户名、用户类别,其中,用户类别包括安全用户和普通用户;将第一信息作为一个数据项,存储至隔离数据表中;将隔离数据表发送至控制服务器。
11.可选地,还包括步骤:当监测到隔离数据表中的任一字段更新时,将更新后的数据项发送至控制服务器,以使控制服务器更新隔离数据表中的对应数据。
12.根据本发明的另一方面,提供一种数据传输方法,在数据传输系统中执行,数据传输系统中包括发送客户端、接收客户端、控制服务器和存储装置,控制服务器分别与发送客户端、接收客户端、存储装置通信连接,发送客户端、接收客户端的当前登录用户按照如上所述的用户隔离方法进行隔离,所述方法包括:发送客户端向控制服务器发送传输数据的请求;控制服务器根据传输数据的请求,确定发送客户端当前登录用户的用户类别、接收客户端当前登录用户的用户类别;控制服务器判断发送客户端当前登录用户、接收客户端当前登录用户是否为同类别用户,若是,则向发送客户端和接收客户端发送允许建立通信信道的通知消息;发送客户端和接收客户端之间建立通信信道;发送客户端通过通信信道与接收客户端进行数据传输。
13.可选地,传输数据的请求中包括接收客户端的客户端ip地址、用户名、当前登录的应用程序标识、发送客户端当前登录用户的用户类别,控制服务器中包括接收客户端的隔离数据表,隔离数据表中包括多个数据项,每一数据项包括客户端ip地址、用户名、当前登录的应用程序标识、用户类别,用户类别包括安全用户和普通用户。
14.可选地,控制服务器根据传输数据的请求,确定发送客户端当前登录用户的用户类别、接收客户端当前登录用户的用户类别的步骤包括:从传输数据请求中获取发送客户端当前登录用户的用户类别;根据客户端ip地址、用户名、当前登录的应用程序标识从控制服务器的隔离数据表中查找接收客户端当前登录用户的用户类别。
15.根据本发明的又一个方面,提供了一种计算设备,包括:至少一个处理器;以及存储器,存储有程序指令,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如上所述方法的指令。
16.根据本发明的又一个方面,提供了一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如上所述的方法。
17.根据本发明的技术方案,提供了一种用户隔离方法,该方法响应登录任一应用程序的操作,通过第一预设规则判断当前登录用户是否为安全用户,若是,则为当前登录用户分配第一网络资源,若否,则为当前登录用户分配第二网络资源。由上述内容可知,本发明为不同安全等级的用户分配不同的网络资源,然而用户需要在同一网络资源中才可进行通信,因此不同安全等级的用户无法之间由于网络资源不同无法进行通信,实现了将不同安全等级的用户进行隔离,以使同一客户端中不同安全等级的用户无法进行数据传输,提高数据安全性。
18.另外,本发明还提供了一种数据传输方法,该方法根据传输数据请求接收客户端的隔离数据表,判断发送客户端、接收客户端是否为同类别用户,若是,则允许发送客户端
和接收客户端之间建立通信信道,从而发送客户端通过通信信道与接收客户端进行数据传输。由上述内容可知,本发明实现了相同用户类别的客户端之间的数据传输,不同用户类别的客户端之间无法进行数据传输,从而避免了因普通用户访问安全用户的数据,使得安全用户的数据存在风险的情况出现,提高了数据传输的安全性。
19.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
20.为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
21.图1示出了根据本发明一个实施例的用户隔离系统100的示意图;
22.图2示出了根据本发明一个实施例的计算设备200的示意图;
23.图3示出了根据本发明一个实施例的用户隔离方法300的流程图;
24.图4示出了根据本发明一个实施例的用户隔离方法的交互图;
25.图5示出了根据本发明一个实施例的数据传输系统500的示意图;
26.图6示出了根据本发明一个实施例的数据传输方法600的流程图;以及
27.图7示出了根据本发明一个实施例的数据传输方法的交互图。
具体实施方式
28.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
29.已有技术中,创建的通信信道多为加密信道,例如通过ipsec来创建加密通信信道,此信道可以实现不同安全等级用户之间的通信。例如,终端(即计算设备)a登录的用户是管理员身份,终端b登录的用户是普通用户,此时,终端a和终端b之间可以相互通信,再如,同一计算设备中不同安全等级用户分配同一网络命名空间,从而同一网络命名空间中的不同安全等级用户之间利用网络资源进行相互访问。但是,上述方案中,由于不同安全等级用户之间可以相互访问,那么当低安全等级用户访问高安全等级用户的数据时,那么对于高安全等级的用户而言,其数据存在一定的安全风险。
30.为了解决上述问题,本发明首先提供了一种用户隔离系统,图1示出了根据本发明一个实施例的用户隔离系统100的示意图,如图1所示,用户隔离系统100包括一个或多个客户端110、控制服务器120和存储装置130,控制服务器120分别与客户端110、存储装置130通信连接,例如通过有线或无线的方式网络连接。
31.控制服务器120用于生成第一预设规则,并发送至任一客户端110,第一预设规则
用于区分安全用户(安全用户即为高安全等级的用户)和普通用户,第一预设规则为当前登录用户的用户名和登录密码组成的键值对存储在可信硬件芯片中。需要说明的是,已有技术中,若用户是安全用户,例如管理员,那么该用户的用户名和登录密码组成的一组键值对会存储在可信硬件芯片中,若不是高安全等级用户,则该用户的用户名和登录密码组成的一组键值对会存储在本地(例如硬盘中)。因此,只要通过判断用户的用户名和登录密码组成的键值对是否存储与可信硬件芯片中,即可判定用户是否为安全用户。
32.任一客户端110接收控制服务器120发送的第一预设规则,创建第一网络命名空间和第二网络命名空间。网络命名空间,可将网络设备、地址、端口、路由、防火墙规则等网络资源进行隔离。任一客户端110响应用户在客户端登录任一应用程序的操作,判断用户的用户名和登录密码组成的键值对是否满足第一预设规则,若是,则说明该用户是安全用户,为安全用户分配第一网络命名空间(即为当前用户登录的应用程序的进程分配第一网络命名空间),若否,说明该用户是普通用户,为普通用户分配第二网络命名空间(即为当前用户登录的应用程序的进程分配第二网络命名空间),而第一网络命名空间和第二网络命名空间的网络不属于同一网段,用户需要在同一网段中才可进行通信,从而将不同安全等级的用户分配在不同的网段中,实现将不同安全等级的用户进行隔离,以使同一客户端中不同安全等级的用户无法进行数据传输,提高数据安全性。
33.客户端110为用户分配网络命名空间后,生成一个隔离数据表,数据表中包括一个或多个数据项,每一数据项包括计算设备ip地址、应用程序标识、用户名、用户类别。也即,每一客户端110会对应有一个隔离数据表。
34.其中,应用程序标识,即用户当前登录的应用程序的标识,应用程序标识可以随意设置,只要满足唯一即可,并且每一客户端都是基于此规则设置应用程序标识,例如将微信标识设置为0001、百度标识设置为0002、美团标识设备为0030、qq标识设置为0018。用户名即登录应用程序时的登录用户的用户名,用户名只要满足唯一即可,本发明对此不做限制,例如,用户名可为手机号、字母与数字的组合等。用户类别包括安全用户和普通用户,安全用户即为高安全级别的用户。客户端110生成隔离数据表后将其发送至控制服务器120,控制服务器再将隔离数据表存储至存储装置130中。隔离数据表的部分内容如表1所示:
35.表1
36.计算设备ip地址应用程序标识用户名用户类别192.168.0.1000118842646023安全用户192.168.1.1880002126458!!普通用户192.168.0.1000030123123 安全用户192.168.2.1010018150194151普通用户
37.在一个实施中,存储装置130可以是数据库,进一步地,数据库可以是关系型数据库,例如mysql、sqlserver、access等,存储装置130的数据库可以是驻留于控制服务器120中的本地数据库,也可以作为分布式数据库例如hbase等设置于多个地理位置处;存储装置130也可以是缓存,例如redis缓存等,总之存储装置130用于存储客户端110的隔离数据表。本发明对存储装置130的具体部署、配置情况不做限制。
38.在一个实施方式中,任一客户端110和控制服务器120可以实现为计算设备。计算设备200可以实现为服务器,例如应用服务器、web服务器等;也可以实现为桌面电脑、笔记
本电脑、处理器芯片、平板电脑等,但不限于此。图2示出了根据本发明一个实施例的计算设备200的结构图。如图2所示,在基本配置202中,计算设备200典型地包括系统存储器206和一个或者多个处理器204。存储器总线208可以用于在处理器204和系统存储器206之间的通信。
39.取决于期望的配置,处理器204可以是任何类型的处理,包括但不限于:微处理器(μp)、微控制器(μc)、数字信息处理器(dsp)或者它们的任何组合。处理器204可以包括诸如一级高速缓存210和二级高速缓存212之类的一个或者多个级别的高速缓存、处理器核心214和寄存器216。示例的处理器核心214可以包括运算逻辑单元(alu)、浮点数单元(fpu)、数字信号处理核心(dsp核心)或者它们的任何组合。示例的存储器控制器218可以与处理器204一起使用,或者在一些实现中,存储器控制器218可以是处理器204的一个内部部分。
40.取决于期望的配置,系统存储器206可以是任意类型的存储器,包括但不限于:易失性存储器(诸如ram)、非易失性存储器(诸如rom、闪存等)或者它们的任何组合。系统存储器206可以包括操作系统220、一个或者多个应用222以及程序数据224。在一些实施方式中,应用222可以布置为在操作系统上利用程序数据224进行操作。程序数据224包括指令,在根据本发明的计算设备200中,程序数据224包含用于执行方法300的指令。
41.计算设备200还包括储存设备232,储存设备232包括可移除储存器236和不可移除储存器238,可移除储存器236和不可移除储存器238均与储存接口总线234连接。本发明中,程序执行过程中发生的各事件的相关数据和指示各事件发生的时间信息,可存储于储存设备232中,操作系统220适于管理储存设备232。其中,储存设备232可为磁盘。
42.计算设备200还可以包括有助于从各种接口设备(例如,输出设备242、外设接口244和通信设备246)到基本配置202经由总线/接口控制器230的通信的接口总线240。示例的输出设备242包括图像处理单元248和音频处理单元250。它们可以被配置为有助于经由一个或者多个a/v端口252与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口244可以包括串行接口控制器254和并行接口控制器256,它们可以被配置为有助于经由一个或者多个i/o端口258和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备246可以包括网络控制器260,其可以被布置为便于经由一个或者多个通信端口264与一个或者多个其他计算设备262通过网络通信链路的通信。
43.网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(rf)、微波、红外(ir)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
44.计算设备200可以实现为服务器,例如文件服务器、数据库服务器、应用程序服务器和web服务器等,也可以实现为小尺寸便携(或者移动)电子设备的一部分,这些电子设备可以是诸如蜂窝电话、个人数字助理(pda)、个人媒体播放器设备、无线网络浏览设备、个人头戴设备、应用专用设备、或者可以包括上面任何功能的混合设备。计算设备200还可以实
现为包括桌面计算机和笔记本计算机配置的个人计算机。在一些实施例中,计算设备200被配置为执行根据本发明的一种用户隔离方法300。
45.图3示出了根据本发明一个实施例的用户隔离方法300的流程图。方法300适于在客户端110中执行,用户隔离方法300包括步骤s310至步骤s350,值得注意的是,步骤s310至步骤s370是在任一客户端110与控制服务器120、存储装置130的工作流程图。
46.首先,在控制服务器120中创建第一预设规则,用于区分安全用户和普通用户,第一预设规则的内容如上所述,此处不再赘述,之后控制服务器120将第一预设规则发送至客户端110。接着在步骤s310中,接收控制服务器120发送的第一预设规则。
47.客户端110接收到第一预设规则后,执行步骤s320,响应登录任一应用程序的操作,通过第一预设规则判断当前登录用户是否为安全用户,若是,执行步骤330,为当前登录用户分配第一网络资源,若否,执行步骤340,为当前登录用户分配第二网络资源。其中,由于网络资源的不同,使得分配第一网络资源的安全用户与分配第二网络资源的普通用户之间无法通信,即将安全用户与普通用户进行隔离。
48.已知网络命名空间具有隔离网络资源的作用,因而在一个实施方式中,第一网络资源为第一网络命名空间,第二网络资源为第二网络命名空间。第一网络命名空间、第二网络命名空间为客户端110预先创建的。第一网络命名空间的网络与第二网络命名空间的网络不属于同一网段,而属于同一网段的用户之间才可进行通信,因此分配第一网络资源的安全用户与分配第二网络资源的普通用户之间无法通信,从而将安全用户与普通用户进行隔离。例如,第一网络命名空间中的网络为vpn网络,第二网络命名空间中的网络为常规网络,例如以太网,vpn网络与普通网络不属于同一网段。
49.值得注意的是,用户登录应用程序后,该应用程序即可代表当前登录的用户,而正在运行的应用程序用进程表示,因此,为用户分配网络命名空间即为应用程序的进行分配网络命名空间,为应用程序的进程分配网络命名空间后,应用程序的进程即可通过网络命名空间的网络资源与其他应用程序的进程通信,即,实现用户之间的数据传输。
50.在一个实施方式中,步骤s320具体包括:响应用户登录客户端110中任一应用程序的操作,客户端110获取当前登录用户的用户名和登录密码,将已获取的当前登录用户的用户名和登录密码,作为一组键值对。之后判断当前登录用户的键值对是否存储在可信硬件芯片中,具体地,首先调用接口get_account_info,再调用接口tpm2_nvread_etc_shadow,从可信硬件芯片中获取存储的键值对,并从中查找当前登录用户的键值对,若查找到,说明当前登录用户的键值对存储在可信硬件芯片中,若未查找到,说明当前登录用户的键值对未存储在可信硬件芯片中。
51.若当前登录用户的键值对存储在可信硬件芯片中,说明当前登录用户为安全用户,并在步骤s330中,为安全用户当前登录的应用程序的进程分配第一网络命名空间,例如,通过接口setns_switch_by_name为安全用户当前登录的应用程序的进程分配第一网络命名空间。实现了将安全用户所登录的应用程序的进程分配第一网络命名空间(安全用户所登录的应用程序的进程使用第一网络命名空间的网络资源),即,第一网络命名空间中应用程序的进程代表的用户均为安全用户。
52.若当前登录用户的键值对没有存储在可信硬件芯片中,由于已有技术中,安全用户的用户名和登录密码组成的键值对存储在可信硬件芯片中,而普通用户的用户名和登录
密码组成的键值对存储在本地中。因此,在当前登录用户的键值对没有存储在可信硬件芯片中时,在步骤s340中,获取本地存储的登录用户键值对,在一个实施方式中,获取硬盘中存储的登录用户键值对(登录用户键值对即用户名和登录密码组成的键值对)。
53.在获取到本地存储的登录用户键值对之后,客户端110继续判断当前登录用户的键值对是否存在于本地存储的登录用户键值对中,若是,说明当前登录用户为普通用户,那么为普通用户当前登录的应用程序的进程分配第二网络命名空间,例如,通过接口setns_switch_by_name为普通用户当前登录的应用程序的进程分配第二网络命名空间。若当前登录用户的键值对不在本地存储的登录用户键值对中,说明用户名或者登录密码错误,或者用户不存在,那么当前用户登录应用程序失败,不分配网络命名空间。
54.基于上述内容,实现了将普通用户所登录的应用程序的进程分配第二网络命名空间(普通用户所登录的应用程序的进程使用第二网络命名空间的网络资源),即,第二网络命名空间中应用程序的进程代表的用户均为普通用户。
55.在为用户当前登录的应用程序的进程分配网络命名空间后,客户端110执行步骤s350,获取第一信息,其中,第一信息包括计算设备ip地址、当前登录的应用程序标识、当前登录用户的用户名、用户类别。计算设备ip地址、当前登录的应用程序标识、当前登录用户的用户名、用户类别上述已介绍,此处不再赘述。
56.随后执行步骤s360,将第一信息作为一个数据项,存储至隔离数据表中。隔离数据表是客户端110预先创建的,在创建完成隔离数据表时,隔离数据表为空。
57.在得到包括客户端110中已登录的所以应用程序相关数据项的隔离数据表后,执行步骤s370,将隔离数据表发送至控制服务器120,从而控制服务器120将隔离数据表存储至存储装置130。
58.值得注意的是,若在客户端110中登录了多个应用程序,那么每登录一次应用程序执行一次步骤s310至步骤s370,从而在登录应用程序过程中,为应用程序的进程分配不同的网络命名空间,并得到所有应用程序对应的第一信息,即得到包括所有已登录应用程序对应数据项的隔离数据表。
59.在一个实施方式中,当客户端110监测到隔离数据表中的任一字段更新时,将更新后的数据项发送至控制服务器120,以使控制服务器更新存储装置130中相应隔离数据表的对应数据。
60.为了更加清楚地说明用户隔离方法的工作过程,下面给出用户隔离方法的完整交互过程。图4示出了根据本发明一个实施例的用户隔离方法的交互图。用户隔离方法包括步骤s401至步骤s416,值得注意的是,步骤s401至步骤s416是在任一客户端110与控制服务器120、存储装置130的完整交互过程。
61.首先在步骤s401中,在控制服务器120中创建第一预设规则,并在步骤s402中,控制服务器120将第一预设规则发送至客户端110。随后在步骤s403中,客户端110创建第一网络命名空间、第二网络命名空间和数据隔离表。
62.当用户登录客户端110中任一应用程序时,执行步骤s404,客户端110响应用户登录客户端110中任一应用程序的操作,获取当前登录用户的用户名和登录密码,接着执行步骤s405,客户端110将已获取的当前登录用户的用户名和登录密码作为一组键值对。
63.之后客户端110继续执行步骤s406,判断当前登录用户的键值对是否存储在可信
硬件芯片中,若是,说明当前登录用户为安全用户,那么客户端110执行步骤s407,为安全用户当前登录的应用程序的进程分配第一网络命名空间,若否,客户端110执行步骤s408,获取本地存储的登录用户键值对。
64.并继续执行步骤s409,判断当前登录用户的键值对是否存在于本地存储的登录用户键值对中,若是,说明当前登录用户为普通用户,那么客户端110继续执行步骤s410,为普通用户当前登录的应用程序的进程分配第二网络命名空间。若否,说明用户名或者登录密码输入错误,或者用户不存在,则当前用户登录应用程序失败。
65.在为用户当前登录的应用程序的进程分配网络命名空间后,客户端110执行步骤s411,获取计算设备ip地址、当前登录的应用程序标识、当前登录用户的用户名、用户类别,客户端110继续执行步骤s412,将计算设备ip地址、应用程序标识、用户名、用户类别作为一个数据项,存储至隔离数据表中。若在客户端110中登录了多个应用程序,那么每登录一次应用程序执行一次步骤s404至步骤s412,从而得到多个数据项,即得到包括所有已登录应用程序对应数据项的隔离数据表。
66.在得到包括客户端110中已登录的所以应用程序相关数据项的隔离数据表后,执行步骤s413,客户端110将隔离数据表发送至控制服务器120。之后,控制服务器120执行步骤s414,将隔离数据表存储至存储装置130。当用户更改用户名时,客户端110监测到用户名的更改操作,执行步骤s415,客户端110将更新后的数据项发送至控制服务器120,最后在步骤s416中,控制服务器120更新存储装置130中相应隔离数据表的对应数据。
67.基于上述内容可知,本发明提供的用户隔离方法,通过为安全用户和普通用户分配不同的网络命名空间,安全用户和普通用户分别绑定不同的网络资源,即安全用户和普通用户分别绑定不同的网段,而用户需要在同一网段中才可进行通信,从而实现了针对不同安全等级用户的隔离,防止同一客户端中不同安全等级用户之间的数据传输,避免因不同安全等级用户之间的数据传输使得安全用户的数据存在风险,提高数据安全性。
68.为了解决上述问题,本发明还提供了一种数据传输系统,图5示出了根据本发明一个实施例的数据传输系统500的示意图,如图5所示,数据传输系统500包括一个或多个发送客户端510(5101至510n)、一个或多个接收客户端520(5201至520n)、控制服务器530和存储装置540,此处的控制服务器530与用户隔离系统100中的控制服务器120相同,存储装置540与用户隔离系统100中的存储装置130相同,控制服务器分别与发送客户端510、接收客户端520、存储装置540通信连接,例如通过有线或无线的方式网络连接。
69.其中,发送客户端510登录用户、接收客户端520登录用户均通过用户隔离方法300实现网络资源的隔离。发送客户端510为发送数据端,接收客户端520为接收数据的客户端,当然,发送客户端510也可作为接收数据端,此时接收客户端520作为发送数据端。在一个实施方式中,任一发送客户端510、任一接收客户端520和控制服务器530可以实现为计算设备。计算设备的结构如上所述,此处不再赘述。
70.在一个实施方式中,存储装置540可以是数据库,进一步地,数据库可以是关系型数据库,例如mysql、sqlserver、access等,存储装置540的数据库可以是驻留于控制服务器530中的本地数据库,也可以作为分布式数据库例如hbase等设置于多个地理位置处;存储装置540也可以是缓存,例如redis缓存等,总之存储装置540用于存储所有发送客户端510、所有接收客户端520的隔离数据表,隔离数据表的生成过程如上述的方法300,此处不再赘
述。本发明对存储装置540的具体部署、配置情况不做限制。
71.图6示出了根据本发明一个实施例的数据传输方法600的流程图。方法600适于在数据传输系统500中执行,数据传输方法600包括步骤s610至步骤s660,值得注意的是,步骤s610至步骤s660是在任一发送客户端510与任一接收客户端520、控制服务器530、存储装置540的工作过程。
72.在步骤s610中,发送客户端510向控制服务器530发送传输数据的请求,具体地,发送客户端510中用户已登录的应用程序,通过已分配的网络命名空间的网络资源(例如vpn网络或者以太网)向控制服务器530发送传输数据的请求。其中,传输数据的请求中包括接收客户端520的客户端ip地址(即上述的计算设备ip地址)、用户名(当前登录应用程序的用户的用户名)、当前登录的应用程序标识和发送客户端510当前登录用户的用户类别,计算设备ip地址、用户名、当前登录的应用程序标识、用户类别上述已介绍,此处不再赘述。
73.随后在步骤s620中,控制服务器530根据传输数据的请求,确定发送客户端的当前登录用户的用户类别、接收客户端当前登录用户的用户类别。在一个实施方式中,由于传输数据的请求中包括发送客户端510当前登录用户的用户类别,因此直接从传输数据请求中获取发送客户端510当前登录用户的用户类别,根据传输数据的请求中的计算设备标识、用户名和当前登录的应用程序标识,从存储装置540的隔离数据表中查找到接收客户端520当前登录用户的用户类别。
74.在确定发送客户端510和接收客户端520的用户类别后,执行步骤s630,控制服务器530判断发送客户端510当前登录用户、接收客户端520当前登录用户是否为同类别用户,若是(说明发送客户端510当前登录用户和接收客户端520当前登录用户均绑定同一网段,而在同一网段中发送客户端510和接收客户端520可以通信),执行步骤s640,控制服务器530允许在发送客户端510和接收客户端520之间建立通信信道,并将允许建立通信信道的通知消息分别发送至发送客户端510和接收客户端520。
75.若发送客户端510当前登录用户、接收客户端520当前登录用户不是同类别用户,那么说明发送客户端510当前登录用户和接收客户端520当前登录用户并未绑定同一网段,而不在同一网段的发送客户端510和接收客户端520之间无法进行通信,因此,此时发送客户端510当前登录用户、接收客户端520当前登录用户之间不能建立通信信道。
76.在接收到控制服务器530发送的允许创建通信信道的消息后,执行步骤s650,发送客户端510与接收客户端520之间建立通信信道。具体地,发送客户端510通过已分配的网络命名空间的网络资源(即通过已绑定的网络命名空间的网络)向接收客户端520发送建立tcp连接的请求,在接收客户端520接收到建立tcp连接的请求后,接收客户端520通过已分配的网络命名空间的网络资源向发送客户端510发送建立同意建立tcp连接的响应,以在发送客户端510和接收客户端520之间建立通信信道。
77.最后在步骤s660中,发送客户端510通过通信信道与接收客户端520进行数据传输。具体地,发送客户端510利用已分配的网络命名空间的网络资源,向已与其建立通信信道的接收客户端520发送http请求,http请求中包括加密数据、发送客户端510登录用户的用户类别。接收客户端520在接收到http请求后,向发送客户端510发送http响应,http响应包括响应加密数据、接收客户端5520登录用户的用户类别。值得注意的是,每当数据传输系统500中任一发送客户端510向接收客户端520发送数据时,均需执行步骤s610至步骤s660。
78.为了更加清楚地说明数据传输方法的工作过程,下面给出数据传输方法的完整交互过程。图7示出了根据本发明一个实施例的数据传输方法的交互图。数据传输方法包括步骤s701至步骤s709,值得注意的是,步骤s701至步骤s709是在任一发送客户端510与任一接收客户端520、控制服务器530、存储装置540的完整交互过程。
79.在步骤s701中,发送客户端510向控制服务器530发送传输数据的请求,随后在步骤s702中,控制服务器530根据传输数据的请求中的数据,从存储装置540的隔离数据表查找接收客户端520当前登录用户的用户类别,继续执行步骤s703,根据传输数据的请求确定发送客户端510当前登录用户的用户类别。
80.在确定发送客户端510当前登录用户和接收客户端520当前登录用户的用户类别后,控制服务器530执行步骤s704,判断发送客户端510当前登录用户和接收客户端520当前登录用户的用户类别是否相同,若是,执行步骤s705,控制服务器530允许在发送客户端510和接收客户端520之间建立通信信道,并将允许建立通信信道的消息分别发送至发送客户端510和接收客户端520。
81.在接收到控制服务器530发送的允许创建通信信道的消息后,发送客户端510执行步骤s706,通过已分配的网络命名空间的网络资源向接收客户端520发送建立tcp连接的请求,在接收客户端520接收到建立tcp连接的请求后,接收客户端520执行步骤s707,通过已分配的网络命名空间的网络资源向发送客户端510发送建立同意建立tcp连接的响应,以在发送客户端510和接收客户端520之间建立通信信道。
82.接着执行步骤s708,发送客户端510利用已分配的网络命名空间的网络资源,向已与其建立通信信道的接收客户端520发送http请求,最后在步骤s709中,接收客户端520向发送客户端510发送http响应。值得注意的是,每当数据传输系统500中任一发送客户端510向接收客户端520发送数据时,均需执行步骤s701至步骤s709。
83.由上述内容可知,本发明中,实现了相同用户类别的客户端之间的数据传输,不同用户类别的客户端之间无法进行数据传输,从而避免了因普通用户访问安全用户的数据,使得安全用户的数据存在风险的情况出现,提高了数据传输的安全性。
84.这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、u盘、软盘、cd-rom或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
85.在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的用户隔离方法和数据传输方法。
86.以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
87.在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它
设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
88.在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
89.类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
90.本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
91.本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
92.此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
93.此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
94.如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
95.尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域
内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献