End-to-End Licensing Process

Licensing-as-a-Service is a new technique in cloud-based management of software assets.  You create, manage, audit and (potentially) withdraw licenses to your products from a License Server you control through Heirloom. Customers check their licenses through the Internet and no "license keys" are needed to distribute to your customers or misused by them.  Because this is a new paradigm there are a number of moving parts to granting, sending and using the license system.  

This article covers these steps from different points of view:  (1) the salesman that sells your product and stipulates the contractual terms, (2) your customer service representative who fulfills that order, (3) a license administrator -- your customer -- who installs and carries out the audit procedures to keep their license current.

This Licensing-as-a-Service demonstration is presented as 3 videos that cover license and product creation with the Admin Panel, installing a license with the Command Line Interfaceexporting/importing a license to/from an "secure" site, and using the service through the Java API Interface.  

The demonstration consists of 3 videos which can be viewed within a browser or downloaded and played through a media player.  These videos cover:

  • LaaS-1 -- Creating new customers, licenses and license files from them
  • LaaS-2 -- Installing the license on a system where software checks will be performed
  • LaaS-3 -- Exporting/Importing a license from an online (Internet-connected) to an offline (Internet-disconnected) system.
Note:  If these links do not work you have not been granted access to the content, contact to request access.
The videos refer to a "welcome e-mail" that explains to the customer how to get started using their new "Basic Product" purchase of a fictional company.  It also goes into the contractual obligation to upload "usage statistics" or "transaction counts" periodically to keep their license current.  The welcome e-mail from "myco" (the product licensee) to a representative from "hisco" (the end-customer) is below:
On Tue, 5/14/13, Mel HendricksonjenVonApple <mnh000@gmail.comwrote:

From: Mel HendricksonjenVonApple <>
Date: Tuesday, May 14, 2013, 10:47 PM


Dear Mike:

Thanks for purchasing our new product!  You've told us you need to use our product in 'offline mode', meaning your computer where our product is running does not have Internet access.  This requires a few steps to personalize and update the license, and upload product transaction usage data to us.
Start by installing the new license info on a 'proxy license checker' computer that does have Internet access (for example, your laptop).  Copy the following contents (between the ------, but not including the ---- lines) into a file '' in your home directory.

#Heirloom Computing, Inc - License and Transaction Checking
#Tue May 14 15:45:28 PDT 2013

Go through the following process in a Windows Command prompt on your laptop or desktop computer:
  1. verify the license on your laptop (the "proxy machine")
    java -jar HCILicensing.jar -r
  2. this personalizes and updates the file for your laptop as well as verifies the license
  3. move the updated file to your production server using your secure file transfer protocol such as a USB flash drive and place it into the home directory on that machine (the "production machine").
You'll be able to run our product in production after this step and for a period of time (__ months, as stipulated in our contract) at which time upload the transaction count info.  You can use this command to see when you have to go through this process:

  1. verify the license on your desktop (the "proxy machine")
    java -jar HCILicensing.jar -l

It will print something like: 

  • License Server Next Checked:  2013-05-21 19:58:43
  • Grace Period: 6days, 23hours, 4minutes


When that time comes and you must send us your current usage statistics, please follow this process, first from your production system:

  1. export the transaction counts from your production system:
    java -jar HCILicensing.jar -x proxy.txt
  2. move the proxy.txt file to your laptop (proxy checking system) using your secure file transfer protocol such as a USB flash drive.

On your laptop, upload the transaction count to us with the following command on your laptop (proxy checking machine):

  1. upload the usage statistics to us from your laptop:
    java -jar HCILicensing.jar -f proxy.txt -r
  2. move the proxy.txt file containing the updated license info from your laptop (proxy checking system) to your production machine using your secure file transfer protocol such as a USB flash drive

The updated license info inside proxy.txt file must now be imported into your production system.  Use this sequence on your production machine:

  1. import the updated license info into your production system:
    java -jar HCILicensing.jar -i proxy.txt

You're all set to go!  Your production license is valid for the agreed-upon time period.  Of course, you can continue to use your production system while you go through this process (provided your license has not expired).

Just page me if you have problems!


MyCo, Inc. Customer Service
Pager 1-212-867-5309
Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request


Please sign in to leave a comment.
Powered by Zendesk