Contents - Index

5.3.5 The Licence Policy

As you can see, part of the licensing process involves creating a Licence Policy. The Licence Policy defines exactly how the user will be able to operate your Sheriff-protected application, for example whether use of the application will be restricted to a particular machine or whether the licence will expire after a certain number days.

Please note the following important points:

  • Details of every licence you issue are saved to a log file (SlsGen.log), to which you can append your own comments.
  • Generally, renewing a licence overwrites the existing policy. For example, if you want to extend a user's licence from thirty days to sixty you must take into account the number of days already used. In this example, if the user had already used up fifteen days, you would issue a licence key for forty-five days. You can check the number of days that have been consumed by using the Verify Status feature. Alternatively you can use the Extend Existing Licence option when issuing the licence key.
  • Where security takes priority over flexibility we recommend that you define a Licence Policy where the licence is "Standalone" (i.e. locked to a single machine - cannot be shared over a network) and where the Move and Export functions are disabled.
  • While a "Standalone" licence is very secure and, among other things, locks to the speed of the processor, Intel has introduced a technology for mobile computing known as "SpeedStep", which is implemented on the Pentium III mobile processor. Because it is possible to configure SpeedStep enabled processors to vary the speed at which they operate (in order to conserve battery power) a Standalone licence may give rise to error messages. In this case the Standalone box should not be checked - simply issue a policy for one concurrent user.

    NB. With Sheriff 2.41 and above this problem should not occur with any kind of licence key.

Licence - Time Meter

Software runs for a specified number of days (E.g. 21 days).

Licence - Unit Meter

Each chargeable event is known as a 'unit' (E.g. an execution of the software, viewing/printing a document, or any specified period of time). Note that any additional days/units you will overwrite those already issued. E.g. if you first issue a licence key for 180 days and during this time the user requests that the licence be extended to a total period of one year, you must take into account the units already consumed when issuing the new licence. This is not a problem because you can verify the user's Status Code prior to issuing the new licence key.

Licence - Expiry Date

The licence will expire on the selected date.

Licence - Concurrent User Limit

Limits the maximum number of concurrent network users. If this box is not checked then the number of concurrent users will be unlimited. If you check the box and the limit is set to "1" you have the option of restricting usage to a single machine i.e. the licence will be tied to the machine on which it is installed and cannot be shared over a network (see Standalone Licence Key below).

Note that unless the Disable Export option is "on" (see below) licence keys up to the maximum number of permitted concurrent users will be exportable to other machines and the number of concurrent users permitted on the source machine will be decremented accordingly (see the Sheriff Administrator help for further details).

Licence - Feature Access Key

Software can be licensed as shareware, demo software or buy-as-you-need.

Licence - Extend Existing Licence

Enables publishers to extend rather than replace an existing licence, so that the client's existing licence policy is not overwritten when the new Licence Key is issued. This is used when the clients' licence is controlled by day or unit metering and the publisher wishes to incrementally add new days/units to the existing licence.

Options - Reusable Key

The user should keep a record of the licence key number. Provided you enable the 'Reusable Key' option when defining the Licence Policy, the user will be able to regenerate the key on the original hardware using the Licence Administrator (this can be done if, for example, the licence file is accidentally deleted). The 'Reusable Key' option can only be enabled if the key is to last indefinitely (not metered). Note that even a reusable key cannot be restored if the user's hard disk has been reformatted.

Options - Reusable Reference Code

This option is only available when Expiry Date metering has been selected. It is used when you want to be able to extend the date on which the licence will expire without first contacting the user for a new Reference Code. In this way you can at any time extend the period for which your application will run simply by generating a new licence key for the user.

Options - Disable Export

You can disable the user's ability to export a licence key to another machine, so locking the licence to one machine only.


  • For security reasons export must be disabled when you issue a Reusable Key (the Disable Export option is automatically invoked when you issue a Reusable Key).

  • In a network configuration the maximum number of licence keys that can be exported is equal to the maximum number of concurrent users defined in the Licence Policy. Therefore if you permit an unlimited concurrent users and Disable Export is not set, an unlimited number of licence keys could be exported.
Options - Disable Move

You can disable the user's ability to move a licence to another machine using the Move function. This prevents a user from permanently relocating a licence to another machine E.g. when they upgrade their hardware.

Options - Standalone Licence Key

When the Concurrent User Limit is set to "1", checking the Standalone Licence Key box ensures that the protected application can only execute on the machine on which it is installed i.e. the application is not available over a network and the licence file must reside on the same machine as the application.


You can add any comments to the log file (SlsGen.log), an ASCII text file which automatically keeps track of all transactions in the Licence Generator.

Publisher Data for User (optional)

If a publisher feels that the Sheriff Licence Key does not provide enough features, the Licence Key can be supplemented by Publisher Data. Publisher Data is saved with the Licence Key and is in effect an an extension to the Feature Access Key facility. However, unlike the Feature Access Key, Publisher Data can be up to 32 bytes long and is entered by the user at the time of entering the Licence Key.

NB. The publisher's data may be saved or retrieved by using the appropriate Sheriff API functions. The sole function of the Publisher Data edit box in the Sheriff Licence Generator is to allow the publisher's data to be logged together with the details of the Licence Key. In other words, the publisher's data entered into the License Key Generator does not become part of the Licence Key, it is only logged in "slsgen.log". To use the publisher data you have to call the API function Sls_SetPublisherData