Web Service Connector set as identity Profile uid generation

Hello,

Currently we have an HR source that is set up with the Web Services Connector. I have been tasked with fixing an issue with SailPoint UID generation. We are currently using the SamAccountName as the UID for SailPoint. This issue I am addressing is that we have user ID conflicts due to our primary HR source (Workday) generates the UID to pass to IdN. I have addressed this so that it does not create a new ID if an ID is found in one of the connected systems. But when removing the connected systems from the transform I am now running into the issue where the same UID is being generated for like named accounts.

I am trying to come up with a way to create a UID that is only used 1 time and would iterate if a conflict is found for SecZetta. I have tried a couple of things and it failed. And returned a null value for UID. I have a felling that I am going to need a rule to calculate a UID for SecZetta or even a Workflow in SecZetta to accomplish this.

My end goal is to make the design of this a simple as possible to ensure subtilty while being easy to maintain or change if the need ever comes up. Any suggestion on how I can achieve this end goal?

Original Transform:

{
    "id": "REMOVED",
    "name": "Transform - FirstValid - getUID",
    "type": "firstValid",
    "attributes": {
        "values": [
            {
                "attributes": {
                    "attributeName": "user_name",
                    "sourceName": "ServiceNow"
                },
                "type": "accountAttribute"
            },
            {
                "attributes": {
                    "attributeName": "sAMAccountName",
                    "sourceName": "Active Directory"
                },
                "type": "accountAttribute"
            },
            {
                "attributes": {
                    "attributeName": "USERID",
                    "sourceName": "Workday"
                },
                "type": "accountAttribute"
            },
            {
                "attributes": {
                    "values": [
                        {
                            "attributes": {
                                "input": {
                                    "attributes": {
                                        "input": {
                                            "attributes": {
                                                "values": [
                                                    {
                                                        "attributes": {
                                                            "attributeName": "personal_first_name",
                                                            "sourceName": "SecZetta"
                                                        },
                                                        "type": "accountAttribute"
                                                    },
                                                    {
                                                        "attributes": {
                                                            "attributeName": "personal_first_name",
                                                            "sourceName": "SecZetta Collaborator"
                                                        },
                                                        "type": "accountAttribute"
                                                    }
                                                ]
                                            },
                                            "type": "firstValid"
                                        },
                                        "begin": -1,
                                        "end": 1
                                    },
                                    "type": "substring"
                                }
                            },
                            "type": "lower"
                        },
                        {
                            "attributes": {
                                "input": {
                                    "attributes": {
                                        "input": {
                                            "attributes": {
                                                "input": {
                                                    "attributes": {
                                                        "values": [
                                                            {
                                                                "attributes": {
                                                                    "attributeName": "personal_last_name",
                                                                    "sourceName": "SecZetta"
                                                                },
                                                                "type": "accountAttribute"
                                                            },
                                                            {
                                                                "attributes": {
                                                                    "attributeName": "personal_last_name",
                                                                    "sourceName": "SecZetta Collaborator"
                                                                },
                                                                "type": "accountAttribute"
                                                            }
                                                        ]
                                                    },
                                                    "type": "firstValid"
                                                },
                                                "padding": "|",
                                                "length": 5
                                            },
                                            "type": "rightPad"
                                        },
                                        "begin": -1,
                                        "end": {
                                            "attributes": {
                                                "index": {
                                                    "attributes": {
                                                        "input": {
                                                            "attributes": {
                                                                "input": {
                                                                    "attributes": {
                                                                        "values": [
                                                                            {
                                                                                "attributes": {
                                                                                    "attributeName": "personal_last_name",
                                                                                    "sourceName": "SecZetta"
                                                                                },
                                                                                "type": "accountAttribute"
                                                                            },
                                                                            {
                                                                                "attributes": {
                                                                                    "attributeName": "personal_last_name",
                                                                                    "sourceName": "SecZetta Collaborator"
                                                                                },
                                                                                "type": "accountAttribute"
                                                                            }
                                                                        ]
                                                                    },
                                                                    "type": "firstValid"
                                                                },
                                                                "padding": "|",
                                                                "length": 5
                                                            },
                                                            "type": "rightPad"
                                                        },
                                                        "substring": "|"
                                                    },
                                                    "type": "indexOf"
                                                },
                                                "value": "#if ($index == -1) 5 #else $index #end"
                                            },
                                            "type": "static"
                                        }
                                    },
                                    "type": "substring"
                                }
                            },
                            "type": "lower"
                        },
                        {
                            "attributes": {
                                "workday": {
                                    "attributes": {
                                        "values": [
                                            {
                                                "attributes": {
                                                    "attributeName": "USERID",
                                                    "sourceName": "Workday"
                                                },
                                                "type": "accountAttribute"
                                            },
                                            "NO_WORKDAY_ACCOUNT"
                                        ]
                                    },
                                    "type": "firstValid"
                                },
                                "value": "#if($workday == \"NO_WORKDAY_ACCOUNT\")91#{else}0#end"
                            },
                            "type": "static"
                        }
                    ]
                },
                "type": "concat"
            }
        ]
    },
    "internal": false
}

