CN109033804B - 一种虚拟机软件授权方法和装置 - Google Patents
一种虚拟机软件授权方法和装置 Download PDFInfo
- Publication number
- CN109033804B CN109033804B CN201811039244.5A CN201811039244A CN109033804B CN 109033804 B CN109033804 B CN 109033804B CN 201811039244 A CN201811039244 A CN 201811039244A CN 109033804 B CN109033804 B CN 109033804B
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- usb
- hardware
- authorization
- special
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000013475 authorization Methods 0.000 claims abstract description 26
- 238000001514 detection method Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 abstract description 6
- 238000005516 engineering process Methods 0.000 abstract description 5
- 230000006870 function Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 101001042125 Eisenia hortensis Chymotrypsin inhibitor Proteins 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明公开了一种虚拟机软件授权方法和装置。涉及虚拟机安全技术,解决了缺乏虚拟平台USB加密狗使用机制的问题。该方法包括:为虚拟机配置USB加密狗硬件对应的专用USB控制器;通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权。本发明提供的技术方案适用于虚拟平台软件管理,实现了虚拟机系统中基于USB加密狗硬件的软件授权。
Description
技术领域
本发明涉及虚拟机安全技术,尤指一种虚拟机软件授权方法和装置。
背景技术
USB加密狗是为软件开发商提供的一种智能型的具有软件保护功能的工具,它包含一个安装在计算机USB口上的硬件,及一套适用于各种语言的接口软件和工具软件。加密锁基于硬件保护技术,其目的是通过对软件与数据的保护防止知识产权被非法使用。
目前还缺乏一种在虚拟平台上使用USB加密狗的机制。
发明内容
为了解决上述技术问题,本发明提供了一种虚拟机软件授权方法和装置。通过配置专用的USB控制器,实现虚拟机与USB加密狗硬件的连接,进而实现了虚拟机系统中基于USB加密狗硬件的软件授权,解决了缺乏虚拟平台USB加密狗使用机制的问题。
为了达到本发明目的,本发明提供了一种虚拟机软件授权方法,包括:
为虚拟机配置USB加密狗硬件对应的专用USB控制器;
通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权。
优选的,该方法还包括:
为所述专用USB控制器提供单独的PCI设备插槽地址。
优选的,该方法还包括:
在所述虚拟机中配置所述USB加密狗硬件的有驱动版本和无驱动版本。
优选的,通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权的步骤包括:
在检测到USB加密狗硬件接入时,获取系统配置的至少一个USB控制器的接口类型;
根据所述接口类型,确定所述USB加密狗硬件的专用USB控制器;
通过所述专用USB控制器连接所述USB加密狗硬件,完成对所述虚拟机的授权。
优选的,所述的虚拟机软件授权方法,其特征在于,通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权的步骤包括:
查询配置文件,根据所述配置文件中的厂家标识和/或产品标识信息,确定所述USB加密狗硬件的专用USB控制器;
通过所述专用USB控制器连接所述USB加密狗硬件,完成对所述虚拟机的授权。
优选的,通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权的步骤之前,还包括:
将所述专用USB控制器的厂家标识和/或产品标识信息写入所述配置文件。
本发明还提供了一种虚拟机软件授权装置,包括:
控制器配置模块,用于为虚拟机配置USB加密狗硬件对应的专用USB控制器;
硬件连接模块,用于通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权。
优选的,该装置还包括:
地址配置模块,用于为所述专用USB控制器提供单独的PCI设备插槽地址。
优选的,所述硬件连接模块包括:
类型检测单元,用于在检测到USB加密狗硬件接入时,获取系统配置的至少一个USB控制器的接口类型;
控制器选择单元,用于根据所述接口类型,确定所述USB加密狗硬件的专用USB控制器;
第一连接单元,用于通过所述专用USB控制器连接所述USB加密狗硬件,完成对所述虚拟机的授权。
优选的,所述硬件连接模块还包括:
配置查询单元,用于查询配置文件,根据所述配置文件中的厂家标识和/或产品标识信息,确定所述USB加密狗硬件的专用USB控制器;
第二连接单元,用于通过所述专用USB控制器连接所述USB加密狗硬件,完成对所述虚拟机的授权。
本发明提供了一种虚拟机软件授权方法和装置,为虚拟机配置USB加密狗硬件对应的专用USB控制器;通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权。实现了虚拟机系统中基于USB加密狗硬件的软件授权,解决了缺乏虚拟平台USB加密狗使用机制的问题。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本发明的一实施例提供的一种虚拟机软件授权方法的流程示意图;
图2为图1中步骤102的实现方式一的流程示意图;
图3为图1中步骤102的实现方式二的流程示意图;
图4为本发明的一实施例提供的一种虚拟机软件授权装置的结构示意图;
图5为图4中硬件连接模块402的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
目前缺乏一种在虚拟平台上使用USB加密狗的机制,为了解决这一问题,本发明的实施例提供了一种虚拟机软件授权方法和装置。下面结合附图,对本发明的实施例进行详细说明。
本发明的一实施例提供了一种虚拟机软件授权方法,使用该方法完成虚拟平台上使用USB加密狗完成软件授权的流程如图1所示,包括:
步骤101、为虚拟机配置USB加密狗硬件对应的专用USB控制器。
本步骤中,对虚拟机中USB控制器的部分进行配置,libvirt一共提供OHCI、UHCI、EHCI、XHCI等接口类型,由于USB加密狗设备类型的特殊性,需要专门配置一个OHCI类型的USB控制器才能正常识别直通给虚拟机的USB加密狗硬件设备。通过添加适配于USB加密狗设备的虚拟机USB控制器配置,完成基础的USB加密狗直通虚拟机的功能。
由于USB控制器的设备地址中的slot参数不能被共享,优选的,给该专用USB控制器设备提供一个单独的slot值,即为所述专用USB控制器提供单独的PCI设备插槽地址。
为了系统易用性,优选的,可在所述虚拟机中配置所述USB加密狗硬件的有驱动版本和无驱动版本。具体,在界面让用户区分USB加密狗设备的驱动版以及无驱动版,这是由于USB加密狗设备的无驱动版在windows设备管理器中查看时,不属于大容量存储设备,而属于人体学输入设备,这一点用户很有可能忽略从而产生无法在设备管理其中看到无驱动版USB加密狗设备的误解,因此添加两个USB加密狗设备的版本,防止用户产生加密狗直通虚拟机不生效的误解,增加了加密狗设备直通时的易用性。
在查询到的接口类型为2.0接口但是仍需要将该设备添加在USB1.1的OHCI控制器上的情况下,由于系统已经不能自动地匹配该USB设备了,优选的,本发明实施例中为用户提供一个配置文件,将所述专用USB控制器的厂家标识(ProductID)和/或产品标识(VendorID)信息写入所述配置文件。具体的,可在后台控制界面利用lsusb命令查询该USB设备的ProductID和/或VendorID,并写入对应的配置文件中,这样系统便可根据该配置动态地调整USB设备所对应的USB控制器,进而使得USB加密狗能正常识别并运行在虚拟机之中。
步骤102、通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权。
本步骤中,可通过两种方式完成授权。
方式一如图2所示,包括:
步骤201、在检测到USB加密狗硬件接入时,获取系统配置的至少一个USB控制器的接口类型;
步骤202、根据所述接口类型,确定所述USB加密狗硬件的专用USB控制器;
步骤203、通过所述专用USB控制器连接所述USB加密狗硬件,完成对所述虚拟机的授权。
由于USB接口类型分多钟,因此虚拟机中不能只有一个USB控制器,既需要加密狗专用的USB控制器,还需要有普通大容量存储USB设备所需要的控制器,如支持USB2.0的EHCI控制器以及支持USB3.0的XHCI控制器,所以虚拟机中会存在多个USB控制器,为了方便用户使用USB设备直通这一功能,本发明实施例中通过系统内部查询USB设备的接口类型,并将该接口类型返回给对应的USB设备列表,再根据接口类型,在虚拟机的USB设备配置中选择对应的USB控制器,以保证所有的USB设备能够自动添加在对应的USB控制器上,保证所有直通给虚拟机的USB设备都能正常运行。自动识别主机USB设备的类型并适配对应的USB控制器,简化了用户的操作。
方式二如图3所示,包括:
步骤301、查询配置文件,根据所述配置文件中的厂家标识和/或产品标识信息,确定所述USB加密狗硬件的专用USB控制器;
步骤302、通过所述专用USB控制器连接所述USB加密狗硬件,完成对所述虚拟机的授权。
为了防止个别USB加密狗设备接口类型查询有误的问题,本发明实施例中可添加系统配置文件,用户通过修改配置文件彻底解决加密狗在虚拟机中无法识别的问题,确保该操作能正确执行。
本发明制定了一种针对USB加密狗设备直通虚拟机的设计方案。
本发明通过设定虚拟机USB设备控制器类型以及控制器地址的限定,以及USB加密狗设备类型自动识别及特殊情况下用户可自行修改虚拟机直通USB加密狗的配置,来达到方便用户操作的目的,并保证USB加密狗在虚拟机内能正常运行。
本发明的一实施例还提供了一种虚拟机软件授权装置,其结构如图4所示,包括:
控制器配置模块401,用于为虚拟机配置USB加密狗硬件对应的专用USB控制器;
硬件连接模块402,用于通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权。
优选的,该装置还包括:
地址配置模块403,用于为所述专用USB控制器提供单独的PCI设备插槽地址。
优选的,所述硬件连接模块402的结构如图5所示,包括:
类型检测单元4021,用于在检测到USB加密狗硬件接入时,获取系统配置的至少一个USB控制器的接口类型;
控制器选择单元4022,用于根据所述接口类型,确定所述USB加密狗硬件的专用USB控制器;
第一连接单元4023,用于通过所述专用USB控制器连接所述USB加密狗硬件,完成对所述虚拟机的授权。
优选的,所述硬件连接模块402还包括:
配置查询单元4024,用于查询配置文件,根据所述配置文件中的厂家标识和/或产品标识信息,确定所述USB加密狗硬件的专用USB控制器;
第二连接单元4025,用于通过所述专用USB控制器连接所述USB加密狗硬件,完成对所述虚拟机的授权。
本发明的实施例提供了一种虚拟机软件授权方法和装置,为虚拟机配置USB加密狗硬件对应的专用USB控制器;通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权。实现了虚拟机系统中基于USB加密狗硬件的软件授权,解决了缺乏虚拟平台USB加密狗使用机制的问题。通过底层自动适配USB设备特别是USB加密狗设备,确保它能够在虚拟机内正常运行,并在界面增加选项和提示,保证该功能的易用性。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
Claims (6)
1.一种虚拟机软件授权方法,其特征在于,包括:
为虚拟机配置USB加密狗硬件对应的专用USB控制器;
通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权;
所述通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权的步骤包括:
在检测到USB加密狗硬件接入时,获取系统配置的至少一个USB控制器的接口类型;
根据所述接口类型,确定所述USB加密狗硬件的专用USB控制器;
通过所述专用USB控制器连接所述USB加密狗硬件,完成对所述虚拟机的授权;
所述通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权的步骤还包括:
查询配置文件,根据所述配置文件中的厂家标识和/或产品标识信息,确定所述USB加密狗硬件的专用USB控制器;
通过所述专用USB控制器连接所述USB加密狗硬件,完成对所述虚拟机的授权。
2.根据权利要求1所述的虚拟机软件授权方法,其特征在于,该方法还包括:
为所述专用USB控制器提供单独的PCI设备插槽地址。
3.根据权利要求1所述的虚拟机软件授权方法,其特征在于,该方法还包括:
在所述虚拟机中配置所述USB加密狗硬件的有驱动版本和无驱动版本。
4.根据权利要求1所述的虚拟机软件授权方法,其特征在于,通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权的步骤之前,还包括:
将所述专用USB控制器的厂家标识和/或产品标识信息写入所述配置文件。
5.一种虚拟机软件授权装置,其特征在于,包括:
控制器配置模块,用于为虚拟机配置USB加密狗硬件对应的专用USB控制器;
硬件连接模块,用于通过该专用USB控制器连接USB加密狗硬件,完成对所述虚拟机的授权;
所述硬件连接模块包括:
类型检测单元,用于在检测到USB加密狗硬件接入时,获取系统配置的至少一个USB控制器的接口类型;
控制器选择单元,用于根据所述接口类型,确定所述USB加密狗硬件的专用USB控制器;
第一连接单元,用于通过所述专用USB控制器连接所述USB加密狗硬件,完成对所述虚拟机的授权;
所述硬件连接模块还包括:
配置查询单元,用于查询配置文件,根据所述配置文件中的厂家标识和/或产品标识信息,确定所述USB加密狗硬件的专用USB控制器;
第二连接单元,用于通过所述专用USB控制器连接所述USB加密狗硬件,完成对所述虚拟机的授权。
6.根据权利要求5所述的虚拟机软件授权装置,其特征在于,该装置还包括:
地址配置模块,用于为所述专用USB控制器提供单独的PCI设备插槽地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811039244.5A CN109033804B (zh) | 2018-09-06 | 2018-09-06 | 一种虚拟机软件授权方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811039244.5A CN109033804B (zh) | 2018-09-06 | 2018-09-06 | 一种虚拟机软件授权方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109033804A CN109033804A (zh) | 2018-12-18 |
CN109033804B true CN109033804B (zh) | 2020-03-10 |
Family
ID=64623903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811039244.5A Active CN109033804B (zh) | 2018-09-06 | 2018-09-06 | 一种虚拟机软件授权方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109033804B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109947489A (zh) * | 2019-03-19 | 2019-06-28 | 佳都新太科技股份有限公司 | 基于容器的外接设备管理方法、装置、设备及存储介质 |
CN111222104A (zh) * | 2019-12-31 | 2020-06-02 | 苏州思必驰信息科技有限公司 | 利用硬件加密狗对嵌入式设备进行授权的方法、装置及系统 |
CN112115451B (zh) * | 2020-09-28 | 2024-04-12 | 天地伟业技术有限公司 | 一种在ARM架构的Docker容器中识别热插拔硬件USB加密狗的方法 |
CN115982688A (zh) * | 2022-12-29 | 2023-04-18 | 北京伟联科技有限公司 | 为虚拟机提供加密狗的系统及加密狗集中管理器 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7814496B2 (en) * | 2005-08-19 | 2010-10-12 | Intel Corporation | Method and system for replicating schedules with regard to a host controller for virtualization |
US7774794B2 (en) * | 2005-08-19 | 2010-08-10 | Intel Corporation | Method and system for managing bandwidth in a virtualized system |
CN101620578B (zh) * | 2009-06-23 | 2011-11-16 | 宏碁电脑(上海)有限公司 | 一种基于虚拟化系统的usb设备管理方法 |
CN206348798U (zh) * | 2017-01-09 | 2017-07-21 | 杭州冰特科技股份有限公司 | 一种多usb控制器的加密卡 |
-
2018
- 2018-09-06 CN CN201811039244.5A patent/CN109033804B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109033804A (zh) | 2018-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109033804B (zh) | 一种虚拟机软件授权方法和装置 | |
CN103412769B (zh) | 外接卡参数配置方法、设备以及系统 | |
US7007127B2 (en) | Method and related apparatus for controlling transmission interface between an external device and a computer system | |
US8135880B2 (en) | USB mass storage locking | |
US20030038177A1 (en) | Passive flash media adapter system | |
US10365840B2 (en) | System and method for providing a secure airborne network-attached storage node | |
CN103218180A (zh) | 磁盘定位方法和定位装置 | |
RU2667033C2 (ru) | Системы и способы для обнаружения хостом возможности асинхронного уведомления usb | |
US10831897B2 (en) | Selective enforcement of secure boot database entries in an information handling system | |
US20170286097A1 (en) | Method to prevent operating system digital product key activation failures | |
CN110618918A (zh) | Pch下硬盘状态灯的控制方法、控制装置及控制设备 | |
US20120271983A1 (en) | Computing device and data synchronization method | |
CN105912488B (zh) | 计算机装置及其控制方法 | |
CN103942088A (zh) | 一种获取虚拟机usb存储设备使用情况的方法 | |
CN110096882B (zh) | 一种设备运行过程中的安全度量方法 | |
US10896046B2 (en) | Management processor using code from peripheral device | |
CN112017330B (zh) | 智能锁参数配置方法、装置、智能锁及存储介质 | |
CN108985402B (zh) | 一种raid卡信息获取方法及相关装置 | |
US6349345B1 (en) | Autoconfigurable device that provisionally configures itself as the primary or secondary peripheral device depending on if another peripheral device is present | |
CN104182374A (zh) | Usb设备及其自动识别微软窗口化操作系统版本的方法 | |
US10872132B2 (en) | Systems and methods for distinguishing information handling system provider-supported information handling resource via system license | |
KR100764743B1 (ko) | 리셋 제어 유닛을 구비한 메모리 카드 및 그것의 리셋 제어방법 | |
CN108052337A (zh) | 一种eMMC量产工具的固件升级方法及装置 | |
US10318459B2 (en) | Peripheral device server access | |
US20050160319A1 (en) | System and method for detecting and reporting resource conflicts |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |