Exercise Overview:

Entitlement Management and Compliance

AppClarity's entitlement library is modelled after the ISO standard 19770-3, which standardizes entitlement management. So far, no entitlement information has been added to AppClarity so we're unable to determine if Products are compliant or not, or what upcoming costs are for software or maintenance. Entitlements can either be added manually to individual Products, or by importing information from a CSV file. In this lab, you will learn to use the two methods and observe the effect this has on the Products for which entitlements have been added.

Adding Entitlement for a Product manually

In this exercise, you will learn how to manually add Entitlements to an individual Product using the AppClarity Console.

Add Entitlement information

In this task, you will manually add entitlements.


  1. Go to the Configurations tab of the AppClarity console, and select Users
  2. Select 1ETRN\AppInstaller, and in the properties pane, input the following email address and click Apply:
  3. Users that do not have emails configured cannot update entitlements, so an email must be inputted in order to continue the exercise. Since we installed AppClarity with the AppInstaller account, we never configured the user properties to include an email address.
  4. In the AppClarity console, open the Products page, ensure the current Management Group is Production Computers and locate the Synthesizer Eloquence Product, published by Freedom Scientific
  5. Right-click the Synthesizer Eloquence Product and select License Managed > Yes. Note that the compliance indicator to the left of the Product is now a red indicating the Product does not have sufficient licenses. The compliance indicator to the left of the Publisher is also a red , indicating the Publisher has at least one License-Managed Product that is not compliant
  6. Note that the License Requirement column shows the Install Count value and the License Entitlement column is blank
  7. From the vertical toolbar in the AppClarity console, click the Entitlements button to open the Entitlements Library
  8. Note that the Entitlements Library page is filtered by Management Group similar to the Products page and All Groups has been selected by default.
  9. Click the Management Group filter drop-down and note that only Central, Lab Computers and Production Computers are available. The Sales Management Group was not defined as a License Container and therefore cannot have licenses applied to it
  10. Select the Production Computers Management Group
  11. In the Entitlements Library tool bar, click on the Create Entitlement button
  12. Review the New Entitlement form. Note that many fields have an asterisk next to them. These are mandatory fields
  13. Based on the type of entitlement you choose; certain fields might change from optional to mandatory. For instance, if you choose subscription vs. perpetual, the start date becomes mandatory.
  14. In the Entitlement Type section, ensure that the Entitlement Type is set to License
  15. Not a License refers to an entitlement object that might be a maintenance entitlement, or evaluation, or some other type of entitlement that is not an actual license entitlement.
  16. Change the license type from Perpetual to Subscription
  17. Input a start date of one year ago, and set the end date to 5 months from today
  18. In the Maintenance section, select With maintenance and then Add maintenance
  19. Within the Entitlement Library, there exists the ability to input maintenance agreements. These can be added on their own and linked to the product entitlement, or both can be created at the same time. In this lab, we are creating both at the same time. In the next lab, we'll create them separately and link them.
  20. For the maintenance start and end dates, enter the same dates at above (you can copy and paste from above)
  21. Leave Renewal,Upgrade and Consolidation unchecked
  22. In the Product pane, enter Freedom Scientific as the vendor, and Synthesizer Eloquence as the product
  23. Most vendors allow for licenses to be applied to the version which was purchased, and all below it. In this example, we will use that model.
  24. In the Valid for versions field, select Less than or Equal to. For Version Name select the highest of the 6.x versions from the drop-down menu
  25. In the Quantity and Metrics pane, in the Quantity field, leave Unlimited unchecked and enter a quantity of 20
  26. For Metric Type select Device. For Metric Name input per device
  27. In the Contract pane, click on Add New Contract Details

  28. Depending on your resolution, you may have to scroll right to see the Contract pane.
  29. Add an Agreement Number. Enter the date from a year ago as the Starting Date
  30. Click on the Add link button.
  31. Via the SkyTap Shared Drive shortcut on the desktop navigate to 1E AppClarity Course Content\1E App Clarity v5.2 - Course Content and download and copy SE Contract.pdf to c:\temp
  32. Click on Add new contract link. Input a Link Name and hit the Browse button, browse to c:\temp and select SE Contract.pdf and Click Save Selection
  33. Scroll down to the bottom pane, and select the Rights and Limitations tab
  34. Expand Subscription Use Right and ensure a subscription use right exists, displaying the interval for the subscription entitlement we created in the Entitlement Type pane
  35. Click on Add Right and / or Limitation
  36. Input Country in the Right Name box
  37. Click Add Limitation in the current frame to open the limitations space
  38. Select Country for limitation type, and set Define to Not Approved Set. In the Not Approved Set field, type in Narnia. Click on the plus sign next to the field to add Narnia

  39. The limitation defines this entitlement to not be approved for use in Narnia. There are many different limitations such as OS and Language to allow for granular Rights and Limitations of an entitlement.
  40. Click on the Cost and Order tab
  41. Under costs, select USD as the currency. Input 10 for the Unit Cost, and select Monthly as the Frequency. Note that the total cost of entitlement is calculated as $3400 ($10*20 units*17 months)
  42. Under Maintenance Costs, select USD as the currency. For Unit Cost, input 10, and set Frequency to yearly. Note that the total cost of entitlement from a maintenance perspective is calculated at $200 (20 units*$10*1 year)
  43. Select the Product Details and Audit & Exclusions tabs to review the fields available for input. These are not mandatory, but allow for additional metadata to be attached to any entitlement for richer content
  44. At this point, the entitlement entries for both the product and maintenance have been fully inputted. On the top right, click on the Publish to Library link to publish the entitlements

  1. You will be presented with a warning stating you are about to publish an entitlement that contains one or more attachments. Click Yes

  1. Click OK on the dialog box stating that the entitlement was successfully published. Note that you have the option to not display this dialog by unchecking the Always show this message checkbox
  2. Observe that there are now two entitlements listed for the Production Computers management group – one for the subscription and one for the maintenance. Also, note that the Cost of Software and Maintenance Cost/Year are summarized at the top of the page.

