The following diagram shows the basic entitlement process.
Figure 1-1 Overview of Entitlements
An entitlement agent grants an entitlement to a user. There are three ways that entitlements are granted to a user:
Role-Based Entitlements: The Entitlements Service driver grants the entitlement based on criteria that place the user in a particular role (or group). The criteria can be based on any event that occurs in the Identity Vault. For example, adding a new employee in an HR system causes a User object to be created in the Identity Vault. Creation of the new User object is the criterion that causes the Entitlements Service driver to grant the Active Directory User Account entitlement to the user.
User Application Roles Based Provisioning: The user receives a role assignment through the User Application. The User Application’s Role Service driver grants the user any entitlements associated with the new role. For example, a user is assigned an Accountant role that requires access to the Accounting group in Active Directory. The Role Service driver grants the Active Directory Group Membership entitlement to the user.
User Application Workflow-Based Provisioning: A provisioning workflow grants the entitlement to the user. For example, a new employee is added to the HR system, which causes a User object to be created in the Identity Vault. Creation of the new User object initiates a workflow that grants the Active Directory User Account entitlement to the user.
When an entitlement is added to or removed from a user’s DirXML-EntitlementRef attribute, any entitlement-enabled drivers begin to process the event. Only drivers that have the DirXML-EntitlementRef attribute added to their Subscriber channel filter can monitor users for entitlement changes.
The driver processes the entitlement event against the Subscriber channel policies. If the entitlement event is for an entitlement that applies to the driver, the policies are processed. Otherwise, no processing occurs. In the diagram above, the Grant User Account policy is processed because 1) the Active Directory User Account entitlement was added to the user’s DirXML-EntitlementRef attribute and 2) the User Account entitlement is defined on the Active Directory driver. If the Active Directory User Account entitlement is later removed from the user’s DirXML-EntitlementRef attribute, the Revoke User Account policy is processed.
The policies trigger the granting or revoking of access to the entitled resource. In the diagram above, the Grant User Account policy triggers the creation of a user account in Active Directory.