Nope, no 3rd party tools. We don't even use Microsoft's licensing stuff, it's all roll-your-own
.
The 10,000 foot view is:
1) Each customer is assigned a unique serial number
2) During activation, they supply that serial number, which is sent to our server over the internet.
3) Assuming a valid serial number is given, our licensing server passes back the valid sites (one customer can have multiple sites) for the serial number. Any sites that have reached their maximum activations won't be sent back (they must be deactivated first.)
4) The customer selectes the site they want to install, and that information is passed back to our server over the internet.
5) We programatically create the licensing .dll, which is specific to the customer, site, and machine (a given licensing .dll will only work on the machine for which it was created.)
6) This licensing .dll is passed back to the customer's installation over the internet, and the install places it in the proper location.
7) Whenever licensing needs to be checked (i.e. a strataframe designer is fired up, or our server is started in the case of our medical application), the license DLL is checked.
That's the basic gist of it. We can't get into the nut and bolts particulars for obvious reasons, but that should give you an idea of the overall procedure .