06/07/2023 04:16 PM
Hello folks !
We are currently working on integrating ADSI to handle provisioning groups to users accross multiple domains.
During implementation, we have generated the below JSON for AddAccessJSON based on given documentation :
{
"objects":[
{
"objectClasses":[
"group"
],
"distinguishedName":"${account.customproperty1?.replace('\\', '\\\\')?.replace('/','\\/')}",
"addGroup":"${entitlementValue.entitlement_value?.replace('\\','\\\\')?.replace('/','\\/')}"
}
],
"requestConfiguration":{
"grpMemExistenceChk":{
"enable":true
}
}
}
Note : Our Account attribute mapping has account's customproperty1 mapped with distinguishedName
However, when launching WSRetryJob, we are getting the below error.
${account.customproperty1?.replace('\\', '\\\\')?.replace('/','\\/')} does not exist.
Note : I also tried accountID or customproperty1 alone and it did not helped.
Has anyone came accross this issue ? Anyone has a working JSON for this use case ?
Solved! Go to Solution.
06/07/2023 08:47 PM
Hello @adriencosson ,
Could you please try with the accountId, and share what are you seeing in the log snippet?
Sample Json,
{
"objects":[
{
"objectClasses":[
"group"
],
"distinguishedName":"${accountID?.replace('\\', '\\\\')?.replace('/','\\/')}",
"addGroup":"${entitlementValue.entitlement_value?.replace('\\','\\\\')?.replace('/','\\/')}"
}
],
"requestConfiguration":{
"grpMemExistenceChk":{
"enable":true
}
}
}
Thanks,
For Ref: https://docs.saviyntcloud.com/bundle/ADSI-v23x/page/Content/Configuring-the-Integration-for-Provisio...
06/07/2023 11:32 PM
Hello @sudeshjaiswal ,
Thanks for the sample JSON.
I did try the same and I am getting the below error :
{
"status":"Failure",
"failedObjects":[
{
"id":"${accountID?.replace('\\', '\\\\')?.replace('/','\\/')}",
"status":"Failure",
"message":"${accountID?.replace('\\', '\\\\')?.replace('/','\\/')} does not exist.",
"messageCodes":"OBJ_ERR_MSG_00002"
}
],
"connectionString":"LDAP://mydomain.acmecorp.local:636"
}
Looks like the connector retrieves the variable as plain text.
I have open an internal FD ticket as well to get as much help as I can.
Note : I am running 23.5 version.
06/08/2023 02:21 AM
Hello @adriencosson.,
Could you please try using it instead of "${entitlementValue.entitlement_value?.replace('\\','\\\\')?.replace('/','\\/')}".
entitlement_values
Please use the below sample and try it,
{ "objects": [ { "objectClasses": [ "user" ], "distinguishedName": "${accountID?.replace('\\', '\\\\')?.replace('/', '\\/')}", "addGroup": "${entitlement_values}" } ], "requestConfiguration": { "grpMemExistenceChk": { "enable": true } } }
Thanks,
06/08/2023 04:57 AM
Hello @sudeshjaiswal,
I did try with the suggested ${entitlement_values} and still I am getting the same error on the accountID :
{
"status":"Failure",
"failedObjects":[
{
"id":"${accountID?.replace('\\', '\\\\')?.replace('/','\\/')}",
"status":"Failure",
"message":"${accountID?.replace('\\', '\\\\')?.replace('/','\\/')} does not exist.",
"messageCodes":"OBJ_ERR_MSG_00002"
}
],
"connectionString":"LDAP://mydomain.acmecorp.local:636"
}
06/08/2023 06:31 AM
06/08/2023 01:39 PM
Hello @sudeshjaiswal , I provided you the logs in private message to prevent sensitive data.
Thanks for your help.
06/12/2023 08:06 AM
Hello,
After a few retries, it looks that the below JSON is working.
{
"objects":[
{
"objectClasses":[
"group"
],
"distinguishedName":"${accountID?.replace('\\', '\\\\')?.replace('/','\\/')}",
"addGroup":"${entitlement_values?.replace('\\','\\\\')?.replace('/','\\/')}"
}
],
"requestConfiguration":{
"grpMemExistenceChk":{
"enable":true
}
}
}
Thanks for the help !