Programs Window


Concept

The Programs window lists all of the programs known to your KeyServer. This list is the starting point from which you configure management of the software installed on client computers. The list of programs forms the basis for all license control, usage monitoring, and audit reporting. Programs are automatically added to this list as the KeyAccess client monitors software usage and performs audits. You can categorize programs into folders and use filters to focus your attention on the set of programs that you are interested in managing.

Discovery

There are three ways that programs can be added to the Programs Window. When KeyAccess reports a launch of a previously unknown program, this program is added to the list and will appear with a pink filter icon in the Folder column to show that it has been newly discovered. Likewise, programs found during a software audit are added to the list and marked with this icon. Discovered items are assigned an action and a folder according to a set of rule filters. If the discovery rules are well configured, then the assigned action of newly discovered items will usually be correct. In cases where it is not the correct action, you can manually assign the action you do wish to use for a particular program. Once a discovered item has been acknowledged by you, the pink filter icon will go away, and rules will never be applied to that program item again.

  • KeyConfigure refreshes the program list each time it logs on to KeyServer and whenever you click the Refresh button at the bottom of the window. If you are running KeyConfigure and new programs are discovered, this button will become red to indicate that you should refresh the window.

You can manually add to the list of known programs by dragging a program from the desktop of the computer where you are running KeyConfigure into the Programs window. In this case the program will not be marked as discovered, although it will adopt the default management action. If the program is already known by your KeyServer, the window will scroll to reveal the program's entry. Also, whenever you place a program under “keyed” control, an entry for that specific keyed version is added to the Programs window. In this case, the management action will be set to Controlled.

KeyServer will begin to gather information about a program once it is added to the list. From its entry in this list you can change the program's management options, view identifying information about the program, and access the list of computers on which the program is installed.

Program Families, Variants, & Versions

KeyServer collects information about each distinct version of a program. For simplicity in managing programs, the items you see listed in the programs window are “Program Variants”, which group together multiple specific versions of a program, and allow you to ignore the uninteresting detail of which precise version is installed or used. All versions of a program are part of the same “Program Family”, even if they have been divided into multiple variants. By default, all versions of each program are part of a single variant, but this can be configured in the program details window, e.g. so that each major version of a program is a separate variant.

Program Family

By default, multiple versions of the same program are grouped into a single “family” in the program list. All program files that have the same “program Identifier” are considered to be in the same family. On Windows, the program identifier is based on the file property called “Original File Name”. On Macintosh, the identifier is the four character application signature plus the four character file type (usually “APPL”). For KeyServer purposes, Windows and Macintosh programs are always considered to be in different families (e.g., all versions of Excel on Windows are in one family, while all versions of Excel on Macintosh are in a different family). The two families are distinguished by platform icons in the program list.

The initial name for a program is taken from the particular program file that was discovered first in the family. On Windows the name comes from the “Product Description” property in the Version information. If this property does not exist, the file name is used (displayed in italic font). On Mac, the file name is used. In either case, KeyConfigure attempts to strip off any version suffix (numeral characters) in order to name the family in a generic way.

Program Version

A program family contains all the known versions of a program. The version is determined directly from the Version resource of an executable file as assigned by the developer of the program. If the developer does not assign a version, KeyServer will record it as version 0.0.0.0.

For the vast majority of programs, the family identifier and the complete version number fully identify an executable. There are some cases, however, where different executable files within a family have the same version number. In these cases, the size of the executable file can be used to further distinguish different versions of a program.

Program Variant

Often you will want to manage all versions within a program family as a single unit, without making a distinction between the versions. However, KeyConfigure does give you a way when necessary to split the family into several “variants” so that they may be assigned different actions or otherwise managed separately. Generally, only the first one or two digits from a version number will be used to distinguish separate variants from a program family, although you do have the option to use all digits of the version (and even the executable size).

When a family is split into separate variants, each variant is listed separately in the Programs window. Even though the Identifier for several variants may be the same, when taken together with the Version field each variant will be uniquely identified and can be managed independently. For this reason, the list in the Programs window might more accurately be called the “program variants list”. Note that two unrelated programs may have the same name - you should not expect program names to be unique.

When a program family has not been split into separate variants, the Variant column will not show a version number. If more than one distinct version has been discovered for the program family, the Variant column will display the text “all...” in a light grey font. Otherwise, with just one discovered version, the Variant column for the family will be left blank.

