The following diagram shows the basic process flow for
session management in an environment where WebSEAL is configured to use the distributed session cache. The example contains the following conditions:
WebSEAL 1 and WebSEAL 2 are configured with replica virtual hosts
(vhostA).
A user makes a request for a protected object located in the Web space of vhostA. WebSEAL A intercepts the request
and creates a local cache entry for the user. WebSEAL A prompts the user to log in.
The user provides authentication data to WebSEAL. WebSEAL updates
the local session cache entry with the client's credential.
Maintaining
a local session cache improves the performance of that specific WebSEAL
server during future requests for resources.
WebSEAL A notifies the distributed session cache of the new session
and the associated credential information. The distributed session
cache maintains this information in its own database.
WebSEAL A sends a session cookie to the user's browser.
An additional request for a resource on vhostA by
the same user, using the same session cookie, fails over to another
server in the replica set (WebSEAL B).
Use the session cookie, WebSEAL B consults the distributed session
cache to determine whether the user has already authenticated. The
distributed session cache replies with the user's cached credential.
WebSEAL B uses the credential to trust the user and allows the request for the resource to proceed. The user is not prompted to login
again.