LICENSING USING A NODE LOCKED VIRTUAL MACHINE
A method of licensing software to a particular instance of a virtual machine that is being run as part of an Active Directory domain. Since a virtual machine is a simulation of a physical machine, i.e. a computer, it can easily be cloned to produce an exact duplicate. This poses a problem when it is desired to license an instance of software for use only on a particular virtual machine. The technology disclosed allows for software to be licensed for execution only on a particular instance of a virtual machine that is being run as part of an Active Directory domain.
1 . A method of obtaining a license certificate for software executing on an instance of a Microsoft Windows® operating system executing on a virtual machine, abbreviated VM, belonging to an Active Directory domain to the VM, including:
obtaining a machine ID from an instance of a Microsoft Windows® operating system executing on a VM and belonging to an Active Directory domain;
obtaining a domain ID for said Active Directory domain;
sending to a license grant application the machine ID and the domain ID or a unique value derived from the machine ID and the domain ID; and
receiving from the license grant application digitally signed license data that includes the machine ID and the domain ID or a unique value derived from the machine ID and the domain ID; and
storing the digitally signed license data.
2 . A method of managing a license of software executing on an instance of a Microsoft Windows® operating system executing on a virtual machine, abbreviated VM, belonging to an Active Directory domain, including:
receiving from a software application executing on an instance of a Microsoft Windows® operating system executing on a VM and belonging to an Active Directory domain, a request including a machine ID and a domain ID or a unique value derived from the machine ID and the domain ID;
incorporating into a response the machine ID and domain ID, or the unique value derived from the machine ID and the domain ID;
digitally signing the response; and
sending the response to the said software application.
3 . A method of managing a license of software executing on an instance of a Microsoft Windows® operating system executing on a virtual machine, abbreviated VM, belonging to an Active Directory domain, including;
obtaining a machine ID from an instance of a Microsoft Windows® operating system executing on a VM and belonging to an Active Directory domain;
obtaining a domain ID for said Active Directory domain;
generating a current unique value derived from the machine ID and the domain ID;
retrieving digitally signed stored data which includes a registered unique value;
verifying the digital signature on the stored data; and
verifying that the current unique value matches the registered unique value.
4 . The method of claim 3 , in which the current unique value combines the machine ID and the domain ID.
5 . The method of claim 3 , in which the current unique value is a hash of the machine ID and the domain ID.
6 . A computer system for obtaining a license certificate for software executing on an instance of a Microsoft Windows® operating system executing on a virtual machine, abbreviated VM, belonging to an Active Directory domain to the VM, including:
a processor and a computer readable storage medium storing computer instructions configured to cause the processor to:
obtain a machine ID from an instance of a Microsoft Windows® operating system executing on a VM and belonging to an Active Directory domain;
obtain a domain ID for said Active Directory domain;
send to a license grant application the machine ID and the domain ID or a unique value derived from the machine ID and the domain ID; and
receive from the license grant application digitally signed license data that includes the machine ID and the domain ID or a unique value derived from the machine ID and the domain ID; and
store the digitally signed license data.
7 . A computer system for managing a license of software executing on an instance of a Microsoft Windows® operating system executing on a virtual machine, abbreviated VM, belonging to an Active Directory domain, including:
a processor and a computer readable storage medium storing computer instructions configured to cause the processor to:
receive from a software application executing on an instance of a Microsoft Windows® operating system executing on a VM and belonging to an Active Directory domain, a request including a machine ID and a domain ID or a unique value derived from the machine ID and the domain ID;
incorporate into a response the machine ID and domain ID, or the unique value derived from the machine ID and the domain ID;
digitally sign the response; and
send the response to the said software application.
8 . A computer system for managing a license of software executing on an instance of a Microsoft Windows® operating system executing on a virtual machine, abbreviated VM, belonging to an Active Directory domain, including:
a processor and a computer readable storage medium storing computer instructions configured to cause the processor to:
obtain a machine ID from an instance of a Microsoft Windows® operating system executing on a VM and belonging to an Active Directory domain;
obtain a domain ID for said Active Directory domain;
generate a current unique value derived from the machine ID and the domain ID;
retrieve digitally signed stored data which includes a registered unique value;
verify the digital signature on the stored data; and
verify that the current unique value matches the registered unique value.
9 . The computer system of claim 8 , in which the current unique value combines the machine ID and the domain ID.
10 . The computer system of claim 8 , in which the current unique value is a hash of the machine ID and the domain ID.
11 . A computer readable storage medium storing computer instructions configured to cause a processor to:
obtain a machine ID from an instance of a Microsoft Windows® operating system executing on a VM and belonging to an Active Directory domain;
obtain a domain ID for said Active Directory domain;
send to a license grant application the machine ID and the domain ID or a unique value derived from the machine ID and the domain ID; and
receive from the license grant application digitally signed license data that includes the machine ID and the domain ID or a unique value derived from the machine ID and the domain ID; and
store the digitally signed license data.
12 . A computer readable storage medium storing computer instructions configured to cause a processor to:
receive from a software application executing on an instance of a Microsoft Windows® operating system executing on a VM and belonging to an Active Directory domain, a request including a machine ID and a domain ID or a unique value derived from the machine ID and the domain ID;
incorporate into a response the machine ID and domain ID, or the unique value derived from the machine ID and the domain ID;
digitally sign the response; and
send the response to the said software application.
13 . A computer readable storage medium storing computer instructions configured to cause a processor to:
obtain a machine ID from an instance of a Microsoft Windows® operating system executing on a VM and belonging to an Active Directory domain;
obtain a domain ID for said Active Directory domain;
generate a current unique value derived from the machine ID and the domain ID;
retrieve digitally signed stored data which includes a registered unique value;
verify the digital signature on the stored data; and
verify that the current unique value matches the registered unique value.
14 . The computer readable storage medium of claim 13 , in which the current unique value combines the machine ID and the domain ID.
15 . The computer readable storage medium of claim 13 , in which the current unique value is a hash of the machine ID and the domain ID.