Joiner Mover and Leaver Processes
EmpowerID automates the lifecycle of identities through the Joiner, Mover, and Leaver phases. These events are typically detected and triggered based on changes occurring to the employee record in an HR or other authoritative system through an inventory connector. HR account records are initially inventoried into the system as orphan accounts lacking a related Person object.The EmpowerID Account Inbox permanent workflow and queue processes these orphan accounts to determine if they can be joined to an existing Person object or if a new Person object should be created. Changes in the authoritative system for job title, job role, and/or location code, country, department or other fields may trigger a Mover event based on logic configured in location mappings. EmpowerID handles Mover events such as these through the Business Role and Location Recompiler Job. Unplanned Leaver events can be initiated manually via an EmpowerID workflow, while planned Leaver events are most often triggered by the VaildUntil date set on Person objects by HR and processed by logic in a permanent workflow.
Joiner Process
Because of the key role of Person objects in EmpowerID, the process by which EmpowerID joins inventoried accounts to these objects is foundational to how EmpowerID manages your user identities. As mentioned in the Inventory topic, when EmpowerID inventories a resource system with user accounts, it does more than just write a copy of those user accounts to a table in the EmpowerID Identity Warehouse. It evaluates those accounts to determine whether or not they are owned by users, and based on that evaluation it does one of the following three things:
It ignores them;
It joins them to existing EmpowerID Persons;
It provisions new EmpowerID Persons, joining those new Persons to the accounts
Mover Process
The Mover process occurs when a person in an organization changes his or her job function and or the organizational location in which they work. The Mover event is important, as access should be reevaluated to ensure that any missing access required for the new role is provisioned and that access no longer needed is removed. A Mover event can be initiated manually using one of a variety of workflows to change a person’s primary Business Role and Location in EmpowerID. These workflows constitute a move and will trigger the reevaluation of RETs and other types of access policies. More commonly, Mover events are triggered based on changes to a person’s job title/code or department ID assignment in the HR system. Typically, these changes flow into EmpowerID via the connector as changes to the External OrgRole (Business Role) and External OrgZone ( Location) assignments for the person's user account. When these change, the EmpowerID Business Role and Location Compiler Job leverages the mappings of these external roles and locations to determine which changes should occur to the person’s internal EmpowerID Business Roles and Locations. If changes need to occur, the job adds the changes to a queue to be processed by the Business Role and Location Processor job.
In some cases, this default mechanism is not adequate to handle the logic for determining a Mover event. As an example, in some organizations an external location change within a business unit does not constitute a Mover event.
Leaver Process
The Leaver process occurs when a person’s relationship with an organization comes to an end. The Leaver process is the most security sensitive event as the IAM system must ensure that all access is removed in a timely manner. An unplanned Leaver event can be initiated manually using one of the Terminate Person workflows. These workflows mark the Person object as deleted and trigger a reevaluation of the RET policies associated with that Person object, leading to account deletions or disables.
More commonly, Leaver events are triggered by changes to the ValidUntil field on an EmpowerID Person flowing from changes occurring in an authoritative HR system. EmpowerID provides a configurable “Advanced Leaver” process that relies on a permanent workflow named “SubmitPersonTerminations,” which then calls a child flow chart workflow named “TerminatePersonAdvanced”. The logic for the default process is as follows:
The SubmitPersonTerminations permanent workflow runs continuously, calling the Person.GetPendingTerminationNotProcessed stored procedure to collect all EmpowerID Person objects meeting the below criteria:
ValidUntil IS NOT NULL
AND ValidUntil < GETUTCDATE()
AND TerminationBusinessProcessTaskID IS NULL
AND Deleted = 0
AND IsNUll(PersonOrganizationStatusID, -1) <> 8
Any Person objects meeting the above criteria The EmpowerID Persons—and all user accounts linked to those EmpowerID Persons—are disabled and the PersonOrganizationStatusID field for each qualifying Person is updated to 8, meaning Termination Pending.
Next, any Person object with an ValidUntil date greater than the number of days configured for the PersonTerminationGracePeriod EmpowerID System setting is submitted to the “TerminatePersonAdvanced” workflow using the identity set for the TerminsatePersonAdvancedInitiator EmpowerID System setting.
As a last step in the permanent workflow logic, the workflow calls the Custom_Person_GetPendingTerminationNotProcessedPendingTermination stored procedure to collect any Person objects matching reactivation criteria. These criteria are as follows:
ValidUntil IS NOT NULL AND ValidUntil > GETUTCdate()
AND TerminationBusinessProcessTaskID IS NULL AND Deleted = 0
AND IsNUll(PersonOrganizationStatusID, -1) = 8
AND TerminationDate IS NULL