For example, suppose the FileMaker program for Windows has been discovered by KeyServer. Rather than treat all versions in the same way, you may want to treat FileMaker versions 5.x.x.x differently from FileMaker versions 6.x.x.x. You can double-click on the FileMaker item to expose its details window where you can slide the version mask right to include one digit of version information. Then the two variants will appear in the Programs window and the version column will display “5.x” for one variant and “6.x” for the other.

Program Actions

Every program listed in the Programs window is either Controlled, Logged, Audited, or Ignored. The action which is configured for any particular program determines what KeyAccess will do when a user attempts to use the program.

  • Controlled (blue box icon) - Programs which are set to Controlled can only be run if a License permits it. In addition, the usage of Controlled programs (and the Licenses which enable them) is always recorded in the Usage database. Finally, Controlled programs are always shown in standard audit reports. If the blue icon for a controlled program has a slash through it, then even though it is marked as controlled, there is currently no license controlling it - anyone attempting to run the program will be denied!
    • If the slash is black, you can remedy this inconsistency by simply dragging the program item onto one of the license items in the Licenses Window (perhaps you will first want to create a new license for control just of this program).
    • If the slash is red, this means that it is impossible for KeyServer to enable the program to launch because it is a keyed program, and the necessary key is missing from the Program Database. In order to re-enable the program, you would first need an offline keys file which contains the key. The key can be copied from the offline file and pasted into the Programs window - the slash will change from red to black and you can then proceed as above. Note: red slash items typically occur when KeyServer upgrade instructions have not been followed and then the “orphaned” keyed programs are discovered through an audit.


  • Logged (yellow triangle icon) - Programs which are set to Logged will have usage information recorded (like controlled programs), but usage cannot be controlled. That is, the launch of Logged program will never be denied. Finally, Controlled programs are always shown in standard audit reports. Setting a program to Logged is similar to controlling it with a Site License, but there are a few differences.
    • Logged programs can always be run and will continue to run until they are quit.
    • A program controlled by a Site License can be configured such that it is not allowed to be launched offline. This would mean that even though there are unlimited licenses available, the program could not be run when the server can't be reached.
    • A Site License can be configured such that it is not Detachable, which would mean that if a user launched the program, then became disconnected from the KeyServer, they would have to quit the program.
    • A Site License can be restricted by a Group requirement. E.g. the group might be defined by network Location specifying the IP range of the “site”.
    • If a logged program is launched and then the client goes offline for a very long time, the KeyServer will eventually enter a quit event for the program, but only after waiting a number of weeks before “giving up”. On the other hand, if a controlled program is launched and then the client goes offline, the corresponding license will be automatically returned after about 15 minutes, and at that point in time, a quit event is recorded for the program. If the program is detachable, it will continue to run on the client, and eventually after the program is quit, then when the client contacts the server, and offline, detached launch and quit will be recorded. With KeyServer and KeyAccess 6.0, these differences were more exaggerated and could be a problem for reporting. With KeyServer 6.1 and KeyAccess 6.1, the differences are minimized and reports deal with logged programs better in general.


  • Audited (green dot icon) - Programs which are set to Audited are shown in standard audit reports, but usage is not tracked at all (except for a last usage time reported as part of an audit). If a program is changed to Audited from Logged or Controlled, then usage events will no longer be added to the Usage database. Previously recorded usage events will remain in place.

  • Ignored (grey diamond icon) - Programs which are set to Ignored are not shown in standard audit reports, and usage is not tracked. If a program is changed to Audited from Ignored, the audit data for the program will henceforth be shown in standard audit reports.

You should set as many programs as possible to Audited or Ignored, to make the Usage database smaller. System Utilities, Screen savers, and Control Panels are probably not very interesting, and can be Ignored. Furthermore, setting programs to Ignored rather than Audited will help make audit reports more meaningful.

Actions / Folders Assigned to Newly Discovered Programs

When a new program is discovered, it is checked against a series of filters in order to determine what action should be assigned, and what folder it should be put in. This is so that the admin will not have to decide what to do with every single program. The filters are tested in order, and the first time the program matches a filter, the actions associated with the filter are applied. Note that if a rule sets a folder but not an action, the action will get set to the action associated with the default, Discovered rule. The program does remain unacknowledged, as indicated by a pink “filter” icon in the Folder column. If the rules are changed, they can be reapplied to all such unacknowledged programs, in order to easily recategorize them. If an admin manually sets an action or a folder on a program, the program becomes acknowledged, and henceforth will not be recategorized by rules.

Default Action

