Extraction of data from a failover cookie
When a failover authentication event occurs, a replica WebSEAL server receives a failover authentication cookie and by default extracts the following data from each cookie:
- User name
- Authentication method
- Cookie creation time
WebSEAL first determines if the cookie is valid by subtracting the cookie creation time from the system time, and comparing this value against the WebSEAL configuration file entry for failover cookie lifetime.
If the cookie lifetime has been exceeded, the cookie is not valid, and failover authentication is not attempted. If the cookie lifetime has not been exceeded, WebSEAL uses the user name and authentication method to authenticate the user and build a user credential.
WebSEAL next checks configuration settings to determine if additional cookie data should be extracted and evaluated. Note the WebSEAL server does not by default extract any other attributes from the failover authentication cookie. Each additional attribute to be extracted must be specified in the WebSEAL configuration file. Wildcard pattern matching can be used to obtain groups of attributes.
WebSEAL can be configured to extract the following defined attributes:
- Authentication strength level
When this value is extracted, WebSEAL uses it to ensure the user is authenticated with the authentication method necessary to maintain the specified authentication level.
Note that WebSEAL can obtain authentication strength levels from several different places:
- Failover cookie
- Failover authentication library
- Cross-domain authentication service
- Entitlements service
The authentication strength level extracted from the failover cookie takes precedence over levels obtained from the other places.
- Session lifetime timestamp
WebSEAL can use this timestamp to determine if the user's entry in the original server's session cache would have expired. If it would have, WebSEAL discards the cookie and all its potential credential attributes. The session lifetime is not preserved, and the user is prompted to log in.
- Session inactivity timestamp
WebSEAL can use this timestamp to determine if the user's entry in the original server's session cache would have been inactive for too long. If it would have, WebSEAL discards the cookie and all its potential credential attributes. The session lifetime is not preserved, and the user is prompted to log in. Successful use of these timestamps requires synchronization of clocks between replicated WebSEAL servers. If clock skew becomes great, sessions will expire or become inactive at unintended times.
- Additional extended attributes
These include user-defined customized attributes, such as those generated by cross-domain authentication services. WebSEAL adds the attributes to the user credential.
Attributes that are not specified in the WebSEAL configuration file will be ignored and not extracted. In addition, administrators can specify that certain attributes must be ignored during failover cookie extraction. Although ignore is the default behavior, this specification can be useful, for example, to ensure that user attributes are obtained from the user registry instead of from the failover cookie.
Parent topic: Failover authentication concepts