Skip to main content
Version: 3.14.x.x LTS

AuthenticationFilter

The AuthenticationFilter is used for third-party login server integration, where the login server acts like a normal backend server. As long as the requirements are not fulfilled, the AuthenticationFilter will redirect the request back to the configured login server. The AuthenticationFilter must be mapped on the application and on the login server path.

Classname
ch::nevis::nevisproxy::filter::auth::AuthenticationFilter

Library

libAuthenticationFilters

Configuration

NameType, Usage Constraints, DefaultsDescription
RequirementsString required, conditional Supported pragmas: continue (default), breakNewline-separated strings of the following format:<source>:<name>:<regex> <source: ENV, AUTH, HEADER, PARAM, or SESSION <name>: the name in the given source; <regex> the regexp that has to match to fulfill the requirement.
AuthServiceUrlString required, conditional Pragma: break, Pragma: continue is not supportedThe url on which the auth-service has been mapped.
AuthenticationTypeenum: HeaderBased requiredThe auth-type to use. Currently, only 'HeaderBased' supported.
HeaderBased.RequestedUrlHeaderString requiredThe header which contains the 'orginal' request uri to send to the authentication service.
HeaderBased.KillResponseHeaderString requiredThe header that the auth service sets, if the session should be killed (logout). Syntax: <header-name>[:<header-value>] Where <header-name> is mandatory, <header-value> is an optional regex.
HeaderBased.AuthResponseHeaderrequired, conditional Supported pragmas: continueA newline-separated list of the Response Headers that should be written into the session: <regex for the responseHeaderName>:<regex for the value>:<sessionAttributeName>:<regex for the substitution to set>.
HeaderBased.SessionIdRequestHeaderString optionalA newline-separated list of the Response Headers that should be written into the session: The request header where we send the session id to the auth service.
RequestedUrlParamNameString optional, advanced Default: RequestedUriThe parameter name under which the original url should be added in the query.
InactivityTimeoutInteger optional, advancedThe inactivity timeout of the session (in seconds). Conditions are supported (Pragma: continue not supported). The value itself may contain values from the session etc. E.g.: ENV:newInactiveTimeout. Will take the value 'newInactiveTimeout' from the ENV (the value must contain a valid number).
ReauthenticationTimeoutInteger optional, advancedThe timeout (in seconds) after a reauthentication is required. For a reauthentication all required session-attributes will be removed, but the session itself will not be invalidated. Conditions are supported (Pragma: continue not supported). The value itself may contain values from the session etc. E.g.: ENV:newReauthTimeout. Will take the value 'newReauthTimeout' from the ENV (the value must contain a valid number).
MaxLifeTimeInteger optional, advancedThe maximal lifetime of the session (in seconds). Conditions are supported (Pragma: continue not supported). The value itself may contain values from the session etc. E.g.: ENV:newMaximalLifetime. Will take the value newMaximalLifetime from the ENV (the value must contain a valid number).