Best Practices: IdentityNow License Administration for Legacy Customers
Important: This document provides guidance on IdentityNow licensing for legacy customers who do not own the Provisioning module. For all other IdentityNow and Identity Security Cloud customers, configuration of Identity State determines licensing.
Overview
IdentityNow is a subscription-based software-as-a-service (SaaS) solution for Identity Governance and Administration (IGA). As you would expect, its subscription licenses are typically based on the identities in the system. SailPoint’s Identity Security products are singularly licensed by Identity according to the identity profiles in the SailPoint Customer Agreements Definitions and Additional Terms.
Here are some examples:
- An identity that is considered active would be considered licensed
- An identity that is considered inactive (short- or long-term) would be considered unlicensed
- An identity that is considered active, but whose access within the governed environment is limited, may be considered lite
Your subscription terms and language may vary, so check your SailPoint Subscription Terms for how this might apply to your tenant(s) or circumstances. SailPoint requires that each IdentityNow tenant be configured to reflect license status, so that a routine audit can confirm the license subscription status.
Configuration of Licensing
On the identity model there is a default identity attribute called "License Status" (licenseStatus). This attribute is a system attribute which annotates license status, and is configurable by IdentityNow administrators, implementers, or consultants. By default, it is not configured. To satisfy the auditing requirements, this attribute should be configured to contain one of the following values:
- licensed - This is used for identities which are applicable to licensing, usually because they are using or being governed by IdentityNow.
- unlicensed - This is used for inactive identities which are not applicable to licensing.
- lite - If applicable (as per your subscription terms), this is used for licensed identities that have a limited number of sources governed
It is the customer's responsibility to determine how their identities and their data might be best mapped to these values in accordance with the SailPoint Customer Agreements Definitions and Additional Terms and their data, features implemented, and service subscription agreement.
Example Licensing Transform
In order to codify business logic that dynamically determines the value of the "License Status" (licenseStatus) identity attribute (as described above), a Transform may be used, like the example below:
{
"name": "License_Status",
"type": "conditional",
"attributes": {
"expression": "$lifecycleState eq inactive",
"positiveCondition": "unlicensed",
"negativeCondition": "$licenseStatus",
"lifecycleState": {
"attributes": {
"name": "cloudLifecycleState"
},
"type": "identityAttribute"
},
"licenseStatus": {
"type": "static",
"attributes": {
"value": "#if($identity.getLinks().size()<=6)lite#{else}licensed#end"
}
}
},
"internal": false
}
Important: The above is meant solely as an example and may not be applicable in your environment, so be sure to modify it as needed.
Note: The number of links (a.k.a. accounts) is used as a proxy for sources in the determination of lite licensing in the above example, and the comparison accounts for the internal IdentityNow account that every identity has, but which should not be considered as a governed source.
The example Transform above is leveraging values in the "Lifecycle State" (cloudLifecycleState) identity attribute, whose values are presumably set via another Transform that codifies the business logic to determine if an identity is considered inactive. Legacy IdentityNow customers without the Provisioning module may still configure values for the "Lifecycle State" (cloudLifecycleState), even though those values are not then associated with provisioning logic. In fact, it is considered a best practice to do so, as it facilitates future upgrades that include the Provisioning module and it is still a useful attribute to denote the lifecycle state of an identity (which may be referenced in other parts of the implementation, such as for reporting or in other business logic, as in the case of its inclusion in the above example Transform).
Reporting on Licensing
IdentityNow search offers a convenient way to report on license statuses:
- Licensed Identities:
attributes.licenseStatus:"licensed"
- Unlicensed Identities:
attributes.licenseStatus:"unlicensed"
- Lite Identities:
attributes.licenseStatus:"lite"
-
Identities without License Status:
(((NOT attributes.licenseStatus:"licensed") AND (NOT attributes.licenseStatus:"unlicensed")) AND (NOT attributes.licenseStatus:"lite")) OR NOT _exists_:attributes.licenseStatus
License Status Audits
SailPoint Customer Success Managers (CSMs) may conduct periodic audits to ensure the number of licensed, unlicensed, and unconfigured identities align with your subscription agreement terms.
Questions?
For any questions regarding licensing, please contact your SailPoint Customer Success Manager (CSM).
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Content to Moderator
Thanks.
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Content to Moderator
Hello,
We are trying to create a transform that's specific to our organization but are not sure where do we find 'SailPoint Subscription Terms', please advise.
Thanks
Gopi Gummadi
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Content to Moderator
Hi,
we have managed to create the transform as per your example above but not sure how to setup the correct identities profiles mapping - please advise. License Status attributes remains "Blank" whatever we try.
Thanks,
Miguel.
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Content to Moderator
was there an answer to this. I am having the same issue where License Status attributes remains "Blank"
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Content to Moderator
In the transform example, you use the identityAttribute cloudLifecycleState, but how can we ensure that that is calculated before the licenseStatus is calculated?
Could this be the cause of the field being Blank?
Does this have to be in separate Identity Profiles, and have the Identity Profile sequences so that the one that calculates the cloudLifecycleStatus happens first?
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Content to Moderator
Does this information apply to IdentityIQ too? Else can you point to a similar article for IdentityIQ. We want to identify exactly which types of users are licenseable and which type are not.
Many organizations have consultants who do not come from authoritative application source, so they are not counted in the About page info.
SERI Example (About page)
Licensed Identities (Active + Correlated) 234
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Content to Moderator
Thanks
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Content to Moderator
Dear Supporters,
We would like to know when our sailpoint licenses expire. Could you please direct us to the option to view the expiration date?
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Content to Moderator
Inactive is defined on [SailPoint Customer Agreements Definitions - SailPoint Product Documentation] as of [Last Updated: September 26, 2024].
Inactive - An Identity or Lite Identity for which, as applicable: (a) the Identity State is set to “inactive” in Identity Security Cloud or, (b) the profile is set to “archived” in Non-Employee Risk Management.
In addition to the Active Identities, Customers are entitled to store a limited number of Inactive Identities, in an amount not to exceed thirty percent (30%) of the combined total licensed Identities and Lite Identities. Inactive Identities are only applicable in the services set forth above.