Importing Entitlements

In most cases, you will want to import entitlement information from another data source rather than manually entering it through the console. AppClarity allows entitlement information to be imported from a CSV file, which can be generated from just about any data source you may use for recording purchases.

Prepare an import file

Entitlements are imported from a CSV file. The definition of the fields that are available to be used as columns in the CSV Import file can be found within the console in the Data Capture tab, under the Entitlements section. If all fields are not going to be used, a header row defining each column must be used. When using a header row in the Import CSV file, the order of the columns does not matter. 

Entitlements can be assigned to specific Management Groups, making it easy to assign entitlements to the appropriate group of machines.
A sample import file (with a header row) has been created for you as a starting point. In this task, you will edit this file for importing licenses in the next task.

  1. Via the SkyTap Shared Drive shortcut on the desktop navigate to 1E AppClarity - Course Content\1E AppClarity v5.2 - Course Content folder
  2. Download and copy the AC52-Entitlement-Import.csv file into the C:\Temp folder

  1. Double-click C:\Temp\AC52-Entitlement-Import.csv to open in in OpenOffice Calc. In the Text Import dialog box ensure Comma is the only separator selected, as shown below and click OK

    It is very important to open it as shown above. Using a different separator can alter the format of the file and cause it to fail during the import process!
  1. Note that there are 15 fields have been defined in this file, each with a header column
  2. Review the Entitlement Type column. Note that there is a Subscription License in the list. Note that the Subscription License type has an Entitlement Start Date and an Entitlement End Date. For any subscription entitlements, the start and end dates become mandatory
  3. Review the Management Group column, and note that we are importing licenses to different Management groups
  4. Note the 2nd row. The Vendor Name for Microsoft is spelled MSoft
  5. Note the 5th row. The Product Name is spelled Snagif. The actual name of the product is Snagit
  6. Note also the that the Version Name for the Core Software product is blank
  7. If a Version Name is left blank, an additional column, Version Validity must be populated. In this case, we will use "All Versions", which allows the license to applied to any version of the software.
  8. For the Visual Studio subscription license (2nd row), change the Entitlement Start Date to a year ago. Change the Entitlement End Date to 7 months from today. The format must be YYYY-MM-DD
  9. When editing the dates in Open Office, you'll may notice a ' at the front of the cell once you begin editing. Do not remove it, or else the date format will change and the import will fail. Conversely, you can change the dates by editing the file using notepad. This is a feature of OpenOffice and shouldn't manifest in excel or notepad.
  10. In the AppClarity console, go to the Products tab and review the install counts for the products in the import file. Make sure you are viewing the appropriate Management Group (Production Computers for all but Core Software which is using Lab Computers). We will later review compliance based on the licenses being imported
  11. Save the file. When prompted with format options, select Keep Current Format

