Description
CernLogoutPlugin is an in-house CERN plugin that does the following things:
Re-enables the logout link
With
LdapContrib, the logout link is disabled because the AddOn does not
really know where to send the user for logout.
The first thing this plugin does, is to re-enable the logout link, setting it
to the default TWiki logout (?logout=1)
Intercepts a logout attempt
By looking at
$ENV{'QUERY_STRING'}
, the plugin can determine if the current
page load of TWiki is a logout attempt. Normally,
TWiki::LoginManager::loadSession() (or loadSession() defined by a subclass)
would carry out the logout attempt, killing the TWiki session.
However, since we are using SSO, we have two active sessions to take care of,
the TWiki session, and the SSO session.
Therefore, this plugin places itself "in the middle", manually calling
loadSession(), before it sends the user off to the SSO logout;
https://login.cern.ch/adfs/ls/?wa=wsignout1.0
Motivation
Before this plugin was created, working logout links placed around the CERN TWiki,
but they only logged the user out of SSO, not TWiki. This plugin was created
so that the user can be logged out of both places when it clicks on "log out",
not only from SSO (or TWiki).
Related: CernUserInformationPlugin,
CernUserTopicPlugin