View ProvidersΒΆ
View provider plugins render the user facing web pages in txcas. These include:
- The login page
- The successful login to SSO page
- The logout page
- The invalid service page
- The error page
- The resource not found page
If a service manager is enabled, a reference to it is given to a view provider so that a service entry is made available to the login page and invalid service views.
A view provider does not have to provide every view. If it does not provide a particular view, the default txcas view will be presented.
A view provider is enabled by setting the view_provider
option
in the PLUGINS section of the main configuration file.
Valid options include:
jinja2_view_provider: This view provider renders HTML pages from Jinja2 templates. The request object is made available to all templates. The following names are made available to each view:
- login page
- login_ticket: A login ticket that must be POSTed when presenting credentials.
- service: The service requesting authentication. May be an empty string, indicating the user is trying to log into a CAS SSO session without logging into a service.
- service_entry: The complete service entry from the service manager.
- failed: True / False, indicates if previously submitted credentials failed.
- request
- successful login
- avatar: The avatar provided by the user realm.
- request
- logout
- request
- invalid service
- service: The service requesting authentication.
- service_entry: The complete service entry from the service manager.
- request
- error
- err: The failure object.
- request
- not found
- request
The plugin options can be configured by appending a colon to this option and providing colon-separated key=value pairs or by configuring options in the Jinja2ViewProvider section of the main config file (the latter method is preferred).
The Jinja2ViewProvider options are:
template_folder
: The path to the folder that will contain the templates. The templates should be named:login.jinja2
login_success.jinja2
logout.jinja2
invalid_service.jinja2
error_5xx.jinja2
not_found.jinja2
- login page