Import Licenses from the file

You will now import the licenses defined in AC52-Entitlement-Import.csv.

  1. From the Entitlements tab in the AppClarity console, click on the Import Entitlements button
  2. Browse to C:\Temp and select the AC52-Entitlement-Import.csv file which we reviewed earlier
  3. Click OK. AppClarity will begin the import process. You will see Import operation may take a while, please wait… displayed on the Entitlements page. Allow for the import to finish
  4. Upon completion, AppClarity will present an output file. The file will attempt to open using OpenOffice Calc. Verify that Comma is the only delimiter and click OK to review the file
  5. Within the CSV file, you will see a column at the end titled Import Status. Notice that for the entry where we inputted MSoft for the Vendor Name and Snagif for the product name do not show Success as the import status. The reason for failure is listed here, in our case Unknown Publisher and Unknown Product respectively
  6. Note also that Microsoft from our original file has been changed to Microsoft Corporation. There are heuristics built into the Entitlements engine to identify common aliases for Publishers
  7. Close the file, and review the window stating the results of the import. It will state that 3 lines were imported, and 2 lines were rejected, Click OK
  8. Open the AC52-Entitlement-Import_output.csv file from C:\Temp in Notepad, change Msoft and Snagif to Microsoft Corporation and Snagit respectively and save the file. Rerun the import process, this time choosing the AC52-Entitlement-Import_output.csv file. Notice the originally successful rows are skipped, while the other 2 are imported
Review Entitlement
  1. Once the entitlements have been published, you will see them appear in the Entitlements library. The three circles above will show which software has an upcoming renewal in the next 90 days, the cost of software, and the cost of maintenance for the year
  2. Switch the Management Group to Central and note the numbers change to zero, since we haven't inputted any entitlements to that Management Group. The view will change based on the Management Group that is selected. Change the group back to Production Computers
  3. In the Renewal Date column, click on the filter and select Within next 180 days. The Upcoming Renewals value now shows 2 renewals, changed from the previous 0. That's because our expiration dates on 2 entitlements, Synthesizer Eloquence, are 5 months from now, so within the next 180 days both will be expired. Change the filter to next 365 days. There are now 3 Entitlements in scope, because Microsoft Visual Studio Premium expires 7 months from now
  4. The Hide expired / inactive entitlements filter on the top right will hide entitlements that either have a start date in the future or an end date that has already passed. We haven't imported any expired or inactive entitlements, so the view won't change. This is very useful, however, when there are a large number of entitlements in the library. You can uncheck this to show ALL entitlements as well.
  5. Remove the Renewal Date filter to see all the entitlements. Open individual Entitlements by double clicking on them, and reviewing all the fields we've inputted via the import file, or from the original Entitlement we inputted manually

Understanding Compliance

You have already seen the Compliance indicators in action in the previous exercises. For any given Product to be compliant, there must be enough Licenses assigned to meet the License Requirement within the selected Management Group. The License Requirement is based on the number of Installations which AppClarity is able to definitively identify within the selected Management Group. In this exercise, you will observe the relationship between Install Count, License Entitlements, License requirement and assigned Licenses to determine Compliance.

Simple Compliance

