Hi Experts, I would like to get your thoughts and ideas on a best possible solution(s) for below use case
Use-Case: When a new worker is detected from HR source, a new Identity should be created in ISC using a UniqueID that is issued by An external SQL Database Table
Important Note:
a. Our HR source data doesn’t have the uniqueID that we would like to use as SailPoint Username (uid) for a new Identity in ISC
b. An external SQL Database Table generates the UniqueID that needs to be set as SailPoint Username (uid)
Looking for ideas on how to design the solution for Step 2 & 3
Is there a particular reason for relying on an external database for UID generation? Since ISC can create unique usernames—and, if the external database only stores historical User IDs, ISC can easily check for uniqueness against that database and generate new IDs. Unless there’s some logic that can’t be replicated in ISC or relevant data is inaccessible in ISC, I would recommend handling the username logic directly in ISC.
For legacy reasons and other dependencies , logic of uniqueID generation needs to stay in SQL database. So we don’t much of a choice to move that logic to ISC.
An identity created initially without UID will show exception, and I don’t think such identities are processed (added to DB via provisioning from ISC). Can you combine multiple fields from your HR source to create a unique string for the UID?
Also note that if you try to update the UID of an identity it will result in creating a new identity which can result into major issues with how ISC will handle the identities. (May be try to create duplicate accounts in DB)