When customers set the `max_parallel_session` parameter to 1, users often encounter "Access Denied" errors due to stale sessions not being promptly removed by the Automation Engine (AE).
Upon logging into the AWI, two connections are established:
1) User connection to the AWI
2) REST API connection, both visible under 'AWI -> User Management -> Connections.'
Scenario 1:
When a user manually ends a session by clicking "Logoff," they must wait for the REST API connection to be removed from 'AWI -> User Management -> Connections' before being able to log in again. This delay is controlled by the session timeout setting in the `ucsrv.ini` file (default of 120 seconds). If the user logs off immediately after logging in, they will not be able to re-login until the REST API connection is cleared, which takes approximately 120 seconds.
Scenario 2:
When a user closes the browser without logging off, the AE takes around 100 seconds to detect the disconnection and remove the session from AWI. During this time, users are unable to log in due to the `max_parallel_session` limit.
Release: v21.x v24.x
Component: AWI
REST API connections should not be counted towards the user's “Max parallel sessions” accumulator and hence this is identified as defect by Engineering
Scenario 1: To optimize performance, REST connections are maintained for a specified duration (configured in ucsrv.ini
under [REST] sessionTimeout=120
) to avoid multiple login processes and the associated overhead with each REST call. After the session Timeout period, any unused connection is terminated.
REST API connections should not count towards the user's 'Max parallel sessions' limit. Our development team has confirmed this as a bug, and a fix will be included in a future version.
Scenario 2: The behavior observed in "Scenario 2" is tied to the automatic AWI connection cleanup procedure introduced in version 21. The AWI automatically removes stale connections after a specific timeout/keep-alive period
When an AWI session ends abruptly without proper logoff (e.g., closing the browser), the system does not immediately detect the disconnection. The connection remains active until it is marked as stale and removed after the timeout period. During this time, if the user has reached the connection limit, further logins will fail. The user must wait until the automatic session cleanup process removes the stale connection.
This session cleanup behavior is currently under review, and changes may be implemented in the future.