Our product is used by a surprising number of schools, which is frankly a pain in the butt for me. They have proxies and/or firewalls with rigid administration (making it hard to get exemptions), multi-user systems where they want the license applied to the machine, don’t want their users to have admin rights, and in some cases even wipe the user-level data store regularly.
I’ve asked for this before (Machine-level license vs user-level) and followed the suggestion to have the system store an encrypted version of the key in the local store and auto-activate for new users. This only works for online activations, not offline, and isn’t fully secure because I don’t have it machine fingerprinted like the proper activation data is.
I would love a way to have an offline activation store data in HKLM (or OS equivalent for Mac / Linux) and have the user execution attempt to read it from there first, and fall back to the user profile store if the machine-level data isn’t found. I would execute the OfflineActivate() function with an LA_SYSTEM or LA_ADMIN flag to tell the system to store the activation data “globally” and that the current user has admin rights. Subsequent users wouldn’t be able to write this data, but could read it.