and more in a single search tool across platforms. Read the announcement here. |
04/17/2023 12:36 PM
Hi,
I created a rest based security system which associated with 2 endpoints. when I ran the application data import job. the accounts are only imported for one of the endpoints. below is the connectionjson and ImportAccountEntJson:
{
"authentications": {
"acctAuth": {
"authType": "oauth2",
"httpHeaders": {
"Accept": "application/json"
},
"authError": [
"InvalidAuthenticationToken"
],
"url": "https://******/oauth/token",
"httpMethod": "POST",
"httpContentType": "application/json",
"httpParams": "{\"client_id\":\"******\",\"client_secret\":\"*****\",\"audience\":\"https://*****/api/v2/\",\"grant_type\":\"client_credentials\"}",
"errorPath": "error.code",
"maxRefreshTryCount": 2,
"tokenResponsePath": "access_token",
"tokenType": "Bearer",
"authHeaderName": "Authorization",
"accessToken": "Bearer ABCD",
"retryFailureStatusCode": [401,403,500]
}
}
}
{
"accountParams": {
"processingType":"SequentialAndIterative",
"connection": "acctAuth",
"createUsers": false,
"call": {
"call1": {
"http": {
"url": "http://******/api/users",
"basicUrl": "<domain name>",
"hostUrl": "/api/users",
"httpContentType": "application/json",
"httpMethod": "GET",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
}
},
"listField": "users",
"keyField": "name",
"colsToPropsMap": {
"accountID": "id~#~char",
"name": "userName~#~char",
"displayName": "displayName~#~char",
"customproperty1": "id~#~char",
"customproperty2": "department~#~char"
}}}
},
"acctEntParams": {
"processingType": "entToAcctMapping"
}
}
Is this the expected behaviour?
Many thanks,
Lynn
Solved! Go to Solution.
04/18/2023 08:01 AM
You will need to use ENDPOINTS_FILTER in order to define the Entitlement type to be imported for each endpoint. You can refer to the below REST connector guide for the example (under Filtering Endpoints)
04/18/2023 09:24 AM
Hi Sahil,
I have issue with the accounts now, not the entitlements.
for Rest Endpoint1, I can find the accounts.
but for Rest endpoint2, I could not find any account.
Rest Endpoint1 and Rest Endpoint2 both are linked to Rest System1.
Regards,
Lynn
04/18/2023 10:01 AM
when you run the job, do you see data in logs for the 2nd call? You may want to Update ConfigJSON param in the REST connection with value {"showLogs":true} before running the job.
04/18/2023 10:13 AM
Hi Sahil,
I can see the logs for rest endpoint1, but nothing for rest endpoint2.
Regards,
Lynn
04/18/2023 08:45 PM
You can't use same connection for 2 different application, Only Endpoints_filter can use same connection.
even if you use same connector in connection we never specify endpoint name hence it won't work. you need to create 1:1:1 pattern application 1 connection --> Security System --> Endpoint
04/19/2023 08:17 AM
Hi Rushikesh,
Thank you so much for the information. I have another question, when we run the Application data import job. the security system already contains the connection information. Is there any reason we still need to specify the external connection?
Regards,
Lynn
04/24/2023 02:09 PM
This provides flexibility to define another Connection in certain use cases where you want to update any Account/Entitlement attribute value from a different connection but for the same security system. Ideally External Connection value is auto populated when you select system in the job.