Last Modified August 30, 2022

License Manager - self-hosted

  1. Overview
  2. Implementing a License Manager with RESTful API
  3. Password Recovery on LOGIN Page
  4. DELETE Device on DISPLAY page
  5. Supporting Multi-User / Floating Licenses with Seats > 1
  6. A License Manager Demo

 

Your Users will greatly appreciate access to a User License Manager where they are able to recover their License Activation Code or their License Password, and manage some of their License entitlements themselves and at their convenience.

A side benefit to you is reducing the number of Support calls or emails.

You can offer a License Manager as follows:

Hosted by you

Using the software_DNA RESTful API interface, you can implement a complete License Manager integrated into your web site and tied into your store-front and back-end business processes.

See below for more information on implementation.

Hosted by softWORKZ

We provide a complete License Manager implementation on our web site, accessible by all your Users, in two forms:

  • Generic License Manager
  • software_DNA branded License Manager

You can also use your own CSS file to customize the softWORKZ hosted License Manager.

For more information on this option see License Manager - hosted by softWORKZ

 

Implementing a License Manager with RESTful API

The following is a high-level overview of the implementation steps and logic flows recommended for a License Manager which includes a Login Page and a License Display page. For details on exact syntax and use of the RESTful API, see RESTful API  

A complete implementation example in C#.NET is available - see below for download link and screen shots.

 

 

Password Recovery on LOGIN Page

The RESTful API supports a Password Recovery process for Users who have forgotten their License Password:

  • User initiates the process that generates a Password Reset code which is sent to the License Email
  • User then enters the Password Reset Code, and a New Password to complete the recovery process

Implementation requires:

  • a Forgot Password button on the LOGIN page
  • a new screen to capture the License Code and issuing the POST Licenses Password Recovery API call
  • a new screen to capture the License Code, Password Reset Code and New Password, and issuing the POST Licenses Password Update API call

 

DELETE Device on DISPLAY page

For DNA Products that use Level 3 Validation (Mandatory Validation), you can allow Users to de-activate devices from their License. Note that you must also turn on the myLicense Seat Delete option for the product.

Licenses that have been activated using Offline or OffNet activation should not be allowed to delete devices as these licenses would never be updated. The License JSON information includes a flag <OfflineActivation> to signal this.

Implementation requires:

  • in the License Display page, when listing active devices, add a Delete or De-Activate button
  • when clicked, issue the Licenses Delete Device API call with the device’s <machineID> provided in the Licenses Detail information
  • we recommend that you implement a Confirm pop-up before removing the device
  • refresh the DISPLAY page with a new POST License Details API call

 

Supporting Multi-User / Floating Licenses with Seats > 1

Multi-User and Floating licenses (with Seats > 1) add a License Admin Password to allow the License Admnistrator to manage the License. The License Administrator is the first User to activate the License on behalf of all the other Users of the Multi-User License.

On the 1st Activation, a License Portal Confirmation Key is sent to the License Email. This License Key is then used in the License Portal to set the License Admin Password used when accessing the Portal.

Multi-User / Floating Licenses with Seat = 1 are treated like Single-User licenses, and do not need an Admin Password.

To support Multi-User / Floating licenses in a License Portal:

  • after the LOGIN page and retrieving the License information, check the <MuAdminPassSet> flag
  • if false, add a screen to capture the License Portal Confirmation Key and a new License Admin Password and issue the POST Licenses Password Update API call
  • if true, add a screen to capture the License Admin Password and issue the POST Licenses Validate Admin Pass API call
  • display the License information
  • add a Update License Admin Password button, and an additional screen to allow the Administrator to change the License Admin Password

To allow the Administrator to recover the License Admin Password:

  • in the screen for capturing the License Admin Password, add a Recover Password button
  • use the POST Licenses Password Recovery API call to trigger the sending of a Admin Password Reset Code
  • add a screen to allow the User to enter the Admin Password Reset Code and a new License Admin Password
  • use the POST Licenses Password Update API call to update the License Admin Password

 

A License Manager Demo

For a complete implementation example in C#.NET, you can download the following code sample and use as is, or as a guide for your implementation:

  C#.NET License Manager Demo

You can try the License Manager Demo here: License Portal Demo .

Use a License Code from the RAPID P0002964 Demo Product that you can get from the Resources -> Code Samples page of the DNA Control Panel.

Screenshots of the License Portal Demo

  • Login Page

    Portal LOGIN
  • License DISPLAY page

    Portal DISPLAY
  • Recover Password page

    Portal Recover Password
  • Enter License Confirmation Key page

    License Key
  • Enter Admin Password page

    Enter Admin Password