We are delighted to share our new EIC Delivery Methodology for efficiently managing Saviynt Implementations and delivering quick time to value. CLICK HERE.

Exchange Connection giving null response while creating.

AshishDas
Regular Contributor II
Regular Contributor II

Hi,

We have installed IIS and deployed the Saviynt App as mentioned in Freshdesk. However, while we are trying to connect the same via REST Connector, we are getting a null response. Also, the error that we see in logs, states Source:Unknown.

We have tested the connectivity between SC2.0 client server to Exchange server as well and it is connecting. However the URL format as given by Saviynt in freshdesk, isn't working. Attaching my connection JSON. Please assist.

Application name : Saviynt Agent

 

{
"authentications": {
"acctAuth": {
"authType": "Basic",
"url": "http://xx.xxx.xxx.xxx/SaviyntAgent/PS/ExecutePSScript",
"httpMethod": "POST",
"httpParams": {},
"httpHeaders": {},
"httpContentType": "application/json",
"properties": {
"userName": "Domain/saviynt",
"password": "xxxxxxx"
},
"expiryError": "Couldn't authenticate you",
"authError": [
"Couldn't authenticate you"
],
"timeOutError": "Read timed out",
"errorPath": "error",
"maxRefreshTryCount": 5,
"tokenResponsePath": "access_token",
"tokenType": "Basic",
"accessToken": "Basic abcd",
"testConnectionParams": {
"http": {
"url": "http://xx.xxx.xxx.xxx/SaviyntAgent/PS/ExecutePSScript",
"httpHeaders": {
"Authorization": "${access_token}"
},
"httpContentType": "application/json",
"httpMethod": "GET"
},
"successReponse": [],
"successResponsePath": "",
"errors": [
"Couldn't authenticate you"
],
"errorPath": "error"
}
}
}
}

 

10 REPLIES 10

rushikeshvartak
All-Star
All-Star

Does DNS is resolving ?

try username as domain////saviynt


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

AshishDas
Regular Contributor II
Regular Contributor II

Hi Rushikesh,

We are trying to connect via IP hence not a DNS resolve issue.

Also, we tried with the said username format. It did not work

Error in webservica call.

Sivagami
Valued Contributor
Valued Contributor

Can you add below in your config json block of the exchange connector and send us the error?

{"showLogs": true}

AshishDas
Regular Contributor II
Regular Contributor II

Hi Sivagami,

Attaching logs after including showlogs as true:

{"log":"2022-11-22 13:10:25,305 [http-nio-8080-exec-112] DEBUG rest.RestUtilService - Got showLogs = true\n","stream":"stdout","time":"2022-11-22T13:10:25.306099289Z"}
2022-11-22, 06:40 pm
ecm
{"log":"2022-11-22 13:10:25,306 [http-nio-8080-exec-112] DEBUG rest.RestProvisioningService - Got Webservice API Response: [headers:[Cache-Control: private, Content-Type: text/html; charset=utf-8, Server: Null, X-AspNet-Version: Null, X-Powered-By: Null, X-ASPNETMVC-VERSION: Null, Date: Tue, 22 Nov 2022 13:10:14 GMT, Content-Length: 1928], responseText:\u003c!DOCTYPE html\u003e\r\n","stream":"stdout","time":"2022-11-22T13:10:25.306208459Z"}
2022-11-22, 06:40 pm
ecm
{"log":"\u003chtml\u003e\r\n","stream":"stdout","time":"2022-11-22T13:10:25.306221738Z"}
2022-11-22, 06:40 pm
ecm
{"log":" \u003chead\u003e\r\n","stream":"stdout","time":"2022-11-22T13:10:25.306224537Z"}
2022-11-22, 06:40 pm
ecm
{"log":" \u003ctitle\u003eThe resource cannot be found.\u003c/title\u003e\r\n","stream":"stdout","time":"2022-11-22T13:10:25.306226841Z"}

The resource cannot be found means that url is not found


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

AshishDas
Regular Contributor II
Regular Contributor II

Hi Rushikesh,

The url was formed as per the syntax format provided by Saviynt.

http://HostName/ApplicationName/PS/ExecutePSScript.

Also, we were able to telnet the hostname from SC2.0 client server to the server where IIS is installed and Saviynt App is deployed.

IIS and SaviyntApp have been installed and deployed as per the documentation.

