一种虚拟卷权限的控制方法及装置
技术领域
本申请实施例涉及云计算技术领域,尤其涉及一种虚拟卷权限的控制方法及装置。
背景技术
目前各个行业的业务和信息化系统都在进行虚拟化部署。在虚拟化部署下,用户的数据放在虚拟卷,虚拟卷可以看成一种逻辑磁盘。虚拟化管理平台统一管理各个用户业务运行所在的共享存储资源池。虚拟化管理平台从共享存储资源池上按需分配给用户一定大小的虚拟卷,将虚拟卷挂载给虚拟机供用户存放系统及应用数据使用。
分配和挂载的过程都是由虚拟化管理平台进行管理,所有的权限控制和验证也都是在虚拟化管理平台的数据库实现鉴权。拥有最高权限的虚拟化管理平台也可设法对用户虚拟卷进行操作,具有数据库操作权限的数据库管理员也可能恶意篡改数据库,这样可能导致用户数据存在泄露或被修改等安全风险。
在虚拟化部署下,如何对用户数据进行安全保护而不被非法查看、篡改或窃取,成为影响虚拟化部署性能的重要问题。
发明内容
本申请实施例提供一种虚拟卷权限的控制方法及装置,用以提高虚拟化部署下用户数据的安全性。
本申请实施例提供的具体技术方案如下:
第一方面,提供一种虚拟卷权限的控制方法,该方法通过虚拟化管理平台来执行,虚拟化管理平台与用户进行交互,虚拟化管理平台接收用户发送的使用虚拟卷的请求,所述虚拟化管理平台基于所述请求为所述用户分配虚拟卷,在为用户分配的所述虚拟卷中包括权限存储空间,所述权限存储空间中记录有校验信息,所述校验信息与所述用户具有唯一对应关系,所述校验信息用于在任一用户对所述虚拟卷进行操作之前验证所述任一用户的权限。这样,相当于将用户数据的安全控制钥匙交给用户携带,截断了系统管理员、数据库管理员等恶意获取对虚拟卷操作权限的途径,有助于增强用户数据的安全性
在一个可能的设计中,所述校验信息具体用于:若所述任一用户的自身信息与所述校验信息匹配,则验证结果为所述任一用户具有对所述虚拟卷操作的权限;若所述任一用户的自身信息与所述校验信息不匹配,则验证结果为所述任一用户不具有对所述虚拟卷操作的权限。
在一个可能的设计中,所述虚拟化管理平台接收所述用户发送的释放所述虚拟卷的请求,清除所述虚拟卷中的所述校验信息。这样,能够释放虚拟卷的资源的同时,当虚拟卷被其他虚拟机挂载时可以在虚拟卷中写入其他用户相应的校验信息。
在一个可能的设计中,所述校验信息包括所述用户的以下至少一种信息:用户全局唯一标识ID、用户名、用户邮箱地址、用户联系电话。这里的校验信息能够与用户能够唯一对应即可。
第二方面,提供一种虚拟卷权限的控制方法,用户使用的虚拟机获取虚拟卷中的校验信息,所述虚拟机根据所述校验信息与用户的自身信息,确定所述用户是否具有对虚拟卷进行操作的权限。所述虚拟机为所述用户使用的计算资源。这样,相当于将用户数据的安全控制钥匙交给用户携带,截断了系统管理员、数据库管理员等恶意获取对虚拟卷操作权限的途径,有助于增强用户数据的安全性。
在一个可能的设计中,所述虚拟机将所述校验信息与所述用户的自身信息进行匹配,若匹配,则确定所述用户具有对虚拟卷进行操作的权限;若不匹配,则确定所述用户不具有对虚拟卷进行操作的权限。
在一个可能的设计中,所述校验信息包括所述用户的以下至少一种信息:用户全局唯一标识ID、用户名、用户邮箱地址、用户联系电话。
第三方面,提供一种虚拟卷权限的控制装置,该装置具有实现上述第一方面和第一方面的任一种可能的设计中虚拟化管理平台行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
第四方面,提供一种虚拟卷权限的控制装置,该虚拟卷权限的控制装置具有实现上述第二方面和第二方面的任一种可能的设计中虚拟机行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,该虚拟卷权限的控制装置的可以包括通信接口、存储器和处理器,其中,所述存储器用于存储一组程序,所述处理器用于调用所述存储器存储的程序,通过通信接口以执行如上述第二方面和第二方面的任一种可能的设计中所述的方法。
第五方面,提供了一种通信系统,该系统包括第三方面所述的装置,和第四方面所述的虚拟卷权限的控制装置。
第六方面,提供了一种计算机存储介质,用于存储计算机程序,该计算机程序包括用于执行第一方面、第二方面、第一方面的任一可能的实施方式或第二方面的任一可能的实施方式中的方法的指令。
第七方面,本申请实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
附图说明
图1为本申请实施例中虚拟化系统架构示意图;
图2为本申请实施例中虚拟卷权限的控制方法流程示意图之一;
图3为本申请实施例中虚拟化管理平台为用户分配的虚拟卷的存储空间的示意图;
图4为本申请实施例中虚拟卷权限的控制方法流程示意图之二;
图5为本申请实施例中用户虚拟卷的存储空间示意图;
图6为本申请实施例中虚拟卷权限的控制装置结构示意图之一;
图7为本申请实施例中虚拟卷权限的控制装置结构示意图之二;
图8为本申请实施例中虚拟卷权限的控制装置结构示意图之三。
具体实施方式
下面将结合附图,对本申请实施例进行详细描述。
本申请实施例提供一种虚拟卷权限的控制方法,在为用户分配虚拟卷时,多分配一些存储空间,用于写入校验信息,该校验信息与该用户具有唯一对应关系,任何用户在对该虚拟卷进行操作之前,都需要先将自身信息与该校验信息进行匹配,只有在匹配成功时才能对该虚拟卷进行操作。这样,相当于将用户数据的安全控制钥匙交给用户携带,截断了系统管理员、数据库管理员等恶意获取对虚拟卷操作权限的途径,有助于增强用户数据的安全性。
如图1所示,本申请实施例提供的虚拟化系统100中包括:虚拟化管理平台101、存储资源池102和计算资源池103。虚拟化管理平台101统一管理各个用户业务运行所在的存储资源池102和计算资源池103。虚拟化管理平台101从存储资源池102上按需分配给用户一定大小的虚拟卷,将虚拟卷挂载给虚拟机供用户存放系统及应用数据使用。存储资源池102中包括存储节点,用于为整个虚拟化系统提供存储资源。计算资源池103包括计算节点,计算节点用于运行虚拟机。
基于图1所示的虚拟化系统的架构,如图2所示,本申请实施例提供的虚拟卷权限的控制方法具体流程如下所述。
步骤201、虚拟化管理平台接收用户发送的使用虚拟卷的请求。
具体地,用户可以通过客户端向虚拟化管理平台发送使用虚拟卷的请求。
步骤202、虚拟化管理平台基于该请求为用户分配虚拟卷。
其中,如图3所示,为虚拟化管理平台为用户分配的虚拟卷的存储空间的示意图。虚拟化管理平台在为用户分配的虚拟卷中除了用户所需的数据存储空间之外,还开辟了权限存储空间,权限存储空间大小固定,例如可以占用512字节,具体大小可以根据需要设定。校验信息只在创建和分配虚拟卷时进行设定,并且在后续操作中只读不可修改。权限存储空间的位置可以连接数据存储空间的头部或者尾部,虚拟化管理平台在权限存储空间中记录校验信息。数据存储空间用于存储用户的系统数据和应用数据。该校验信息与该用户具有唯一对应关系,例如,校验信息包括用户的以下至少一种信息:用户全局唯一标识ID、用户名、用户邮箱地址、用户联系电话。校验信息用于在任一用户对虚拟卷进行操作之前验证任一用户的权限。任一用户包括分配存储卷的该用户,还包括除该用户之外的其他用户。
具体地,若任一用户的自身信息与校验信息匹配,则验证结果为该任一用户具有对虚拟卷操作的权限;若任一用户的自身信息与校验信息不匹配,则验证结果为该任一用户不具有对虚拟卷操作的权限。
步骤203、用户使用虚拟机在对虚拟卷进行操作之前,获取虚拟卷中的校验信息。
步骤204、该虚拟机根据校验信息与该用户的自身信息,确定用户是否具有对虚拟卷进行操作的权限。
具体地,该虚拟机将校验信息与用户的自身信息进行匹配,若匹配,则确定用户具有对虚拟卷进行操作的权限;若不匹配,则确定用户不具有对虚拟卷进行操作的权限。
这样,虚拟化管理平台在为任意一个用户分配虚拟卷时,均配置与用户唯一匹配的校验信息,任意一个用户在对虚拟卷进行操作之前,都需要先根据校验信息进行鉴权,由于各个用户的校验信息均不相同,因此,与虚拟卷中的校验信息不匹配的用户则不可以对虚拟卷进行操作。
若虚拟化管理平台接收到用户发送的释放虚拟卷的请求,则虚拟化管理平台将会对虚拟卷进行回收,在回收的过程中,虚拟卷中的校验信息也会被清除。若虚拟卷进行再次分配,则重新再虚拟卷中记录与请求用户相对应的校验信息。
基于图1所示的虚拟化管理平台和图2所示的虚拟卷权限的控制方法,下面将结合具体的应用场景对本申请实施例提供的虚拟卷权限的控制方法作进一步详细的说明。具体流程如图4所示。
步骤401、用户A向虚拟化管理平台申请账户。
步骤402、虚拟化管理平台在接收到用户A发送的申请账户的请求后,为用户分配全局唯一用户ID。
例如分配的用户ID为8a757584a33640d99be5479ea8bb。
步骤403、用户A向虚拟化管理平台请求分配虚拟机和虚拟卷。
步骤404、虚拟化管理平台在接收到用户A发送的请求后,创建虚拟机VM1和虚拟卷LUN1。
其中,在创建LUN1的过程中,在虚拟卷的固定大小的权限存储空间写入校验信息。
如图5所示,为用户虚拟卷的存储空间示意图。其中,数据存储空间大小为40GB,权限存储空间大小为512字节。虚拟卷LUN1中40GB的数据存储空间作为VM1的磁盘来存储VM1的系统及应用数据。虚拟化管理平台为用户从共享存储资源池实际分配空间大小为40GB+512Byte。权限存储空间也可以称为权限控制域。
步骤405、虚拟化管理平台将用户A、VM1和LUN1的关联关系更新存入管理数据库。
可选的,本申请实施例中虚拟化系统中还可以包括数据库,用于保存用户A、虚拟机与虚拟卷之间的关联关系,用户A在对虚拟卷进行操作前,需要从数据库中读取用户A与虚拟卷之间的关联关系,验证虚拟卷是否属于该用户A。
一种可能的示例中,数据库中保存如表1所示的关联关系。例如,用户A的用户名为cdjajorg01,用户ID为8a757584a33640d99be5479ea8bb,虚拟机为VM1,虚拟卷为LUN1。
表1
步骤406、用户A使用虚拟机VM1对LUN1进行操作之前,在数据库中校验VM1和LUN1的关联关系,校验成功,执行步骤407,否则确认不允许对LUN1进行操作。
步骤407、虚拟机VM1读取LUN1中的权限存储空间,获取校验信息为8a757584a33640d99be5479ea8bb,将校验信息与用户A的User ID进行匹配,确定一致,则确定可对LUN1进行操作。
操作如写数据、删除数据的操作。
若用户B欲使用VM2对LUN1进行操作,则在对LUN1进行操作之前,将校验信息与用户B的User ID进行匹配,确定不一致,则不可对LUN1进行操作。
这样,系统管理员或数据库管理员即使篡改了管理数据库,诱骗取得非法VM与LUN1的关联关系校验,但对LUN1操作时,因为其User ID无法与校验信息匹配,则仍无法对LUN1虚拟卷进行非法操作,从而很大程度保护了虚拟卷LUN1中用户数据的安全。
基于图2所示虚拟卷权限的控制方法的同一发明构思,如图6所示,本申请实施例还提供了一种虚拟卷权限的控制装置600,虚拟卷权限的控制装置600用于执行图2所示虚拟卷权限的控制方法,具体包括接收单元601和处理单元602,其中:
接收单元601,用于接收用户发送的使用虚拟卷的请求;
处理单元602,用于基于请求为用户分配虚拟卷;
其中,虚拟卷中包括权限存储空间,权限存储空间中记录有校验信息,校验信息与用户具有唯一对应关系,校验信息用于在任一用户对虚拟卷进行操作之前验证任一用户的权限。
可选的,校验信息具体用于:若任一用户的自身信息与校验信息匹配,则验证结果为任一用户具有对虚拟卷操作的权限;若任一用户的自身信息与校验信息不匹配,则验证结果为任一用户不具有对虚拟卷操作的权限。
可选的,接收单元601,还用于接收用户发送的释放虚拟卷的请求;
处理单元602,还用于清除虚拟卷中的校验信息。
可选的,校验信息包括用户的以下至少一种信息:用户全局唯一标识ID、用户名、用户邮箱地址、用户联系电话等。
基于图2所示虚拟卷权限的控制方法的同一发明构思,如图7所示,本申请实施例还提供了一种虚拟卷权限的控制装置700,虚拟卷权限的控制装置700用于执行图2所示虚拟卷权限的控制方法中虚拟机执行的步骤,虚拟卷权限的控制装置700具体包括获取单元701和处理单元702,其中:
获取单元701,用于获取虚拟卷中的校验信息;
处理单元702,用于根据校验信息与用户的自身信息,确定用户是否具有对虚拟卷进行操作的权限。
可选的,处理单元702可以具体用于:将校验信息与用户的自身信息进行匹配,若匹配,则确定用户具有对虚拟卷进行操作的权限;若不匹配,则确定用户不具有对虚拟卷进行操作的权限。
可选的,校验信息包括用户的以下至少一种信息:用户全局唯一标识ID、用户名、用户邮箱地址、用户联系电话等。
基于图2所示虚拟卷权限的控制方法的同一发明构思,如图8所示,本申请实施例还提供了一种虚拟卷权限的控制装置800,虚拟卷权限的控制装置800用于执行图2所示虚拟卷权限的控制方法中虚拟机执行的步骤,虚拟卷权限的控制装置800包括通信接口801、处理器802和存储器803,通信接口801、存储器803与处理器802相连,处理器802用于执行存储器803中的代码,当代码被执行时,该执行使得处理器802执行图2所示的虚拟卷权限的控制方法。
处理器802可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。
处理器802还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmablelogic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gatearray,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
存储器803可以包括易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器803也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器803还可以包括上述种类的存储器的组合。
本申请实施例提供了一种计算机存储介质,用于存储计算机程序,该计算机程序包括用于执行图2所示的虚拟卷权限的控制方法。
本申请实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行图2所示的虚拟卷权限的控制方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。