If the newly discovered program does not match any of the filters in the ruleset, there is always a final rule which will match all newly discovered programs. This rule will assign the program to the Uncategorized folder, and will give it a “default action”, which can be configured to be either Ignored, Audited, or Logged.

Acknowledging Programs

Newly discovered programs will remain unacknowledged (with a pink filter icon in the Folder column) until they are acknowledged by an Administrator. There are two ways to acknowledge a program. The simplest is to right-click the program and select “Acknowledge”. This will not change the action for the program, or the folder which the program is in - it will merely change the program from unacknowledged to acknowledged. The program will also be acknowledged if you change the action for the program, or move it to a different folder. Since you are making an explicit decision about what action to use for the program, or how to categorize the program, this implies acknowledgement.

Organizing / Filtering the Programs List

The Display column on the left of the Programs window is used to restrict the program list on the right to a selected subset. The default view hides Ignored items but shows all other programs. Clicking on the double-check icon that appears between the Display pane and the Program list pane will toggle between the current selection, and this default state.

  • The Action section at the top separates programs into the four actions. You can drag items from the programs list onto any of the actions, in order to set the action for the program. Toggle the check marks in front of each category in order to control which items are displayed.
  • The Folders section lists all folders which have been created, along with the default Uncategorized folder. Right-click anywhere in the Folders pane in order to add your own custom Folders. If the folder icon is pink, it indicates that there are discovered programs in this folder. Programs may also be dragged from the Programs list onto any of folder icons in order to assign the program to that folder.
  • The Filters section shows any user defined filters, as well as the default Discovered filter. Click in front of a filter – a check mark will appear to indicate that the list of Programs displayed on the right has been restricted to only show those that satisfy the filter selection criteria. Selecting the Discovered filter will select all unacknowledged programs. Filters are also used to categorize newly discovered programs. Any filter which has a folder icon on the right hand side of the line has an associated rule which can place newly discovered programs into a folder. All filters which have rules will be displayed first, before all filters which do NOT have rules (and so are for display filtering only). Filters with rules are listed in the order in which the filters are tested on a newly discovered program. The final filter with a rule is always the Discovered filter. Newly discovered programs will ALWAYS match this filter, so the rule associated with this filter acts as a default, if the program did not match any of the previous filters with rules. Holding the mouse over the folder icon will display a floating window which tells the name of the folder which the rule will place programs in. Filters with rules also set the action of newly discovered programs, as indicated by the action icon to the left of the folder icon. Double-clicking a filter will allow you to edit the filter, set the folder and action for a rule, or add/remove a rule from a filter entirely. You can change the order of rules by dragging a filter with a rule into a different location in the list of filters with rules. However, the Discovered filter must always be the last rule.

If check marks appear in more than one of the left side selection panes, any displayed item must simultaneously satisfy the display criteria within all such panes. Clicking the double check-mark icon in the upper right will toggle between showing all non-Ignored programs, and showing the most recently filtered set of programs.

Context Menu Actions

Right-clicking a Program in the Programs Window allows you to to access information related to the program, or run reports on just that program.

  • Show Users only appears in the menu for controlled programs. It will bring up a window showing all current users of the program.
  • Show Installs brings up a window which lists all computers that have this program installed. This option is not available if the program is set to Ignored.
  • Show Family brings up a window which lists all variants which share the same identifier (usually this means they are logically the same program, but some may be keyed, or have a different variant version - e.g. 2.x, 3.x, and 3.4.5 keyed).
  • Acknowledge only appears in the menu for discovered programs (those with a pink filter icon in the Folder column). It will change the status of the program to acknowledged.

Drag and Drop Actions

Programs in the Programs Window can be Dragged and Dropped to the following locations, among others:

  • Onto any of the four action icons in the left hand side of the Programs Window (Controlled, Logged, Audited, or Ignored). This sets the action of the program, and also sets the program to acknowledged.
  • Onto any folder in the left hand side of the Programs Window. This will add the program to the folder. Each program is a member of exactly one folder. This will also acknowledge the program
  • Onto any license in the Licenses Window. This sets the action for the program to Controlled (if it is not already), and sets the program to be controlled by the license. Note: a controlled program can be controlled by more than one license - the controlling licenses are listed in its Program Details window (under the licenses tab).
  • Into the Programs list of any License Details window. This sets the action for the program to Controlled (if it is not already), and sets the program to be controlled by the license.

Help Index 2009.09.01

Related Topics

Filters
Program Details Window
Licenses Window
Program Audit Window

Help Index
?