Having done a brief inspection of the initial state of a newly installed KeyServer, now we will illustrate how KeyServer can be configured to manage any application according to a licensing policy that you specify. If your installed KeyAccess client has finished its audit, it will have sent information about every executable program on the client to KeyServer. The great majority are uninteresting. Those which are included in a Product definition will appear in standard Audit reports and they can also be observed or managed. Before you can correlate a Program with purchase records or implement a management policy, a Product record for the program must be created. If a discovered program is not already a component of a Product, you can define a Product manually. Once a program is associated with a product, the program file itself and its record in the Programs window will only rarely be consulted.
We will use Calculator as an example application for testing – it is not included as a component in any of the default Product records. On Windows, you will find a Calculator shortcut in Accessories from the Start Menu. On Macintosh, look in the Applications folder.
12. Make a Product
The Product Recognition Service should create Product records for many of the Products which you actually care to manage - but in cases where Sassafras has not yet defined a product which is present at your site, you can always create a custom-defined product. Select “New Product...” from the Tasks menu. This will bring up the “Add a Product” window. Type “Calculator” as the Product name. You can leave Version, Publisher, Category, Platform, and Release Date blank. These properties are useful for real products, but we are just testing for now and will not need them populated.
Click “Next >” and you will see a screen where you will specify programs which are part of the product. The easiest way to locate Calculator is by searching - click “Search the Programs window”, at the bottom left. In the filter window, check the box next to “Variant Name”, choose 'contains', and enter “calculator” as the search string. Then click “Apply” at the top of the window.
If you don't see Calculator appear in the list below the filter specification, your client has not completed an audit yet. Since KeyServer learns about new programs when they are launched as well as when a client audits, rather than waiting for the audit to finish, just launch Calculator and let it run for a few seconds, then quit it. Then click Refresh at the bottom of the filter window - it should now appear. On many Windows systems the official name for Calculator is “Windows Calculator application” - our search found the program since it contains “Calculator”, but let's give it a shorter name for easy reference in the subsequent steps.
13. Edit the name of a discovered Program
Double click the “Windows Calculator Application” item in the filtered window. At the top of its Program Details window you can edit the name. Change to the shorter name, “Calculator” then use the File menu to Save the change.
Note: we have simply changed the value of a name field for the program record that corresponds to the Windows Calculator application –this has no effect on actual program files stored on client computers.
14. Finish defining the Calculator product
From the filtered list of results, select the Calculator program and drag it onto the wizard – drop it into the list box on the second screen of the wizard (i.e. under the word "Applications", the list box with header "Program Name"). Now click “Next >” to expose the third wizard screen which suggests specific variants of Calculator to be included in the product, rather than including the undifferentiated family of all versions. The wizard text explains the default recommendation when defining a product – typically only one major program variant (as distinguished by digits preceding the first decimal) should be included in a Product.
If your computer audit shows multiple variants to choose from (corresponding to multiple distinct file versions of calculator discovered by the audit), you will have to decide which Product version you are trying to define and select the program variant accordingly. Let's choose the most recent variant for our Product definition. This may be a good time to go back to the first wizard screen and fill in a version identifier for the Product that corresponds to the chosen program variant.
Click “Next >” bring up the fourth screen which lets you point to an earlier product version. But we haven't defined any earlier product version – there is no existing record in the Product database for any version of Calculator. So skip ahead, clicking “Next >” and “Finish” in order to leave the wizard and bring up the “Product Details for Calculator” window.
All of the information you just entered or confirmed in the wizard appears in the Details window, where it can be viewed, edited, or augmented. Notice just below the window title that there is a colored horizontal bar. The red color on the left is an indication that the window has unsaved changes – save the window now in order to commit the new Product record to the database. The stripe will change to a single brown color all the way across. Other data types in KeyConfigure use a different color for their windows, but a configuration window with unsaved changes will always show red at the left end of the window stripe.
If you still have the program filter window open, you may notice that the shading of the gear icon for the Calculator program has changed in the Status column from light to dark. The dark icon indicates that Calculator now belongs to a Product, and so it will no longer be Ignored by standard Audit reports. If you now repeat the "Audit Products (PROD x comp)" report from step 10, you will see this new product included in the audit report in addition to KeyVerify and any other products you saw listed before.
Whenever a client computer periodically uploads an incremental audit, the audit database will reflect newly installed program files, program files that have been deleted, and a Last Usage time for programs that have been launched. Although a vague understanding of usage patterns may be apparent based on the Last Usage shown in audit reports, this information is never current, and more importantly, gives no insight into usage duration or history.
To increase your understanding of usage, you can easily configure a Policy to either Observe or Manage a product. Then all launches and quits will be recorded in KeyServer’s Usage Log. So far in this tour, the only program usage reported to KeyServer has been the launch of KeyVerify in step 2b. Now let's make a Observe Policy for the Calculator product and generate some events in the usage database.
15. Make a Observe Policy for Calculator
Open the product details for Calculator again if you closed it (in the Products window, double-click on Calculator - if you don't see it listed, click the check next to Unreferenced so that all Products will appear in the window) and notice that the Policies pane is currently empty. Right-click on the title bar of this product details window and select New Policy.... This will bring up the Add a Policy wizard and you will see that the first screen already has the correct Product filled in. On the next screen, leave the Scope set to Universal, but change the action from Manage to Observe. Click "Next >" to see a summary of the policy you have specified, then click "Finish" and you will be taken to the Policy Details window. Here you can confirm that the Action is set to Observe and that the Policy is for the Calculator product. Save and close the Policy details. This creates the new record so now you will see it added to the main Policies window. Also, the Policies pane of the Product details is no longer empty – it now shows the reference from this new Policy.
Recall that in making the Calculator Product, the program variant was entered as an Application component. You can see this in the Programs pane of the Product details – the program appears in the Application section, above the Utilities section (which is empty). Utilities are not subject to any policy management – they won't be observed or managed. Launches and quits of Applications, on the other hand, are subject to all management Policies – Manage, Observe, or Deny – that have been defined for the Product.
Notice that in the Policies window, the new policy has a yellow dot on it, indicating Observe, as opposed to the KeyVerify Policy which has a blue dot, indicating Manage.
16. Generate Program Usage and Run a Usage Report
Quit any running copies of Calculator. Then launch Calculator, let it run for 5 seconds or more, and quit. Do this three times. Then from the Reports menu in KeyConfigure, in the Usage sub-menu select “Usage (PRGM x comp)” and click Run with the Date Range left as Entire Data Set. Under the Calculator heading will be listed all the computers on which the Calculator product (defined as a particular calculator program variant) has run with total usage time and launch count. Leave this report window open for now.
Note: if you do not see any usage appear in the report, it means that the Product you are reporting on does not include the particular program file that you are launching. In other words, the particular calculator variant chosen in step 14 (when defining the product) does not include the specific file version that you are launching. We can redefine the product to include all file versions open the Product Details window for our Calculator product, and in its Programs pane, double-click to bring up details for the underlying calculator program. Click just to the left of the exposed major version digit, changing the mask as illustrated below:
Save the program window and close it. Now perform step 16 over again, re-launching calculator a few times. Usage reports will now include new usage for every possible calculator version.
Did you ever quit from KeyVerify (launched in step 2b)? If not, quit KeyVerify now and click the Refresh button at the bottom of the report window. Program usage for KeyVerify will be added to the report if it was not already there.
Whenever a program is in a product and is configured so that it will be observed or managed, clients will send launch and quit messages to KeyServer. As you perform experiments to see how program usage is reflected in various reports, don’t expect to see any changes until a program is quit and the report is refreshed – and don’t expect to see any usage events for “Utilities” in a Product, or launches for which there is no relevant policy!
Most reports summarize usage based on the quit events only, so the “Total Count” field is actually the count of program quits and the “Total Time” does not include programs that are still running. Note: unlike Manage polices for which active usage can be displayed, the "in use" column in the Policies shows a dash for Observe Policies.
17. Report on Policy Usage
Select the “Usage (PLCY x comp)” report from the Reports menu, and click OK. Under each policy heading will be listed all computers that have used the policy.
Compare the Policy usage report from step 17 to the Program usage report from step 16. They are very similar - one shows Policies in every place where the other shows Programs. However, this will not always be the case - recall from step 7 that the KeyVerify Product actually contains three distinct programs (Win, Mac, and Linux), not just one. If you were to launch the corresponding program on another platform and then refresh, the distinction between these reports would become more apparent. The Policy report would still show summary information for the one KeyVerify policy, but the Program report would show distinct usage for the KeyVerify program on the different platforms.
The KeyVerify Product is an example of a cross-platform “suite” product. In general, a product can be configured to aggregate any specified set of programs as a suite under a single product record. For a more familiar example, Microsoft Office is a suite product that includes several different application components that are purchased and licensed together. Usage reports for any policy managing a product will reflect an aggregate of usage for all the individual programs contained in the suite.
As soon as the Calculator product was configured with a Observe Policy, KeyServer immediately began collecting usage data (launches and quits) for the Calculator program and this data forms the basis for usage reports. In the next few steps we will configure a Manage Policy for the product as well. By specifying a limited scope for the various policies, the behavior on any particular client can be customized according to which Policy is applicable. This will mean that some clients will only Observed usage of Calculator, while usage on other clients will be both Managed and Observed.
First, let's clean up. Quit any copies of Calculator and KeyVerify that are still running and Close all KeyConfigure windows report windows, detail windows, and list windows. Now return to KeyConfigure's Standard view by clicking “Standard” in the Window menu.
18. Make a Manage Policy
Select Calculator in the Products window. Use the right-click menu as before, or drag & drop it into white space inside the Policy window to bring up the “Add a Policy” wizard. This time, change the name of the new Policy to distinguish it from the existing Observe Policy. On the second screen, keep the default type of “Manage”. Then you can either click “Next >” until you reach the final screen, or just click “Finish” to go straight to the new Policy Details window. Close and save the window, or simply “Save” from the File menu.
Re-launch the Calculator program and leave it running. As with KeyVerify in step 8, you will see in the Policies window that the “In Use” count for the newly created Policy has changed to 1. In the window, “Policy Details for Calculator Policy”, look in the Information pane and click on the Computer List button to show the window called “Computer Node List for Calculator Policy”. You may have to click “Refresh” at the bottom of this window to see that your client computer has been added. Although the Calculator product still has an Observe Policy, this launch is handled by the Manage policy because Manage policies always take precedence over other policy types.
The 'Metric' chosen by default for our new Manage Policy was 'Site' and the scope is 'Universal' usage is unlimited in both scope and quantity so without further customization, the behavior is essentially the same as the Observe Policy defined in step 15. If all you want to do is analyze patterns of usage on all clients, the Observe Policy may be sufficient. Our new Manage Policy using the Site metric offers some additional control possibilities, but in order to impose a license limit, a different 'Metric' must be chosen under the Metric drop-down menu in the Policy Details window.
Before proceeding, it is important to emphasize that as soon as you configure a Manage Policy for a product, you have created a potential to block the launch of associated programs on client computers - this is, after all, a basic reason for creating a Manage Policy.
When you make any change to the default Manage policy by changing the metric from Site to Node, Lease, or Concurrent you are in general prohibiting usage on computers with KeyAccess installed wherever the restricting conditions cannot be met. Be careful to avoid blocking usage of a program unintentionally!
You should always configure products and policies in the simplest way possible in order to promote efficient allocation of assets without risk of disabling legitimate use. In KeyServer version 7 it is easy to specify policies for certain clients while leaving other clients free to run the same programs. It is probably also worth mentioning here that there is a good reason why programs are by default neither observed nor managed if you were to observe or manage all programs (including system startup utilities etc.), the Usage Log would grow very quickly. Extracting important information would then be slowed by the sheer volume of data.
The next few steps require a second computer in order to effectively demonstrate Node and Concurrent license behavior. Even without actually doing a second client install, reading through these steps will clarify the very different management policies enforced by these two license metrics.