Problem Description:
On Infoworks if the authentication is configured to use LDAP, sometimes the user may see an authentication failure when logging through the UI even if the user is submitting a correct password.
If we look at the apricot.log at $IW_HOME/logs/apricot/apricot.log (latest file) we can see a stack trace as below
'0': 'authenticateUser',\n '1': \n { url: 'http://hostname:80/api/v1/security/authenticate/user?get_data=true&service_id=1' } }","timestamp":"2021-02-03T21:11:48.543Z"}
{"level":"debug","message":"[SERVER] { '0': 'authenticateUser catch',\n '1': '{\"response\":{\"statusCode\":504,\"content\":\"<html>\\\\r\\\\n<head><title>504 Gateway Time-out</title></head>\\\\r\\\\n<body>\\\\r\\\\n<center><h1>504 Gateway Time-out</h1></center>\\\\r\\\\n<hr><center>nginx/1.16.1</center>\\\\r\\\\n</body>\\\\r\\\\n
Root cause: This issue happens if the user authentication to LDAP server is taking more than expected time which causes a backend gateway timeout to Infoworks authentication API’s.
Solution:
Navigate to Nginx configuration directory using the following command: cd ${IW_HOME}/resources/nginx-portable/conf/infoworks
Run the following command to open platform.conf.template file for editing: vi platform.conf.template
Add the following below listen ${PROXY_SERVER_PORT};
proxy_read_timeout 300;
Restart Nginx service using the following commands:
cd ${IW_HOME}/bin
./stop.sh nginx && ./stop.sh UI
./start.sh nginx && ./start.sh UI
Applicable Infoworks Versions
v3.x, 4.x