Updated Transform:

{
    "id": "REMOVED",
    "name": "ADWDSZ - FirstValid - getUID",
    "type": "firstValid",
    "attributes": {
        "values": [
            {
                "attributes": {
                    "attributeName": "USERID",
                    "sourceName": "Workday"
                },
                "type": "accountAttribute"
            },
            {
                "attributes": {
                    "attributeName": "USERID",
                    "sourceName": "Workday Test Data"
                },
                "type": "accountAttribute"
            },
            {
                "attributes": {
                    "values": [
                        {
                            "attributes": {
                                "input": {
                                    "attributes": {
                                        "input": {
                                            "attributes": {
                                                "values": [
                                                    {
                                                        "attributes": {
                                                            "attributeName": "personal_first_name",
                                                            "sourceName": "SecZetta"
                                                        },
                                                        "type": "accountAttribute"
                                                    },
                                                    {
                                                        "attributes": {
                                                            "attributeName": "personal_first_name",
                                                            "sourceName": "SecZetta Collaborator"
                                                        },
                                                        "type": "accountAttribute"
                                                    }
                                                ]
                                            },
                                            "type": "firstValid"
                                        },
                                        "begin": -1,
                                        "end": 1
                                    },
                                    "type": "substring"
                                }
                            },
                            "type": "lower"
                        },
                        {
                            "attributes": {
                                "input": {
                                    "attributes": {
                                        "input": {
                                            "attributes": {
                                                "input": {
                                                    "attributes": {
                                                        "values": [
                                                            {
                                                                "attributes": {
                                                                    "attributeName": "personal_last_name",
                                                                    "sourceName": "SecZetta"
                                                                },
                                                                "type": "accountAttribute"
                                                            },
                                                            {
                                                                "attributes": {
                                                                    "attributeName": "personal_last_name",
                                                                    "sourceName": "SecZetta Collaborator"
                                                                },
                                                                "type": "accountAttribute"
                                                            }
                                                        ]
                                                    },
                                                    "type": "firstValid"
                                                },
                                                "padding": "|",
                                                "length": 5
                                            },
                                            "type": "rightPad"
                                        },
                                        "begin": -1,
                                        "end": {
                                            "attributes": {
                                                "index": {
                                                    "attributes": {
                                                        "input": {
                                                            "attributes": {
                                                                "input": {
                                                                    "attributes": {
                                                                        "values": [
                                                                            {
                                                                                "attributes": {
                                                                                    "attributeName": "personal_last_name",
                                                                                    "sourceName": "SecZetta"
                                                                                },
                                                                                "type": "accountAttribute"
                                                                            },
                                                                            {
                                                                                "attributes": {
                                                                                    "attributeName": "personal_last_name",
                                                                                    "sourceName": "SecZetta Collaborator"
                                                                                },
                                                                                "type": "accountAttribute"
                                                                            }
                                                                        ]
                                                                    },
                                                                    "type": "firstValid"
                                                                },
                                                                "padding": "|",
                                                                "length": 5
                                                            },
                                                            "type": "rightPad"
                                                        },
                                                        "substring": "|"
                                                    },
                                                    "type": "indexOf"
                                                },
                                                "value": "#if ($index == -1) 5 #else $index #end"
                                            },
                                            "type": "static"
                                        }
                                    },
                                    "type": "substring"
                                }
                            },
                            "type": "lower"
                        },
                        {
                            "attributes": {
                                "workday": {
                                    "attributes": {
                                        "values": [
                                            {
                                                "attributes": {
                                                    "attributeName": "USERID",
                                                    "sourceName": "Workday"
                                                },
                                                "type": "accountAttribute"
                                            },
                                            "NO_WORKDAY_ACCOUNT"
                                        ]
                                    },
                                    "type": "firstValid"
                                },
                                "value": "#if($workday == \"NO_WORKDAY_ACCOUNT\")91#{else}0#end"
                            },
                            "type": "static"
                        }
                    ]
                },
                "type": "concat"
            }
        ]
    },
    "internal": false
}

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.