To introduce some license levels (organization, computer, user), I need to pinpoint information that identifies the object (organization, computer, user) without user interaction.

To identify the user for a user based license, I have used the user name, domain (either AD domain, or computer name), and user security ID (user objectGUID).

To identify the computer for a computer based license, I have used the computer name, domain, vendor, model, and serial number (of the computer model).

But I struggle to find a good information pinpoint on the organization based licenses. First I was thinking about the AD domain. But this is can be faked to easily. Now I am thinking to enhance the information pool with a Active Directory GUID. But does this even exists? I explicitly do not mean the computer GUID of a AD domain controller, as they are subject to frequent change. Is there any GUID in the AD ecosystem, that identifies the domain and not the domain controller? So I will receive the same "organization GUID" with every domain controller?

  • Not sure I understand your scenario in full - a windows application which runs inside the network of an organization, on their user's machines, shall identify the organization? Is internet access available for the clients? – Doc Brown Nov 23 '18 at 11:53
  • Correct, but don't assume there is any internet access. I only treat the domain controller available for the user's machines. With organisation license, the software shall run on any user account on any machine that is associated with the organization's AD – burnersk Nov 23 '18 at 11:58
  • Downvoters, it would be really nice either to leave a comment here, or to "vote for close" with a reason, so giving OP a hint what they could improve. Downvoting with neither is quite unprofessional. – Doc Brown Nov 23 '18 at 15:26

A license server together with a unique hardware key ("dongle") which you give to the organization is a standard approach for solving such licensing problems. Just store the information which key id belongs to which company somewhere, then you can identify the company that way.

This solution has some advantages

  • it cannot easily be circumvented by "cloning" the server machine (using virtualization) or the AD domain

  • it does not even make the assumption that the organization uses an Active Directory network

Of course, the disadvantage is that this solution is not in pure software, so buying and managing the hardware keys will require some effort.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.