Hi all,
I've read - and tried to understand - the multiple threads on idle session timeouts in NAV2016, but I haven't found a clear explanation on if and how the following scenario can be configured - both pre-CU8 and post-CU8 where the configuration setup has changed.
Here's my scenario:
I want to set a standard session timeout, so that users who are idle in NAV for a specified period (e.g. 15 minutes) get their NAV session closed.
However, for a few workstations, I want the timeout to be longer. In our example, we want our warehouse computers to stay active all day.
SO, for both pre-CU8 and post-CU8:
1. Can I have a different timeout for a few computers?
2. Particularly for post-CU8, how do I do this? Can I change a value in ClientSettings.Config on the workstation to override the server-side setting?
3. In NAV2009, we built our own session monitor. There is a field in the Session table called "Idle Time" that we can look at for any session and determine if it is "eligible" to be killed. Is there a table/field in 2016 where we can look at sessions to determine how long a session has been IDLE?
We are getting ready to go live on a pre-CU8 codebase but are planning on applying all CU's in the very near future.
Thanks in advance,
Ron
Ron
0
Answers
In NAV 2016 there is an Active Session table where you can see who and when has logged in, but not the idle time. Even if you decided somehow which session to kill the Active Session unfortunately no longer works like the old Session table in Classic client, deleting from it does not kill user session. Killing a session directly on the SQL Server is not an option either as the NST uses connection pooling, all connections are made under the NST service account, and there is no 1 to 1 connection mapping.
The one possible workaround I can think of could be to mimic the classic NAV infrastructure - create one NST for each user, run each NST under separate AD Account. You would be able then to see on the SQL Server each individual session. you could work out who is connected and you could use SQL queries to determine the idle time and kill sessions.
Configuring and maintaining that manually would be a huge pain in the bottom, but I guess you could build some PS scripts to automate the setup for a new user. I am not sure however how many NSTs you can run on a single box, and if having a lot of NSTs serving the same database wouldn't create problems with NST's internal cache synchronization between all of them
Slawek
Dynamics NAV, MS SQL Server, Wherescape RED;
PRINCE2 Practitioner - License GR657010572SG
GDPR Certified Data Protection Officer - PECB License DPCDPO1025070-2018-03