The url (http://[hostname]/SaviyntAgent/PS/ExecutePSScript) throws 404 error when hit from the browser in client machine. However this part of the url(http://[hostname]/SaviyntAgent) we are able to hit in the browser and it returns the folders with the application name.

As per the recent communication from Saviynt support we have been communicated that while using the same url in WINConnector type, the url does not give an error but there is an issue with the password and throws the following error :

{"log":"2022-11-22 13:09:47,414 [http-nio-8080-exec-97] DEBUG println.PrintlnToLogger - Println :: \u001b[1;31m| Error \u001b[22;39mjavax.crypto.IllegalBlockSizeException: Input length must be multiple of 16 when decrypting with padded cipher\u001b[m\n","stream":"stdout","time":"2022-11-22T13:09:47.414708706Z"}

The Rest Connector however displays that the url is not found.

Any of the connector if it works, it will solve our issue.

AshishDas
Regular Contributor II
Regular Contributor II

[Removed IP Address]

Hi,

Could someone help?

We are now getting an error as , "Access token is null"

Attached below is the connection JSON:

{
"authentications": {
"acctAuth": {
"authType": "Basic",
"url": "http://xx.xxx.xxx.xxx/SaviyntAgent/PS/ExecutePSScript",
"httpMethod": "POST",
"httpParams": {},
"httpHeaders": {},
"httpContentType": "application/json",
"properties": {
"userName": "<username>",
"password": "<password>"
},
"expiryError": "Couldn't authenticate you",
"authError": [
"Couldn't authenticate you"
],
"timeOutError": "Read timed out",
"errorPath": "error",
"maxRefreshTryCount": 5,
"tokenResponsePath": "access_token",
"tokenType": "Basic",
"accessToken": "Basic abcd",
"testConnectionParams": {
"http": {
"url": "http://xx.xxx.xxx.xxx/SaviyntAgent/PS/ExecutePSScript",
"httpHeaders": {
"Authorization": "${access_token}"
},
"httpContentType": "application/json",
"httpMethod": "GET"
},
"successReponse": [],
"successResponsePath": "responseText",
"errors": [
"Couldn't authenticate you"
],
"errorPath": "error"
}
}
}
}

AshishDas
Regular Contributor II
Regular Contributor II

so, attaching my create account JSON.

{
"accountIdPath": "accountName",
"responseColsToPropsMap": {},
"call": [{
"name": "call1",
"connection": "userAuth",
"showResponse": true,
"url": "http://<hostname>/SaviyntAgent/PS/ExecutePSScript",
"httpMethod": "POST",
"httpParams": "{\"Script\":\"Powershell.exe -File c:\/MASScripts\/Exchange_Mailbox.ps1 \\\"${user.customproperty3}\\\" \\\"${user.customproperty17}\\\"\"}",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"httpContentType": "application/json",
"successResponses":[
{
"message": "ProfileID Created Successfully"
},
{
"message": "ProfileID Updated Successfully"
}
],
"unsuccessResponses": {
"response[6].Objectreturned": ["Failure"]
}
}]
}

Error:

{"log":"2022-11-28 09:53:36,886 [quartzScheduler_Worker-8] DEBUG rest.RestProvisioningService - Total Call: 1\n","stream":"stdout","time":"2022-11-28T09:53:36.886147802Z"}
2022-11-28, 03:23 pm
ecm-worker
{"log":"2022-11-28 09:53:36,922 [quartzScheduler_Worker-8] DEBUG rest.RestProvisioningService - connection: userAuth\n","stream":"stdout","time":"2022-11-28T09:53:36.922439197Z"}
2022-11-28, 03:23 pm
ecm-worker
{"log":"2022-11-28 09:53:36,928 [quartzScheduler_Worker-8] ERROR rest.RestProvisioningService - Access Token is null..\n","stream":"stdout","time":"2022-11-28T09:53:36.928595257Z"}
2022-11-28, 03:23 pm
ecm-worker
{"log":"2022-11-28 09:53:36,928 [quartzScheduler_Worker-8] DEBUG rest.RestProvisioningService - response: [:]\n","stream":"stdout","time":"2022-11-28T09:53:36.928609848Z"}
2022-11-28, 03:23 pm
ecm-worker
{"log":"2022-11-28 09:53:36,928 [quartzScheduler_Worker-8] DEBUG rest.RestProvisioningService - Response size: 0\n","stream":"stdout","time":"2022-11-28T09:53:36.928612882Z"}
2022-11-28, 03:23 pm
ecm-worker
{"log":"2022-11-28 09:53:36,928 [quartzScheduler_Worker-8] DEBUG rest.RestProvisioningService - Task Response: null\n","stream":"stdout","time":"2022-11-28T09:53:36.928618785Z"}
2022-11-28, 03:23 pm
ecm-worker
{"log":"2022-11-28 09:53:36,928 [quartzScheduler_Worker-8] DEBUG rest.RestProvisioningService - accountId: null\n","stream":"stdout","time":"2022-11-28T09:53:36.928621618Z"}
2022-11-28, 03:23 pm
ecm-worker
{"log":"2022-11-28 09:53:36,928 [quartzScheduler_Worker-8] DEBUG rest.RestProvisioningService - Task Response: null\n","stream":"stdout","time":"2022-11-28T09:53:36.928624038Z"}
2022-11-28, 03:23 pm
ecm-worker
{"log":"2022-11-28 09:53:36,928 [quartzScheduler_Worker-8] DEBUG rest.RestProvisioningService - accountResponseMap: null\n","stream":"stdout","time":"2022-11-28T09:53:36.928664312Z"}

Does connection name is userAuth ?

Does hardcoding token works ?


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

AshishDas
Regular Contributor II
Regular Contributor II

Hi,

This issue has now been resolved.

GET call isn't required and hence we directly tried for create account and it worked.

Even in Postman we were able to POST (200k) and not GET (404k Not Found).

We removed the test parameters in REST connection JSON, which actually validates the url as REST connection in itself cannot validate the url. 

However, to show the connection as successful we removed the test parameters and tried create account which worked.