CN103902878B - 一种虚拟环境下的License认证方法和装置 - Google Patents

一种虚拟环境下的License认证方法和装置 Download PDF

Info

Publication number
CN103902878B
CN103902878B CN201210587138.7A CN201210587138A CN103902878B CN 103902878 B CN103902878 B CN 103902878B CN 201210587138 A CN201210587138 A CN 201210587138A CN 103902878 B CN103902878 B CN 103902878B
Authority
CN
China
Prior art keywords
virtual machine
physical server
license
hardware information
application software
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
Application number
CN201210587138.7A
Other languages
English (en)
Other versions
CN103902878A (zh
Inventor
曾勇刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN201210587138.7A priority Critical patent/CN103902878B/zh
Priority to EP13868329.7A priority patent/EP2939112A4/en
Priority to US14/652,759 priority patent/US20150326549A1/en
Priority to PCT/CN2013/089037 priority patent/WO2014101651A1/en
Publication of CN103902878A publication Critical patent/CN103902878A/zh
Application granted granted Critical
Publication of CN103902878B publication Critical patent/CN103902878B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/101Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
    • G06F21/1011Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/107License processing; Key processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种虚拟环境下的License认证方法和装置,该方法包括:获得应用软件当前所运行虚拟机的硬件信息,比较License文件中记录虚拟机的硬件信息与获得的虚拟机的硬件信息,如果不同,则License认证失败;否则,进一步获得应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或应用软件当前所运行虚拟机在物理服务器上的唯一识别标识,并比较License文件中记录物理服务器的硬件信息与获得的物理服务器的硬件信息,和/或,License文件中记录唯一识别标识与获得的唯一识别标识;如果License文件中记录物理服务器的硬件信息与获得的物理服务器的硬件信息相同,和/或,License文件中记录唯一识别标识与获得的唯一识别标识相同,License认证成功,本发明中可以避免License认证漏洞。

Description

一种虚拟环境下的License认证方法和装置
技术领域
本发明涉及通信技术领域,特别是涉及了一种虚拟环境下的License认证方法和装置。
背景技术
虚拟软件是一种能够将一台物理服务器虚拟化成若干台逻辑服务器的软件,各逻辑服务器为虚拟机(运行在物理服务器上),各虚拟机上具备CPU(Central ProcessingUnit,中央处理器)、内存、硬盘、主板、网卡等硬件环境,对于虚拟机上运行的应用软件,在虚拟机上运行与在物理服务器上运行没有差别。
现有技术中,应用软件的License认证过程包括:应用软件在注册过程中,将所处设备的硬件信息发送给License文件生成设备,由License文件生成设备生成包含有该硬件信息的License文件,并将该License文件保存在应用软件中;在注册过程结束之后,应用软件在认证过程中,首先获取应用软件当前所处设备的硬件信息,并通过比较License文件中记录的硬件信息与当前获得的硬件信息,确定License认证成功或者License认证失败。
但是,由于虚拟机的硬件信息可以随意进行修改和克隆,即多台虚拟机可能会具有相同的硬件信息,因此在将License认证方式应用在虚拟机上时,会导致License认证漏洞。例如,虚拟机1和虚拟机2具有相同的硬件信息,应用软件应该运行在虚拟机1上时,License文件中将记录有虚拟机1的硬件信息;但是在虚拟机2上认证该应用软件时,会首先获取应用软件当前所处设备的硬件信息,通过比较License文件中记录的硬件信息(此时为虚拟机1的硬件信息)与应用软件当前所处设备的硬件信息(此时为虚拟机2的硬件信息),会得出License认证成功的结果,显然这一License认证结果是错误的。
发明内容
本发明提供一种虚拟环境下的License认证方法和装置,以避免License认证漏洞,从而得到准确的License认证结果。为了达到上述目的,则:
本发明提供一种虚拟环境下的License认证方法,应用于虚拟环境下应用软件的License认证,所述应用软件中保存有License文件,所述License文件中记录有所述虚拟机的硬件信息、所述虚拟机所在物理服务器的硬件信息和/或所述虚拟机在物理服务器上的唯一识别标识;该方法包括以下步骤:
在虚拟机上认证所述应用软件时,获得所述应用软件当前所运行虚拟机的硬件信息,并比较所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息;如果二者不同,则License认证失败;如果二者相同,则:
获得所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识,并比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息,和/或,所述License文件中记录的唯一识别标识与获得的唯一识别标识;
如果所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息相同,和/或,所述License文件中记录的唯一识别标识与获得的唯一识别标识相同,则License认证成功;
如果所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息不同,或者,所述License文件中记录的唯一识别标识与获得的唯一识别标识不同,则License认证失败。
所述方法还包括:在虚拟机上注册所述应用软件时,获得所述应用软件当前所运行虚拟机的硬件信息,并获得所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识;将所述虚拟机的硬件信息、虚拟机所在物理服务器的硬件信息和/或虚拟机在物理服务器上的唯一识别标识发送给License文件生成设备,由所述License文件生成设备利用所述虚拟机的硬件信息、虚拟机所在物理服务器的硬件信息和/或虚拟机在物理服务器上的唯一识别标识生成License文件,并将所述License文件保存在所述应用软件中。
当在虚拟机上注册所述应用软件时,所述获得应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识,具体包括:
获得所述应用软件当前所运行虚拟机所在物理服务器的访问参数,并通过所述访问参数访问相应的物理服务器,以得到所述应用软件当前所运行虚拟机所在物理服务器的硬件信息;或者,
获得所述应用软件当前所运行虚拟机所在物理服务器的访问参数,并通过所述访问参数访问相应的物理服务器,以得到所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识;或者,
获得所述应用软件当前所运行虚拟机所在物理服务器的访问参数,并通过所述访问参数访问相应的物理服务器,以得到所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和在物理服务器上的唯一识别标识。
所述比较License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息,和/或,所述License文件中记录的唯一识别标识与获得的唯一识别标识的过程,具体包括:
比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息;如果二者不同,则License认证失败;如果二者相同,则License认证成功;或者,
比较所述License文件中记录的唯一识别标识与获得的唯一识别标识;如果二者不同,则License认证失败;如果二者相同,则License认证成功;或者,
比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息;如果二者不同,则License认证失败;如果二者相同,则比较所述License文件中记录的唯一识别标识与获得的唯一识别标识;如果二者不同,则License认证失败;如果二者相同,则License认证成功;或者,
比较所述License文件中记录的唯一识别标识与获得的唯一识别标识;如果二者不同,则License认证失败;如果二者相同,则比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息;如果二者不同,则License认证失败;如果二者相同,则License认证成功。
本发明提出一种虚拟环境下的License认证装置,应用于虚拟环境下应用软件的License认证,所述应用软件中保存有License文件,所述License文件中记录有所述虚拟机的硬件信息、所述虚拟机所在物理服务器的硬件信息和/或所述虚拟机在物理服务器上的唯一识别标识;该装置具体包括:
第一获得模块,用于在虚拟机上认证所述应用软件时,获得所述应用软件当前所运行虚拟机的硬件信息;
第一比较模块,用于比较所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息;
第二获得模块,用于当所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息相同时,获得所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识;
第二比较模块,用于比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息,和/或,所述License文件中记录的唯一识别标识与获得的唯一识别标识;
确定模块,用于当所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息不同,所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息不同,或者,所述License文件中记录的唯一识别标识与获得的唯一识别标识不同时,确定License认证失败;当所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息相同,且所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息相同,和/或,所述License文件中记录的唯一识别标识与获得的唯一识别标识相同时,确定License认证成功。
所述第一获得模块,还用于在虚拟机上注册所述应用软件时,获得所述应用软件当前所运行虚拟机的硬件信息;
所述第二获得模块,还用于在虚拟机上注册所述应用软件时,获得所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识。
当在虚拟机上注册所述应用软件时;所述第二获得模块,具体用于获得所述应用软件当前所运行虚拟机所在物理服务器的访问参数,并通过所述访问参数访问相应的物理服务器,以得到所述应用软件当前所运行虚拟机所在物理服务器的硬件信息;或者,
获得所述应用软件当前所运行虚拟机所在物理服务器的访问参数,并通过所述访问参数访问相应的物理服务器,以得到所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识;或者,
获得所述应用软件当前所运行虚拟机所在物理服务器的访问参数,并通过所述访问参数访问相应的物理服务器,以得到所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和在物理服务器上的唯一识别标识。
所述第二比较模块,具体用于比较License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息;或者,比较License文件中记录的唯一识别标识与获得的唯一识别标识;或者,比较License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息,当所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息相同时,比较所述License文件中记录的唯一识别标识与获得的唯一识别标识;或者,比较所述License文件中记录的唯一识别标识与获得的唯一识别标识,当所述License文件中记录的唯一识别标识与获得的唯一识别标识相同时,比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息。
与现有技术相比,本发明至少具有以下优点:本发明中,通过在License文件中记录虚拟机所在物理服务器的硬件信息和/或虚拟机在物理服务器上的唯一识别标识,且在License认证过程中,利用License文件中记录的信息以及应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或应用软件当前所运行虚拟机在物理服务器上的唯一识别标识进行License认证,从而在将License认证方式应用在虚拟机上时,可以避免License认证失效。
附图说明
图1是本发明虚拟环境下的License认证方法流程图;
图2是图1所示对应方法的License认证装置结构示意图。
具体实施方式
本发明提出一种虚拟环境下的License认证方法,用在运行应用软件的虚拟设备中进行License认证,如图1所示,该方法包括以下步骤:
步骤1,在虚拟机上注册应用软件时,获得该应用软件当前所运行虚拟机的硬件信息,并获得该应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或应用软件当前所运行虚拟机在物理服务器上的唯一识别标识。
本发明中,虚拟机的硬件信息具体包括但不限于:虚拟机的CPU序列号、硬盘序列号、网卡MAC(Media Access Control,媒体访问控制)地址等;物理服务器的硬件信息具体包括但不限于:物理服务器的CPU序列号、硬盘序列号、网卡MAC地址等;虚拟机在物理服务器上的唯一识别标识具体可以包括但不限于:物理服务器为虚拟机分配的UUID(Universally Unique Identifier,通用唯一识别码,其用于保证所有虚拟机都有唯一编码)、物理服务器为虚拟机分配的objectID(对象标识)、物理服务器为虚拟机分配的key(密钥)等;其中,不同虚拟机厂商对于虚拟机的唯一识别标识可能不相同,例如:VMWareESX/ESXi的虚拟机的唯一识别标识可以为objectID。
本步骤中,获得应用软件当前所运行虚拟机的硬件信息,并获得应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或应用软件当前所运行虚拟机在物理服务器上的唯一识别标识,具体包括以下步骤:
步骤11、检查应用软件当前运行环境是物理服务器还是虚拟机;如果当前运行环境是物理服务器,则按照现有流程进行License认证,该过程本发明中不再详加赘述;如果当前运行环境是虚拟机,则获取应用软件当前所运行虚拟机的硬件信息,否则,执行步骤12。
步骤12、获取应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或应用软件当前所运行虚拟机在物理服务器上的唯一识别标识。
首先,本步骤中,让用户输入虚拟机的虚拟厂商(如VMWare ESX/ESXi、MicrosoftHyper-v、Citrix XenServer等)以及虚拟机所在物理服务器的访问参数(该访问参数是指访问物理服务器的参数,不同虚拟机厂商的访问参数可能不同,如:对于VMWare ESX/ESXi,可以输入SOAP(Simple ObjectAccess Protocol,简单对象访问协议)参数,也可以输入其它可访问的参数)。
然后,通过物理服务器的访问参数访问相应的物理服务器,并检查应用软件当前所运行虚拟机是否真正运行在这台物理服务器上;如果否,则应用软件注册失败,返回硬件信息收集失败信息;如果是,则通过访问参数访问相应的物理服务器,得到应用软件当前所运行虚拟机所在物理服务器的硬件信息;或者,应用软件当前所运行虚拟机在物理服务器上的唯一识别标识;或者,应用软件当前所运行虚拟机所在物理服务器的硬件信息和在物理服务器上的唯一识别标识。
步骤2,将虚拟机的硬件信息、虚拟机所在物理服务器的硬件信息和/或虚拟机在物理服务器上的唯一识别标识发送给License文件生成设备,接收License文件生成设备根据前述信息生成的License文件,并将该License文件保存在应用软件中。
在本步骤中,所述License文件生成设备具体为应用软件对应厂商的管理设备,当在虚拟机上注册应用软件时,进一步将前述步骤1获取的虚拟机的硬件信息、虚拟机所在物理服务器的硬件信息和/或虚拟机在物理服务器上的唯一识别标识发送给License文件生成设备,由该License文件生成设备利用虚拟机的硬件信息、虚拟机所在物理服务器的硬件信息和/或虚拟机在物理服务器上的唯一识别标识生成License文件,并将该License文件保存在应用软件中。这样,该License文件中就记录有虚拟机的硬件信息、虚拟机所在物理服务器的硬件信息和/或虚拟机在物理服务器上的唯一识别标识这些信息。
步骤3,在虚拟机上注册应用软件成功之后,在虚拟机上认证该应用软件时,获得该应用软件当前所运行虚拟机的硬件信息,并比较License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息;如果二者不同,则确定License认证失败,否则,执行步骤4。
步骤4,获得应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或应用软件当前所运行虚拟机在物理服务器上的唯一识别标识,并比较License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息,和/或,License文件中记录的唯一识别标识与获得的唯一识别标识,确定License认证成功或者确定License认证失败。
本步骤中,获得应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或应用软件当前所运行虚拟机在物理服务器上的唯一识别标识,具体包括:
首先,获得应用软件当前所运行虚拟机所在物理服务器的访问参数,然后通过该访问参数访问相应物理服务器,以得到应用软件当前所运行虚拟机所在物理服务器的硬件信息;或者,应用软件当前所运行虚拟机在物理服务器上的唯一识别标识;或者,应用软件当前所运行虚拟机所在物理服务器的硬件信息和在物理服务器上的唯一识别标识。
在获得上述物理服务器的硬件信息和/或应用软件当前所运行虚拟机在物理服务器上的唯一识别标识信息后,进一步与License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息,和/或,License文件中记录的唯一识别标识与获得的唯一识别标识信息进行比较,确定License认证成功或者确定License认证失败。根据具体的应用场景,包括如下几种情况:
情况一、比较License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息;如果二者不同,则License认证失败;如果二者相同,则License认证成功。
情况二、比较License文件中记录的唯一识别标识与获得的唯一识别标识;如果二者不同,则License认证失败;如果二者相同,则License认证成功。
情况三、比较License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息;如果二者不同,则License认证失败;如果二者相同,则比较License文件中记录的唯一识别标识与获得的唯一识别标识;如果二者不同,则License认证失败;如果二者相同,则License认证成功。
情况四、比较License文件中记录的唯一识别标识与获得的唯一识别标识;如果二者不同,则License认证失败;如果二者相同,则比较License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息;如果二者不同,则License认证失败;如果二者相同,则License认证成功。
本发明中,对于上述License文件中记录的虚拟机的硬件信息、虚拟机所在物理服务器的硬件信息、虚拟机在物理服务器上的唯一识别标识,可以为加密后的虚拟机的硬件信息、虚拟机所在物理服务器的硬件信息、虚拟机在物理服务器上的唯一识别标识;在比较License文件中记录的信息与获得的信息是否相同时,可以先对获得的信息进行加密,之后比较信息是否相同。
综上所述,虽然虚拟机的硬件信息可以进行随意地修改和克隆(即多台虚拟机会具有相同的硬件信息),然而,由于虚拟机所在物理服务器的硬件信息不会修改,且虚拟机在物理服务器上的唯一识别标识不会发生变化,因此本发明中,通过在License文件中记录虚拟机所在物理服务器的硬件信息和/或虚拟机在物理服务器上的唯一识别标识,且在License认证过程中,利用License文件中记录的信息以及应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或应用软件当前所运行虚拟机在物理服务器上的唯一识别标识进行License认证,从而在将License认证方式应用在虚拟机上时,可以避免License认证失效。
基于与上述方法同样的发明构思,本发明还提出了一种虚拟环境下的License认证装置,应用于虚拟环境下应用软件的License认证,在应用软件中保存有License文件,所述License文件中记录有所述虚拟机的硬件信息、所述虚拟机所在物理服务器的硬件信息和/或所述虚拟机在物理服务器上的唯一识别标识;如图2所示,该装置具体包括:
第一获得模块21,用于在虚拟机上认证所述应用软件时,获得所述应用软件当前所运行虚拟机的硬件信息;
第一比较模块22,用于比较所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息;
第二获得模块23,用于当所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息相同时,获得所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识;
第二比较模块24,用于比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息,和/或,所述License文件中记录的唯一识别标识与获得的唯一识别标识;
确定模块25,用于当所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息不同、所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息不同,或者,所述License文件中记录的唯一识别标识与获得的唯一识别标识不同时,确定License认证失败;当所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息相同,且所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息相同,和/或,所述License文件中记录的唯一识别标识与获得的唯一识别标识相同时,确定License认证成功。
进一步地,
所述第一获得模块21,还用于在虚拟机上注册所述应用软件时,获得所述应用软件当前所运行虚拟机的硬件信息;
所述第二获得模块23,还用于在虚拟机上注册所述应用软件时,获得所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识。
具体地,当在虚拟机上注册所述应用软件时,所述第二获得模块23首先获得所述应用软件当前所运行虚拟机所在物理服务器的访问参数,并通过所述访问参数访问相应的物理服务器,以进一步得到所述应用软件当前所运行虚拟机所在物理服务器的硬件信息、所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识或者同时获得所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和在物理服务器上的唯一识别标识。
所述第一获得模块21和第二获得模块23获得所述虚拟机的硬件信息、虚拟机所在物理服务器的硬件信息和/或虚拟机在物理服务器上的唯一识别标识后,进一步将该等信息发送给License文件生成设备,并接收所述License文件生成设备利用所述虚拟机的硬件信息、虚拟机所在物理服务器的硬件信息和/或虚拟机在物理服务器上的唯一识别标识生成License文件,并将所述License文件保存在所述应用软件中。
所述第二比较模块24,具体用于比较License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息;或者,比较License文件中记录的唯一识别标识与获得的唯一识别标识;或者,比较License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息,当所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息相同时,比较所述License文件中记录的唯一识别标识与获得的唯一识别标识;或者,比较所述License文件中记录的唯一识别标识与获得的唯一识别标识,当所述License文件中记录的唯一识别标识与获得的唯一识别标识相同时,比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息。
其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。

Claims (6)

1.一种虚拟环境下的License认证方法,应用于虚拟环境下应用软件的License认证,其特征在于,所述应用软件中保存有License文件,所述License文件中记录有虚拟机的硬件信息、所述虚拟机所在物理服务器的硬件信息和/或所述虚拟机在物理服务器上的唯一识别标识;该方法包括以下步骤:
在虚拟机上认证所述应用软件时,获得所述应用软件当前所运行虚拟机的硬件信息,并比较所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息;如果二者不同,则License认证失败;如果二者相同,则:
获得所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识,并比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息,和/或,所述License文件中记录的唯一识别标识与获得的唯一识别标识;
如果所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息相同,和/或,所述License文件中记录的唯一识别标识与获得的唯一识别标识相同,则License认证成功;
如果所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息不同,或者,所述License文件中记录的唯一识别标识与获得的唯一识别标识不同,则License认证失败;
其中,所述比较License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息,和/或,所述License文件中记录的唯一识别标识与获得的唯一识别标识的过程,具体包括:
比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息;如果二者不同,则License认证失败;如果二者相同,则License认证成功;或者,
比较所述License文件中记录的唯一识别标识与获得的唯一识别标识;如果二者不同,则License认证失败;如果二者相同,则License认证成功;或者,
比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息;如果二者不同,则License认证失败;如果二者相同,则比较所述License文件中记录的唯一识别标识与获得的唯一识别标识;如果二者不同,则License认证失败;如果二者相同,则License认证成功;或者,
比较所述License文件中记录的唯一识别标识与获得的唯一识别标识;如果二者不同,则License认证失败;如果二者相同,则比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息;如果二者不同,则License认证失败;如果二者相同,则License认证成功。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
在虚拟机上注册所述应用软件时,获得所述应用软件当前所运行虚拟机的硬件信息,并获得所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识;
将所述虚拟机的硬件信息、虚拟机所在物理服务器的硬件信息和/或虚拟机在物理服务器上的唯一识别标识发送给License文件生成设备,接收所述License文件生成设备利用所述虚拟机的硬件信息、虚拟机所在物理服务器的硬件信息和/或虚拟机在物理服务器上的唯一识别标识生成License文件,并将所述License文件保存在所述应用软件中。
3.如权利要求1或2所述的方法,其特征在于,当在虚拟机上注册所述应用软件时,所述获得应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识,具体包括:
获得所述应用软件当前所运行虚拟机所在物理服务器的访问参数,并通过所述访问参数访问相应的物理服务器,以得到所述应用软件当前所运行虚拟机所在物理服务器的硬件信息;或者,
获得所述应用软件当前所运行虚拟机所在物理服务器的访问参数,并通过所述访问参数访问相应的物理服务器,以得到所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识;或者,
获得所述应用软件当前所运行虚拟机所在物理服务器的访问参数,并通过所述访问参数访问相应的物理服务器,以得到所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和在物理服务器上的唯一识别标识。
4.一种虚拟环境下的License认证装置,应用于虚拟环境下应用软件的License认证,其特征在于,所述应用软件中保存有License文件,所述License文件中记录有虚拟机的硬件信息、所述虚拟机所在物理服务器的硬件信息和/或所述虚拟机在物理服务器上的唯一识别标识;该装置具体包括:
第一获得模块,用于在虚拟机上认证所述应用软件时,获得所述应用软件当前所运行虚拟机的硬件信息;
第一比较模块,用于比较所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息;
第二获得模块,用于当所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息相同时,获得所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识;
第二比较模块,用于比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息,和/或,所述License文件中记录的唯一识别标识与获得的唯一识别标识;
确定模块,用于当所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息不同,所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息不同,或者,所述License文件中记录的唯一识别标识与获得的唯一识别标识不同时,确定License认证失败;当所述License文件中记录的虚拟机的硬件信息与获得的虚拟机的硬件信息相同,且所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息相同,和/或,所述License文件中记录的唯一识别标识与获得的唯一识别标识相同时,确定License认证成功;
其中,所述第二比较模块,具体用于比较License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息;或者,
比较License文件中记录的唯一识别标识与获得的唯一识别标识;或者,
比较License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息,当所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息相同时,比较所述License文件中记录的唯一识别标识与获得的唯一识别标识;或者,
比较所述License文件中记录的唯一识别标识与获得的唯一识别标识,当所述License文件中记录的唯一识别标识与获得的唯一识别标识相同时,比较所述License文件中记录的物理服务器的硬件信息与获得的物理服务器的硬件信息。
5.如权利要求4所述的装置,其特征在于,
所述第一获得模块,还用于在虚拟机上注册所述应用软件时,获得所述应用软件当前所运行虚拟机的硬件信息;
所述第二获得模块,还用于在虚拟机上注册所述应用软件时,获得所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和/或所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识。
6.如权利要求4或5所述的装置,其特征在于,当在虚拟机上注册所述应用软件时;
所述第二获得模块,具体用于获得所述应用软件当前所运行虚拟机所在物理服务器的访问参数,并通过所述访问参数访问相应的物理服务器,以得到所述应用软件当前所运行虚拟机所在物理服务器的硬件信息;或者,
获得所述应用软件当前所运行虚拟机所在物理服务器的访问参数,并通过所述访问参数访问相应的物理服务器,以得到所述应用软件当前所运行虚拟机在物理服务器上的唯一识别标识;或者,
获得所述应用软件当前所运行虚拟机所在物理服务器的访问参数,并通过所述访问参数访问相应的物理服务器,以得到所述应用软件当前所运行虚拟机所在物理服务器的硬件信息和在物理服务器上的唯一识别标识。
CN201210587138.7A 2012-12-28 2012-12-28 一种虚拟环境下的License认证方法和装置 Active CN103902878B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201210587138.7A CN103902878B (zh) 2012-12-28 2012-12-28 一种虚拟环境下的License认证方法和装置
EP13868329.7A EP2939112A4 (en) 2012-12-28 2013-12-11 OPERATING SOFTWARE IN A VIRTUAL COMPUTER ENVIRONMENT
US14/652,759 US20150326549A1 (en) 2012-12-28 2013-12-11 Operating software in a virtual machine environment
PCT/CN2013/089037 WO2014101651A1 (en) 2012-12-28 2013-12-11 Operating software in a virtual machine environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210587138.7A CN103902878B (zh) 2012-12-28 2012-12-28 一种虚拟环境下的License认证方法和装置

Publications (2)

Publication Number Publication Date
CN103902878A CN103902878A (zh) 2014-07-02
CN103902878B true CN103902878B (zh) 2017-08-22

Family

ID=50994192

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210587138.7A Active CN103902878B (zh) 2012-12-28 2012-12-28 一种虚拟环境下的License认证方法和装置

Country Status (4)

Country Link
US (1) US20150326549A1 (zh)
EP (1) EP2939112A4 (zh)
CN (1) CN103902878B (zh)
WO (1) WO2014101651A1 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9342669B2 (en) * 2013-07-11 2016-05-17 Dialogic, Inc. Systems and methods of licensing and identification of virtual network appliances
CN105550566B (zh) * 2015-12-06 2019-03-29 北京天云融创软件技术有限公司 一种多用户共享软件授权usb设备的方法
CN108092984B (zh) * 2017-12-25 2021-02-26 新华三技术有限公司 一种应用客户端的授权方法、装置及设备
CN109063423B (zh) * 2018-07-16 2020-12-11 北京知道创宇信息技术股份有限公司 应用软件授权方法及系统
CN111222101B (zh) * 2018-11-27 2022-06-03 北京数安鑫云信息技术有限公司 防止软件非法拷贝使用的方法及装置、采集软件行为信息的方法及装置
CN112749383A (zh) * 2019-10-29 2021-05-04 上海商汤智能科技有限公司 软件认证方法和相关产品
CN110798466B (zh) * 2019-10-29 2021-11-19 西安雷风电子科技有限公司 一种虚拟机场景下软件license的验证方法及系统
CN111062005A (zh) * 2019-11-05 2020-04-24 武汉慧联无限科技有限公司 版权认证密码的生成方法、认证方法、装置及存储介质
CN110968861A (zh) * 2019-12-02 2020-04-07 紫光云技术有限公司 一种基于集群虚拟机license认证的安全监控方法
CN111104665A (zh) * 2019-12-04 2020-05-05 紫光云(南京)数字技术有限公司 一种基于集群虚拟机license认证的安全监控方法
CN112751832B (zh) * 2020-12-18 2022-08-02 湖南麒麟信安科技股份有限公司 一种虚拟机操作系统在线授权认证方法、设备和存储介质
CN113282376B (zh) * 2021-07-22 2021-11-12 北京关键科技股份有限公司 应用于云平台架构的UKey虚机穿透方法
CN113946854B (zh) * 2021-10-29 2023-11-03 苏州浪潮智能科技有限公司 一种文件访问控制方法、装置及计算机可读存储介质
CN114363008B (zh) * 2021-12-10 2024-03-15 神州绿盟成都科技有限公司 一种虚拟设备认证方法、装置、电子设备及存储介质
CN115022065B (zh) * 2022-06-15 2023-06-20 聚好看科技股份有限公司 License认证方法及系统
CN117290822B (zh) * 2023-11-23 2024-03-08 深圳华杰共创科技有限公司 一种云数据库软件系统的许可证许可控制方法及相关设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2216732A1 (en) * 2009-02-10 2010-08-11 Novell, Inc. Virtual machine software license management

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2849230B1 (fr) * 2002-12-24 2005-04-22 Francois Bangui Procede et dispositif de verification de l'integrite d'une application logicielle sans cle de chiffrement/dechiffrement
CN101853355B (zh) * 2005-02-14 2013-04-24 松下电器产业株式会社 集成电路
US8875266B2 (en) * 2007-05-16 2014-10-28 Vmware, Inc. System and methods for enforcing software license compliance with virtual machines
US8839391B2 (en) * 2009-02-05 2014-09-16 Wwpass Corporation Single token authentication
US20100325735A1 (en) * 2009-06-22 2010-12-23 Etchegoyen Craig S System and Method for Software Activation
US9003141B2 (en) * 2011-11-14 2015-04-07 Ca, Inc. Enhanced software application platform

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2216732A1 (en) * 2009-02-10 2010-08-11 Novell, Inc. Virtual machine software license management

Also Published As

Publication number Publication date
EP2939112A1 (en) 2015-11-04
CN103902878A (zh) 2014-07-02
WO2014101651A1 (en) 2014-07-03
US20150326549A1 (en) 2015-11-12
EP2939112A4 (en) 2016-09-07

Similar Documents

Publication Publication Date Title
CN103902878B (zh) 一种虚拟环境下的License认证方法和装置
CN106105146B (zh) 在密码证明资源处保护客户端指定凭证
CN104715183B (zh) 一种虚拟机运行时的可信验证方法和设备
CN103139159B (zh) 云计算架构中的虚拟机之间的安全通信
US20120311575A1 (en) System and method for enforcing policies for virtual machines
CN108399329A (zh) 一种提高可信应用程序安全的方法
CN110447032A (zh) 管理程序与虚拟机之间的存储器页转换监测
CN104216743B (zh) 可配置的虚拟机启动完整性维护的方法及系统
CN107196922A (zh) 身份认证方法、用户设备和服务器
WO2022134760A1 (zh) 数据处理方法、装置、电子设备及介质
US20140047238A1 (en) Device identification using synthetic device keys
CN107408096A (zh) 对硬件块的适应性存取控制
CN109344572B (zh) 分布式对象的许可方法和系统
US8776057B2 (en) System and method for providing evidence of the physical presence of virtual machines
CN111967065B (zh) 一种数据保护方法、处理器及电子设备
KR20140051350A (ko) 디지털 서명 권한자 의존형 플랫폼 기밀 생성 기법
CN106911814A (zh) 大规模数据分布式存储方法
TWI737172B (zh) 用於安全作業系統映像之增量解密及完整度驗證之電腦系統、電腦程式產品及電腦實施方法
CN113055380A (zh) 报文处理方法、装置、电子设备及介质
CN105993156A (zh) 服务器访问验证方法以及装置
CN107493204B (zh) 一种镜像检测的方法以及装置
WO2022116761A1 (en) Self auditing blockchain
CN102983969B (zh) 一种操作系统的安全登录系统及安全登录方法
CN109145621A (zh) 文档管理方法及装置
CN107005558A (zh) 基于位置的用户歧义消除

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Applicant after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Applicant before: Huasan Communication Technology Co., Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant