Using Tokens to Increase Licensing Flexibility
One of the advantages of using the Reprise License Manager is being able to capitalize on the decades of license management experience we’ve been able to distill into RLM.
Among the more-advanced and capable of the features we’ve put into RLM is “Token Licensing”.
If you’ve ever wondered how to provide a license model to your customers that allows you to:
- define product rights in terms of relative value between your products, or
- allow a user to consume a mix of your products up to a pre-determined level of value, or
- let a user consume a more-expensive alternative license when a more-common product is unavailable,
then token licenses may be what you need.
To start using token licensing, simply implement the RLM API as you would for any supported license model. If this is already done, great! No need to create a second version of your product just to support token licensing – it’s built in.
Now, think of how you want the value of your products to relate to one another. You may want to create a hierarchy of products, with lowest value to highest (“lite”, “basic”, “pro”, “guru”, etc.) Or, you may wish to use a notion of “product units” against which all token-licensed products are ranked by relative value.
Then, enable token licensing via the license files you give to your customers. Specify a LICENSE in terms of another of your company’s products (or “product_units” or other surrogate for value):
LICENSE software_co sample 1.0 permanent token sig=xxxx \ token=”<product_units 2.0 5>”
Be sure to also include in the customer’s license file the appropriate amount of “product_units”:
LICENSE software_co product_units 2.0 permanent 100 sig=xxxx
In the above example, the customer will consume five “product_units” for each instance of “sample” that they run, up to a concurrent limit of 100 “product_units”, or twenty concurrent instances of “sample”.
There are obviously many more examples we could provide; hopefully this conveys the rudiments of an approach to using tokens.