I am looking for a bit of help. I realize there are many threads that explain the difficulties and problems of uniquely identifying a computer as far as piracy preventions and user licenses. This situation is a tad bit different in the fact that users must have an active account to log in and use the software. And this option will only be on a requested basis not for every account.
The issue arises when some of the companies have requested instead of admin accounts, they would like admin locations. I am looking if there a good way to do this, or if this will still have the same issues of changing hardware/ spoofing MAC’s.
Some of the machine need uniquely identifiable we will have remote access to, while others we won’t.
We run on a .NET platform
The only way to use our software is active log-in.
Thanks in advance for any help provided.
I agree with other answers but have an additional suggestion:
Every Windows generates unique SID on installation… you can get that via
DirectoryEntryin theobjectSIDitem ofProperties… see http://msdn.microsoft.com/en-us/library/system.directoryservices.directoryentry.aspxhope this helps a bit…
EDIT – getting MachineSID as string (corrected as per comment):
you need to add a reference to System.DirectoryServices and make sure to have
using System.Linq;andusing System.Security.Principal;andusing System.DirectoryServices;.