In this section, we'll review the compliance of Core Software. We imported entitlements for this product in the previous exercise, now we'll see how those entitlements affect compliance.

  1. In the AppClarity console, select the Products tab and select the Production Computers management group
  2. Select DisplayLink as the publisher, and right-click on the Core Software product, select License Managed and change to Yes
  3. Note that the product is not compliant, even though we imported 100 licenses in the previous exercise
  4. The entitlements we imported in the previous exercise were explicitly for the Lab Computers management group, so they are not applicable to any other machines.
  5. Change the management group to the Lab Computers. Note the product is compliant
  6. Select the Compliance tab at the bottom to see that the 100 entitlements we imported are reflected, and a number shown as remaining. That number is the difference between the entitlements imported and the number of installs in the management group

Using 'downgrade' licenses

In this section, we'll review how licenses are managed on a per version basis, and how licenses for a specific release cannot be used for higher versions, unless explicitly specified in the entitlement.

  1. In the AppClarity Console, open the Products page with the Production Computers Management Group filter applied and select the Microsoft Project Professional Product
  2. Note the License Entitlement column shows more licenses than we have installations, yet the product is not compliant (the compliance indicator is red).
  3. Click on the red X next to Microsoft Project Professional. Note that the compliance summary has changed, now stating that one or more releases has a license deficit
  4. Click on the Compliance tab. Review the Allocation Breakdown section below the Compliance Summary. This indicates that all Microsoft Project Professional 2013 installations are compliant (no license deficit) but there is a license deficit for Microsoft Project Professional 2016 as no licenses for this release have been applied
  5. Open the Entitlement page and ensure the Production Computers Management Group is selected
  6. Select the Microsoft Project Professional 2013 Product and double click on it to open the entitlements details. Note that the entitlement shows Versions≤ 2013. This is what we defined in the import file
  7. Click on the edit button to edit the entitlement
  8. In the Product pane in the middle, change the version to 2016
  9. In this scenario, you can also change the Valid for Versions condition to Greater than or Equal to, however it is very rare that a license is applicable to higher versions. You can also define the Entitlement as Valid for all versions, which would cause the entitlements to be applied to any release found. We defined Core Software with this rule in the import file.
  10. Save the entitlement to library
  11. Return to the Products page. Review the Microsoft Project Professional product, and notice it now shows compliant, as we have enough License Entitlements to cover the license requirement for all the installs
  12. Hover over the green Compliance indicator and in the 'pop-up' expand the Allocation Breakdown
  13. This is just a quick way to view the Compliance information without having to return to the Products page and view the Compliance tab.
  14. Note that the Microsoft Project Professional 2013 and 2016 Installations are allocated licenses from the Microsoft Project Professional 2016 'pool' as they are considered down-gradable (i.e. they can be applied to an Installation of an earlier Release)
  15. Review all the Entitlements imported in the previous exercise, and the impact they all have on Compliance

Management Groups without License Management

Earlier you created the Sales Management Group. When you created the group, you disabled the License Container option. In this task, you will observe the effect that disabling this option on a Management Group has.

  1. Open the Products page and select the Sales Management Group filter. Note that when the Sales Management Group is selected, the Compliance indicators disappear
  2. Locate the Microsoft Office 365 ProPlus Product. Note that there are Installations of this Product within the Sales Management Group, but they are not License Managed (the License Managed column has a red cross in it)
  3. Right-click the Office Professional Plus Product and note that the License Managed option is disabled – we cannot make this product License Managed, and therefore we will never be able to determine Compliance for any Installations that fall into this Management Group
  4. By disabling the License Container option when we created this Management Group, we have effectively prevented License Management of any Installations that are added to the group through Management Group Rules.
    The License Container option is enabled by default when new Management Groups are created. You should never create Management Groups with this option disabled, unless your intention is to exclude certain Installations from license management. In fact, if it is your intention to exclude certain installations from License Management, this should be done using the Exclusions tab in the License properties in the Entitlement page of the console.

Understanding Compliance Risk

