Click HERE to see how Saviynt Intelligence is transforming the industry. |
10/21/2022 01:23 PM
I am trying to explore the options to execute a custom JAR that will formulate the network ID when a new user record is created in Saviynt.
There is no documentation on what the custom action in User Update rule does except for one discussion where it is mentioned that the user attributes are available as a JSON to the external JAR.
Is there a signature for the method to intercept the user object? The documentation on creating user update rules does not have details on how this configuration works.
10/21/2022 02:00 PM - edited 10/21/2022 02:00 PM
Hi @krecpond,
When a new user record is created, you can utilize the OOB username or systemUserName generation rule. Any specific reason why custom action is being considered ?
10/21/2022 02:35 PM
Because of the logic that needs to be used for Active Directory ID generation, it will not be possible to do it in the product. There is a need to use the first chars of FN, MI and LN and if this matches a prohibited series then MI must be dropped and replaced with "x". For all other users who dont have MI, "x" will be used to concatenate first char of FN and LN.
Then this 3 char comination has to be checked against the existing list of IDs to see the last generated numeric value and increment that value by 1 and append to this new char to create the ID.
Can all this be done within the product?
10/24/2022 07:03 AM
I do not have a sample code to help you with but using the method signature as shown below should be able to get you the User JSON from the customAction.
public void customMethod(String userJson)
I had recently posted on customAction, I know your requirement is something different but check if this helps.
10/25/2022 09:39 AM
I created a user via a user import from csv through the UI. The user record got inserted successfully and the update rule got triggered. We have included a log.debug and a system.out.println to print the string userJson.
public void customMethod(String userJson)
However, the logs don't show any messages printed.
public void customMethod(String userJson)
I see only the below messages in the logs:
Which microservice would contain the display statements from the custom JAR? I searched for the method name across all the services but still nothing is displayed in the logs from the customMethod. Does this functionality even work given that it is a new feature introduced from v2021 onwards?
10/25/2022 02:25 PM
Based on the logs, it does seem to me that your customAction with the method greetings is being invoked. As far as I know, using the standard system.out (System.out.println() ) should work and should populate it under the ecm-worker service logs.
customAction functionality was introduced in v5.5SP3.8 and it does work.