虚拟化***及其创建方法、装置
技术领域
本发明涉及嵌入式***技术领域,尤其是涉及一种虚拟化***及其创建方法、装置。
背景技术
随着计算机和互联网的普及,***、信息安全问题越来越严峻。其是现在很多企业面临的重大问题之一。为了保证***、信息的安全,目前大多数企业仍然通过杀毒软件查杀***病毒木马保证***、信息安全。这种杀毒软件需要不断地更新病毒库,才能查杀到最新的病毒木马,具有一定的滞后性。
针对杀毒软件的滞后性特点,目前业界诞生了桌面虚拟化软件,所述桌面虚拟化软件是一种提供一个虚拟桌面的软件。其中虚拟桌面运行一个操作***、真实桌面运行一个操作***,且虚拟桌面与真实桌面运行的操作***相互隔离。虚拟桌面的操作***运行有风险的程序,而真实桌面的操作***运行安全程序。在虚拟桌面的操作***中的所有操作均为虚拟操作,如对文件、注册表等执行的操作,对不会影响真实桌面运行的操作***产生影响。从而保证真正桌面的操作***、信息安全。
上述虚拟化软件的出现在一定程度上能够保证***和信息的安全,但是虚拟桌面和真实运行的程序都会分别与***服务器进行数据交互。参见图1,由此可知虚拟桌面运行的操作***与真正真面运行的操作***无法真正隔离,不能最大程度地解决***、信息的安全问题。
发明内容
本发明的主要目的在于提供一种虚拟化***及其创建方法、装置,实现真实桌面与虚拟桌面的真正隔离,保证***、信息的安全。
本发明提出一种虚拟化***的创建方法,包括步骤:
在虚拟桌面中创建与***服务程序一致的***服务代理程序,当虚拟桌面***服务代理程序中操作某一命名内核对象时,更改该***服务代理程序中的命名内核对象名称;
当虚拟桌面应用程序中操作某一命名内核对象时,更改虚拟桌面中应用程序的命名内核对象名称,使之与所述***服务代理程序中更改后的命名内核对象名称一一对应。
优选地,所述更改该***服务代理程序中的命名内核对象名称具体包括:
当虚拟桌面***服务代理程序中操作某一命名内核对象时,根据预设规则调用操作内核对象函数为该命名内核对象构造新名称;
将该命名内核对象的参数中的名称更新为所述新名称,并将所述参数发送给第一***底层模块,通过所述第一***底层模块调用底层函数,所述底层函数根据所述参数创建以所述新名称命名的内核对象。
优选地,所述更改虚拟桌面中应用程序的命名内核对象名称具体包括:
当虚拟桌面应用程序中操作某一命名内核对象时,根据预设规则调用操作内核对象函数为该命名内核对象构造新名称;
将该命名内核对象的参数中的名称更新为所述新名称,并将所述参数发送给第二***底层模块,通过所述第二***底层模块调用底层函数,所述底层函数根据所述参数创建以所述新名称命名的内核对象。
本发明另提出一种虚拟化***的创建装置,包括:
创建模块,用于在虚拟桌面中创建与***服务程序一致的***服务代理程序,当虚拟桌面***服务代理程序中操作某一命名内核对象时,更改该***服务代理程序中的命名内核对象名称;
命名模块,用于当虚拟桌面应用程序中操作某一命名内核对象时,更改虚拟桌面中应用程序的命名内核对象名称;使之与所述***服务代理程序中更改后的命名内核对象名称一一对应。
优选地,所述创建模块包括:
第一调用模块,用于当虚拟桌面***服务代理程序中操作某一命名内核对象时,根据预设规则调用操作内核对象函数为该命名内核对象构造新名称;
第一更新模块,用于将该命名内核对象的参数中的名称更新为所述新名称,并将所述参数发送给第一***底层模块,通过所述第一***底层模块调用底层函数,所述底层函数根据所述参数创建以所述新名称命名的内核对象。
优选地,所述命名模块包括:
第二调用模块,用于当虚拟桌面应用程序中操作某一命名内核对象时,根据预设规则调用操作内核对象函数为该命名内核对象构造新名称;
第二更新模块,用于将该命名内核对象的参数中的名称更新为所述新名称,并将所述参数发送给第二***底层模块,通过所述第二***底层模块调用底层函数,所述底层函数根据所述参数创建以所述新名称命名的内核对象。
本发明另提出一种虚拟化***,包括***服务器、真实桌面、虚拟桌面,所述虚拟桌面中创建有与所述***服务器中***服务程序一致的***服务代理程序,所述真实桌面的应用程序与***服务器进行数据交互,虚拟桌面的应用程序与所述***服务代理程序进行数据交互;
所述***服务器的***服务程序中的命名内核对象名称与所述***服务代理程序中对应的命名内核对象名称不一致;
所述虚拟桌面中应用程序内的命名内核对象名称与***服务代理程序中的命名内核对象名称一一对应。
优选地,所述***服务器的***服务程序中的命名内核对象名称与真实桌面在应用程序内的命名内核对象名称一一对应。
本发明所提供的一种虚拟化***及其创建方法、装置,通过在虚拟桌面创建与***服务程序一致的***服务代理程序,并更改虚拟桌面应用程序和该***服务代理程序的命名内核对象名称,使二者的命名内核对象名称一一对应,从而使虚拟桌面的应用程序无法与***服务程序进行数据交互,只能与***服务代理程序进行数据交互,实现了真实桌面与虚拟桌面真正隔离,保证了真实桌面安全,提高了***、信息的安全性。
附图说明
图1是现有技术中的虚拟化***的结构示意图;
图2是本发明的虚拟化***的创建方法一实施例的流程图;
图3是本发明的虚拟化***的创建方法实施例的另一流程图;
图4是本发明的虚拟化***的创建方法实施例的另一流程图;
图5是本发明的虚拟化***的创建装置一实施例的结构示意图;
图6是本发明的虚拟化***的创建装置实施例的另一结构示意图;
图7是本发明的虚拟化***的创建装置实施例的另一结构示意图;
图8是本发明的虚拟化***一实施例的结构示意图;
图9是本发明的虚拟化***实施例的另一结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参见图2,提出本发明的虚拟化***的创建方法一实施例,包括:
步骤S101、在虚拟桌面中创建与***服务程序一致的***服务代理程序,并更改该***服务代理程序中的命名内核对象名称;
步骤S102、更改虚拟桌面中应用程序的命名内核对象名称,使之与所述***服务代理程序中更改后的命名内核对象名称一一对应。
本实施例创建的虚拟化***,在虚拟桌面运行应用程序时,对应用程序进行监控,以检测该应用程序是否安全。所述运行应用程序包括内核对象操作、文件操作和注册表操作。并将虚拟桌面运行应用程序的结果以重定向的方式转存储到磁盘中某一存储位置,该存储位置与真实桌面运行应用程序结果的存储位置不同。因此虚拟桌面运行应用程序不会影响到真实桌面应用程序的运行。
本实施中创建的虚拟化***,由于其应用程序中命名内核对象名称已经更改,当虚拟桌面应用程序需要***服务程序进行数据交互时,虚拟桌面应用程序无法实现与***服务程序进行交互。又因为虚拟桌面中创建的***服务代理程序中的更改后的命名内核对象名称与所述应用程序中对应命名内核名称相对应,因此虚拟桌面中应用程序可与虚拟桌面中创建的***服务代理程序进行数据交互。而当真实桌面应用程序需要***服务程序进行数据交互时,则直接与***服务程序进行数据交互即可。实现了真实桌面与虚拟桌面真正隔离,保证了真实桌面安全,提高了***、信息的安全性。
进一步地,参见图3,上述虚拟化***的创建方法实施例中,所述更改该***服务代理程序中的命名内核对象名称具体包括:
步骤S201、当虚拟桌面***服务代理程序中操作某一命名内核对象时,根据预设规则调用操作内核对象函数为该命名内核对象构造新名称;
步骤S202、将该命名内核对象的参数中的名称更新为所述新名称,并将所述参数发送给第一***底层模块,通过第一***底层模块调用底层函数,所述底层函数根据所述参数创建以所述新名称命名的内核对象。
本实施例中,当虚拟桌面***服务代理程序中操作某一非命名内核对象时,则直接将该非命名内核对象交由第一***底层模块处理。
进一步地,参见图4,上述虚拟化***的创建方法实施例中,所述更改虚拟桌面中应用程序的命名内核对象名称具体包括:
步骤S301、当虚拟桌面应用程序中操作某一命名内核对象时,根据预设规则调用操作内核对象函数为该命名内核对象构造新名称;
步骤S302、将该命名内核对象的参数中的名称更新为所述新名称,并将所述参数发送给第二***底层模块,通过所述第二***底层模块调用底层函数,所述底层函数根据所述参数创建以所述新名称命名的内核对象。
本实施例中,当虚拟桌面应用程序中操作某一非命名内核对象时,则直接将该非命名内核对象交由第二***底层模块处理。
参见图5,提出本发明的虚拟化***的创建装置100一实施例,包括:创建模块110和命名模块120。其中,所述创建模块110,用于在虚拟桌面中创建与***服务程序一致的***服务代理程序,并更改该***服务代理程序中的命名内核对象名称。所述命名模块120,用于更改虚拟桌面中应用程序的命名内核对象名称,使之与所述***服务代理程序中更改后的命名内核对象名称一一对应。
本实施例创建的虚拟化***,在虚拟桌面运行应用程序时,对应用程序进行监控,以检测该应用程序是否安全。所述运行应用程序包括内核对象操作、文件操作和注册表操作。并将虚拟桌面运行应用程序的结果以重定向的方式转存储到磁盘中某一存储位置,该存储位置与真实桌面运行应用程序结果的存储位置不同。因此虚拟桌面运行应用程序不会影响到真实桌面应用程序的运行。
本实施中创建的虚拟化***,由于其应用程序中命名内核对象名称已经更改,当虚拟桌面应用程序需要***服务程序进行数据交互时,虚拟桌面应用程序无法实现与***服务程序进行交互。又因为虚拟桌面中创建的***服务代理程序中的更改后的命名内核对象名称与所述应用程序中对应命名内核名称相对应,因此虚拟桌面中应用程序可与虚拟桌面中创建的***服务代理程序进行数据交互。而当真实桌面应用程序需要***服务程序进行数据交互时,则直接与***服务程序进行数据交互即可。实现了真实桌面与虚拟桌面真正隔离,保证了真实桌面安全,提高了***、信息的安全性。
进一步地,参见图6,上述虚拟化***的创建装置100实施例中,所述创建模块110包括:第一调用模块111、第一更新模块112。所述第一调用模块111,用于当虚拟桌面***服务代理程序中操作某一命名内核对象时,根据预设规则调用操作内核对象函数为该命名内核对象构造新名称。所述第一更新模块112,用于将该命名内核对象的参数中的名称更新为所述新名称,并将所述参数发送给第一***底层模块,通过所述第一***底层模块调用底层函数,所述底层函数根据所述参数创建以所述新名称命名的内核对象。
本实施例中,当虚拟桌面***服务代理程序中操作某一非命名内核对象时,则直接将该非命名内核对象交由第一***底层模块处理。
进一步地,参见图7,上述虚拟化***的创建装置100实施例中,所述命名模块120包括:第二调用模块121、第二更新模块122。其中,所述第二调用模块121,用于当虚拟桌面应用程序中操作某一命名内核对象时,根据预设规则调用操作内核对象函数为该命名内核对象构造新名称。所述第二更新模块122,用于将该命名内核对象的参数中的名称更新为所述新名称,并将所述参数发送给第二***底层模块,通过所述第二***底层模块调用底层函数,所述底层函数根据所述参数创建以所述新名称命名的内核对象。
本实施例中,当虚拟桌面应用程序中操作某一非命名内核对象时,则直接将该非命名内核对象交由第二***底层模块处理。
参见图8,提出本发明的虚拟化***200一实施例,包括***服务器210、真实桌面220、虚拟桌面230,所述虚拟桌面230中创建有与所述***服务器210中***服务程序一致的***服务代理程序,虚拟桌面230中的应用程序与所述***服务代理程序进行数据交互;所述真实桌面220中的应用程序与***服务器210进行数据交互。
进一步地,上述虚拟化***200实施例中,所述***服务器210的***服务程序中的命名内核对象名称与所述***服务代理程序中对应的命名内核对象名称不一致。所述虚拟桌面230中应用程序内的命名内核对象名称与***服务代理程序中的命名内核对象名称一一对应。
进一步地,上述虚拟化***200实施例中,所述***服务器210的***服务程序中的命名内核对象名称与真实桌面220在应用程序内的命名内核对象名称一一对应。
本实施例虚拟化***200,在虚拟桌面230运行应用程序时,对应用程序进行监控,以检测该应用程序是否安全。所述运行应用程序包括内核对象操作、文件操作和注册表操作。参见图9,所述虚拟化***200还包括磁盘240,该虚拟化***200在虚拟桌面230运行应用程序后,将运行结果以重定向的方式转存储到该磁盘240某一存储位置,该存储位置与真实桌面220运行应用程序结果的存储位置不同。因此虚拟桌面230运行应用程序不会影响到真实桌面220应用程序的运行。
本实施例的虚拟化***200,由于其应用程序中命名内核对象名称已经更改,当虚拟桌面230中的应用程序需要***服务程序进行数据交互时,则无法实现与***服务器210中的***服务程序进行交互。又因为虚拟桌面230中创建的***服务代理程序中的更改后的命名内核对象名称与虚拟桌面230中的应用程序中对应命名内核名称相对应,因此虚拟桌面230中应用程序与虚拟桌面230中创建的***服务代理程序进行数据交互。而当真实桌面220中的应用程序需要与***服务程序进行数据交互时,则直接与***服务器210中的***服务程序进行数据交互即可。实现了真实桌面220与虚拟桌面230真正隔离,保证了真实桌面220安全,提高了***、信息的安全性。
应当理解的是,以上仅为本发明的优选实施例,不能因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。