Hello, We are trying to manipulate attributes of an account that is to be created.
The Before Create Rule is running successfully and is calculating the values as they should be calculated and the env:request variable is manipulated properly. This can be clearly seen in the logs I am getting.
The issue is that the account is still created using the original values. Is it not possible to manipulate a Create Request via a Before Create Rule?
Above is the relevant code, but as I said, the logs show that the original request and the manipulated one have the same structure.
Eventhough the creation seems to use the old Request SailPoint is displaying this message. Eventhough the original Request and the manipulated XML have both all relevant values set properly
Hi @fayadm Why do you think that that error message is being caused by provisioning using the original request? Are you sure it is not because of another reason?
Is there any specific thing being done in Before Create Rule which is not achievable by Create Account Provisioning Policy or Before Provisioning Rule?
I can, not be 100% sure but the logs surely confirm that the original Request is sent. i could see that accounts created before I uploaded the rule are containing all attributes.
My biggest issue is that I am not able to replace the original request with the one I modified.
Yes, there are operations on different attributes that must be done, which is not possible to be done by Create Account Provisioning and we wanted to have the most possible control over the rule and be able to change it quickly, that is why we would rather choose it than a cloud before provisioning rule
Are you provisioning the “Domain Users” group during the creation process? We ran into something similar recently and that was the cause, once we removed that from the birthright role we stopped getting that error.
Hi @fayadm It looks like the `if` condition is not returning true. If this logic is inside the loop, it should update the record, but the error says to create an account, which means it is going to the else condition. You can print the logs in the script above and see where it went wrong.
if ($env:Request -match “name=`”$name`“”) {