Skip to main content

Software > Software Development >

License Use Management

Technical detail

IBM License Use Management (LUM) is the IBM product for technical license management.

LUM Components: a set of APIs and a licensing system

LUM allows other software products to be license-enabled. The execution of a license-enabled software is subject to some restrictions, like the availability of a "key" or "product password". Licensing systems are usually used by SW vendors to protect their intellectual property while providing customers with a SW asset management tool.
The license enablement process is based on the addition of some API calls into the product's code

linkLUM Components
linkLUM at a glance
linkLUM deployment architecture
linkLUM, a Vendor Perspective
linkLUM, a Customer Perspective

LUM Components


Back to top

LUM at a glance

A typical LUM scenario for enabling a SW application

The figure above pictures the LUM scenario.
It is is split in two parts, one pertaining to the SW vendor, the other to the customer.
The SW vendor uses the LUM Application Developr's Kit (ADK) to license-enable the application, which is later shipped to the customer. The Vendor, using the License Creation Tool (LCT), also generates an Enrollment Certificate File (ECF), which contains the specific product password which specifies all the license information (e.g product identifier, license type, number of license units, validity period etc.). The ECF is a flat, ASCII file that can be shipped to the customer either on the same media along with the product or on a separate media, or even downloaded from the vendor's internet site.

The customer needs to install and configure the LUM runtime environment, Application Runtime Kit (ARK), only once. The ARK can be freely distributed with the product or made available in any other way.
The ARK for the different supported platforms is also availabe for downloading from this site (see downloads section)

The customer needs to enroll  the product by importing the ECF using the Basic License Tool (BLT), which is the graphical interface provided by the ARK to the License Server. Once the product has been enrolled, the license(s) is added to the License Server data base. Now the application, at running time, can check the entitlement by requesting a product specific "license" from the License Server that would return an "OK" if everything is all right (i.e. if the requested license is available).

The customer accesses the License Server through the BLT to get all the information regarding the licensing activity, and to access the log files.

The ADK

The LUM Application Developer's Kit (ADK) contains the tools needed to implement licensing technology in an application program. To do the enablement, SW vendors code API calls in their products and embed the code that services the API calls. The products become license-enabled.

The ADK offers the vendor great flexibility in the level of control to be exercised by the enabled application, the type of customer licensing environment for which the application is intended, and the implementation of various policies.

The ARK

LUM Runtime contains the tools needed in a customer environment to manage licenses and get up-to-date information about license usage. The License Use Runtime software is free of charge and is available for download from this site (see downloads section).

The ARK includes the License Server and the Basic License Tool (BLT).

The LCT

LCT is a command line interface program which creates Enrollment Certificate Files (ECF), according to the specified parameters.

The ECF

The ECF is a flat, ASCII file generated by the LCT.
It contains an encoding of all the information related to the technical license; the ECF is usually imported during the enrollment of the product by means of the BLT. LUM also supports automatic enrollment (no user intervention required) The ECF can be distributed in the same media along with the SW product or as a separate file.

Below is an example of a license certificate

[LicenseCertificate]
CheckSum=272ACE18B66AD08E834BE6B5FCFD7F0F
TimeStamp=1061974465
PasswordVersion=7
VendorName=License Test Vendor
VendorPassword=kz5esmu69hzyw
VendorID=4ca0fd5cf000.0d.00.07.1a.9a.00.00.00
ProductName=LUM V.M.U
ProductID=100
ProductVersion=1.0
ProductPassword=8p6izvxhnqvzerz2tu7tqdyaxncsaaa
ProductAnnotation=Simple Nodelocked Product feature 1
AdditionalLicenseData=
LicenseStyle=nodelocked
LicenseStartDate=08/27/2003
LicenseDuration=375
LicenseEndDate=08/31/2004
LicenseCount=1
MultiUseRules=
RegistrationLevel=3
TryAndBuy=No
SoftStop=No
Bundle=No
CustomAttribute1=No
CustomAttribute2=No
CustomAttribute3=No
SubCapacityEligibleProduct=No
TargetType=ANY
TargetTypeName=Open Target
TargetID=ANY
ExtendedTargetType=
ExtendedTargetID=
SerialNumber=serial
Upgrade=No
InstallProgram=
CapacityType=
MaxOfflinePeriod=
DerivedLicenseStyle=
DerivedLicenseStartDate=
DerivedLicenseEndDate=
DerivedLicenseAggregateDuration=

The license (*)

The Application requests one or more "licenses" to run. What actually happens is that the application specifies a set of parameters which defines the physical object (the product password) installed in the license server data base, and passes them to the License Server.
The License Server then checks the existence and the validity of the product password, returning a status code to the application which then takes the appropriate actions. That is, the License Server is NOT enforcing any policy. Its role is to describe to the application the current situation as the result of a number, relevant concurrent factors.

Depending on the terms of the software product acquisition, vendors can implement licenses in two fundamental ways: nodelocked licenses and network licenses.
A nodelocked license is stored on the workstation where the license-enabled product is installed, for the exclusive use of that node.

With network licenses, a full client/server configuration must be set up for License Use Management whereby the License Server grants licenses to any client in the network.

(*) A license, in the context of License Use Management, is permission to use an instance of a licensed software product or service, according to the basis on which the vendor charges for the product or service.
(Note that the term license does not here refer to the license agreement that governs use of and rights to a product.)

Read more about license types and schemes

The BLT

The Basic License Tool (BLT) is a powerful tool that interfaces the LUM Licensing System.
The BLT is part of the runtime ARK.
Among its capabilities are:

The License Server

The License Server is the heart of the licensing system. It's where all the licenses are stored. Its main purpose is to grant licenses to requester applications (clients).
The License Server is part of the runtime ARK.
In the picture the License Server runs on a separate node in the network but it can be also on the same node where the application is.
The License Servers can be configured to be either or both:

There is also a third kind of license server configuration which is only required to manage special license types. It is the

The central registry is a repository of information that all the other network license servers can use. If you plan to install customer-managed use products with network licenses, or products with reservable licenses, you must identify one (and only one) central registry. Otherwise, the central registry license server is not required.

The Enabled Application

To do the enablement, SW vendors code API calls in their products and embed the code that services the API calls. The products become license-enabled.

The Runtime Libraries

The Runtime Libraries provide the enabled aplication with a means of accessing all services supported by the LUM licensing system, thus locating the license server, cache the necessary data, forward the license requests etc.

Back to top

LUM deployment architecture

Here is a representation of a possible licensing network architecture in place on a LAN/WAN. In this example, an LUM enabled application runs on the same host where a Nodelocked License Server is.
A Network License Server is also available on a separate host. A third machine accommodates the Central Registry.
The application will get its license either from the Nodelocked License server or the Network License Server depending on the type of the license requested.
The Central Registry is involved in the process of getting the license only in particular cases.

A possible licensing network architecture on a LAN

LUM is extremely scalable, as you can see in the following picture a perfectly working licensing scheme can be put in place just without any runtime and network needed, in this case the license (a simple text string in the nodelock file) is directly accessed by the application, no license server is needed:

A standalone licensing system

LUM, a Vendor Perspective

License Use Management benefits software vendors by enabling them to:

In the license-enabling process, the SW vendor can:

Back to top

LUM, a Customer Perspective

License Use Management benefits the customers of software vendors by enabling them to:

Back to top

We're here to help
Easy ways to get the answers you need.
E-mail us

or call us at
877-426-3774
Priority code:
104CBW67