Managing Concurrent User Sessions for User
Describes how to configure or restrict the maximum number of concurrent web server sessions for a Data Fabric user.
Default Behavior
A Data Fabric web UI application, that is, the Data Fabric UI, the Object Store UI, or the Control System, does not impose any restriction on number of concurrent web server sessions for a Data Fabric user. A Data Fabric user can create as many concurrent web server sessions as they wish to, by logging in to a Data Fabric web UI application, using same user credentials, from multiple browsers and/or devices simultaneously, without logging out of any of the applications. There is no restriction on the number of sessions.
Restricting the Maximum Concurrent Web Server Sessions for User
For security purposes, you would want to restrict the maximum number of concurrent web server sessions for a user. For example, you might want to allow only a single web server session for a Data Fabric user at any given point in time.
To restrict the concurrent web server sessions for a Data Fabric user, you must set
the apiserver.max.concurrent.user.sessions configuration parameter
to a non-zero positive integer value. This is a global setting that applies to all
Data Fabric users.
- If you wish to restrict the maximum number of concurrent web server
sessions permissible for a Data Fabric user, DO NOT configure
spring security concurrency control in
session-management. For example, DO NOT use code similar to the following:<session-management> <concurrency-control max-sessions="2" /> </session-management> - If you change the value for the
apiserver.max.concurrent.user.sessionsfield when theapiserverservice is running on your cluster nodes, you must restart theapiserverservice on all relevant cluster nodes after changing the value for theapiserver.max.concurrent.user.sessionsfield.
Use the config save command to set the value of
apiserver.max.concurrent.user.sessions.
For example, to allow only one web server session at a time for a Data Fabric user,
set the value of apiserver.max.concurrent.user.sessions to 1.
maprcli config save -values '{"apiserver.max.concurrent.user.sessions":"1"}'
See config for details on
apiserver.max.concurrent.user.sessions.