A product is considered 'at compliance risk' if it either has licenses due to expire which would cause it to become non-compliant in the near future, or if the installation count for the product is approaching the total license count for the product. License managers can choose to be notified if a product is at compliance risk.

In this exercise you will observe a product that is at risk of becoming non-compliant soon and observe the associated notification to the nominated lincese manager.

Set up AppManager as a License Editor

Earlier you added AppManager as new AppClarity console user. In this task, you will configure this user as a License Editor.

  1. In the AppClarity Console, switch to the Configuration page and select the Email tab
  2. Note that by default, the options Send notifications when licenses are due to expire and Send notifications when a product is non-compliant or is at risk of non-compliance are both selected.
  3. Switch to the Users tab on the Configuration page and select AppManager
  4. The right-hand side of the console shows the properties of the AppManager user. Select the User will receive administrative alerts option

  1. Select the Roles tab and check the License Editor and Product Editor options for both the Lab Computers and Production Computers Management Groups as shown below and click Apply

Who receives license notification emails?
For a user to receive license notification emails:

  • The user must be enabled
  • The user must be configured to receive administrative alerts
  • The user's email address must have been configured
  • The user must be an AppClarity administrator, license editor or license viewer
  • Administrators will receive a notification of all licenses due to expire
  • License editors and license viewers will only receive notifications related to the licenses in the Management Groups they belong to

Modify licenses to make a product 'at compliance risk'

In this task, you will add licenses to a product with settings that make it immediately 'at compliance risk' so you can observe the behaviour.

  1. Log onto 1ETRNW71 as AppManager and launch the AppClarity Console
  2. Launch Windows Live Mail. Note an email has been sent from AppClarity stating rights have been given
  3. In the AppClarity console, switch to the Products page filtered on the Production Computers management group then select the Cisco Systems, Inc. Publisher
  4. Right-click the Network Recording Player Product and select License Managed> Yes to make it license managed
  5. Note that the Compliance indicator turns red because this product is now license managed but does not have any licenses defined.
  6. Make a note of the Install Count for the Network Recording Player product
  7. Switch to the Entitlements page with Production Computers selected as the management group and create a new Entitlement manually
  8. Set Entitlement Type to Subscription. Enter a Start Date that is any time in the past, set End Date to 7 days from today
  9. In the Product pane, select Cisco Systems, Inc, Network Recording Player and Less than or equal to the greatest version available in the dropdown for Vendor, Product and Version Name respectively
  10. In the Quantity and Metrics pane, enter 50, device and per Device for Quantity, Metric Type and Metric Name respectively
  11. Publish the Entitlement to library and notice that the Entitlements page now shows one upcoming renewal, and the circle is orange
  12. Return to the Products page, and review the Network Recording Player product
  13. Note that the compliance indicator is now yellow, indicating that this product is at compliance risk. The ledger also shows a warning icon also indicating the product is at compliance risk.
  14. Click the yellow compliance indicator to review the explanation of why the Product is at risk (in this case because the licenses are about to expire)
  15. Click on the Compliance tab to see the warning in the compliance summary
  16. AppClarity will send emails once every 24 hours. Each email will be an aggregated list of the notifications for the previous 24 hours that are relevant to the user the email is being sent to. So, it is unlikely you will see the license risk email for Network Recording Player, though it is possible.

Lab Summary

In this lab, you have learned two methods for adding Entitlement information to AppClarity. In the first instance, you added Entitlements manually for a specific Product. These Licenses were added to the selected Management Group and are not available for Installations in any other Management Group. 
You then learned how Licenses can be imported in bulk and how licenses may now be assigned directly to specific management groups during the bulk import.
You have seen how Rules can be created (and are sometimes suggested by AppClarity) to enable mapping of Publisher, Product and Release details in the license import file to known Product Releases in the Catalog.
Lastly, you have seen how AppClarity determines compliance, and how Unidentified Releases and Installations of more than one Product Release on any given device can result in discrepancies between the Installation Count and the License Requirement for the Management Group in question.

Next Lab

Ex 9 - AppClarity 5.2 - Software Reclaim