I have an identity attribute rule that manipulates an identity attribute after checking for the accounts correlated to the identity.
The pseudocode logic for my rule is as follows:
*attribute = source 1, source 2, source 3*
attributeList = attribute.split();
for (attribute : attributeList) {
if (idn.getFirstAccount() for source 1) => remove 'source 1' from attribute list
if (idn.getFirstAccount() for source 2) => remove 'source 2' from attribute list
if (idn.getFirstAccount() for source 3) => remove 'source 3' from attribute list
return attributeList .join()
So an e.g. would be: initial attribute value = source 1, source 2, source 3 accounts correlated to identity: source 1 source 2
for the above case, rule will return attribute value = source 1, source 2
This rule works fine for most of my connector types. However there are 2 source types that do not work:
JDBC Connector Type
SQL Loader Connector Type
Not sure if ‘getFirstAccount()’ is the wrong way to check if these accounts are really correlated to the identity in this case… Pretty new to identity attribute rule, any help would be much appreciated!!
Of course getFirstAccount method works for all the connector sources. Check if some issue is there with the identity you are testing, maybe it is a data issue.
There is lack of clarity in using sourceName in getting account whether to use [source] appended, for example if your source name is HR then in
Last thing I would like to inform you is, you don’t need to depend on Rule for this requirement. I know Rule is more flexible in writing complex logics compared to Transform, but you need to depend on SailPoint Expert Services for any change or if you would like to know what is happening.