VMware {code} Community
AlfredoMoran
Contributor
Contributor
Jump to solution

How to get the underlaying hardware UUID

That's the question: Is there a way to obtain the underlaying hardware UUID from a guest operating system (Windows) to prevent virtual machines to be copied to another host? In other words, I need a way to detect that a virtual machine with my activated software have been copied to another hardware. My protection is based on the NIC MAC address and the motherboard UUID.

Thank you in advance.

0 Kudos
1 Solution

Accepted Solutions
lamw
Community Manager
Community Manager
Jump to solution

The VMware Tool does not expose anything special for you to key off of ... there is a way to set custom attributes within the .vmx file which can then be extracted from with the guest, the problem with this is A) you need to add an entry to the .vmx file which again requires the privileges we've been discussing B) this can be blocked by setting specific security entries within the .vmx to not allow for this information

I would recommend you contact VMware for the best approach on accomplishing this and definitely sign up for TAP

=========================================================================

William Lam

VMware vExpert 2009

VMware ESX/ESXi scripts and resources at:

Twitter: @lamw

VMware Code Central - Scripts/Sample code for Developers and Administrators

VMware Developer Community

If you find this information useful, please award points for "correct" or "helpful".

View solution in original post

0 Kudos
6 Replies
lamw
Community Manager
Community Manager
Jump to solution

Which UUID are you referring to VM's or Host (ESX/ESXi), if it's the latter or in either case, your utility would A) need to have credentials to login to either vCenter or ESX/ESXi host which may violate any security you have in place B) also have access to the management network which again will violate most security policies.

Here is where you would find the Host UUID - http://www.vmware.com/support/developer/vc-sdk/visdk400pubs/ReferenceGuide/vim.host.SystemInfo.html

=========================================================================

William Lam

VMware vExpert 2009

VMware ESX/ESXi scripts and resources at:

Twitter: @lamw

VMware Code Central - Scripts/Sample code for Developers and Administrators

VMware Developer Community

If you find this information useful, please award points for "correct" or "helpful".

AlfredoMoran
Contributor
Contributor
Jump to solution

Thank yoy very much.

I refer to the Host UUID, the real one, to detect if my VM has been copied to another hardware, breaking my software protection/activation system. I would like to know if de host o ESX UUID can be read to mak it part of my unique ID to generate the activation key. Now I don't have a way to determine if my activated software alngo with th virtual machine is being duplicated to be hosted on another hardware.

0 Kudos
lamw
Community Manager
Community Manager
Jump to solution

I see this type of question in the dev forums all the time and I personally don't have a good answer or how ISV's are tracking this .... the problem is to retrieve any information outside of the guest (e.g. vCenter or ESX/ESXi host) you'll need credentials to pull that information and network access to the management system. If you can, then yes you can pull that information but in general it's probably a bad idea and you most likely won't be able to if you distributed your application and it's installed in somebody's environment as it most likely will be segmented off from allowing the VMs to access the infrastructure services.

So yes, you can get this information .. whether or not it'll be truly useful in really generate a unique value to ensure your software has not been copied ... that's a hard one. You'll probably need to associated it with additional unique values perhaps instanaceUuid for a given VM which is suppose to be unique ...

I don't know if other VMware Dev's have any other suggestions but this is something that you may want to contact VMware support directly and specifically their dev support organization OR TAP program for ISV/developers. I would definitely be interested to hear how this is currently validated to ensure duplication of the VM is not occurring?

=========================================================================

William Lam

VMware vExpert 2009

VMware ESX/ESXi scripts and resources at:

Twitter: @lamw

VMware Code Central - Scripts/Sample code for Developers and Administrators

VMware Developer Community

If you find this information useful, please award points for "correct" or "helpful".

AlfredoMoran
Contributor
Contributor
Jump to solution

As I can see it's not sou easy what I'm asking for !http://communities.vmware.com/images/emoticons/confused.gif!. I was thinking in some kind of device driver for windows which communicate with VMWare tools to obtain special information like this, without any other kind of authentication. In the same that way we can obtain VM's UUID with th Windows API GetSystemFirmwareTable. Do you know how does Microsoft to prevent Windows servers from being copied through VM duplication?

Thank you very much.

0 Kudos
lamw
Community Manager
Community Manager
Jump to solution

The VMware Tool does not expose anything special for you to key off of ... there is a way to set custom attributes within the .vmx file which can then be extracted from with the guest, the problem with this is A) you need to add an entry to the .vmx file which again requires the privileges we've been discussing B) this can be blocked by setting specific security entries within the .vmx to not allow for this information

I would recommend you contact VMware for the best approach on accomplishing this and definitely sign up for TAP

=========================================================================

William Lam

VMware vExpert 2009

VMware ESX/ESXi scripts and resources at:

Twitter: @lamw

VMware Code Central - Scripts/Sample code for Developers and Administrators

VMware Developer Community

If you find this information useful, please award points for "correct" or "helpful".

0 Kudos
pfoy0102
Contributor
Contributor
Jump to solution

Was there any conclusion here from VMWare? Is it a combination of CPU info and MAC address and UUID?

0 Kudos