public class ClusterSingleSignOn extends SingleSignOn
Host
).Realm
that contains the shared user and role
information must be configured on the same Container (or a higher
one), and not overridden at the web application level.org.apache.catalina.authenticator
package.Modifier and Type | Field and Description |
---|---|
protected int |
messageNumber |
cache, reverse
asyncSupported, container, containerLog, next, sm
mserver
AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT
Constructor and Description |
---|
ClusterSingleSignOn() |
Modifier and Type | Method and Description |
---|---|
protected void |
associate(String ssoId,
Session session)
Notify the cluster of the addition of a Session to
an SSO session and associate the specified single
sign on identifier with the specified Session on the
local node.
|
protected void |
associateLocal(String ssoId,
Session session) |
protected void |
deregister(String ssoId)
Notifies the cluster that a single sign on session
has been terminated due to a user logout, deregister
the specified single sign on identifier, and invalidate
any associated sessions on the local node.
|
protected void |
deregister(String ssoId,
Session session)
Notify the cluster of the removal of a Session from an
SSO session and deregister the specified session.
|
protected void |
deregisterLocal(String ssoId) |
protected void |
deregisterLocal(String ssoId,
Session session) |
CatalinaCluster |
getCluster() |
protected void |
register(String ssoId,
Principal principal,
String authType,
String username,
String password)
Notifies the cluster of the creation of a new SSO entry
and register the specified Principal as being associated
with the specified value for the single sign on identifier.
|
protected void |
registerLocal(String ssoId,
Principal principal,
String authType,
String username,
String password) |
protected void |
removeSession(String ssoId,
Session session)
Remove a single Session from a SingleSignOn and notify the cluster
of the removal.
|
protected void |
removeSessionLocal(String ssoId,
Session session) |
void |
setCluster(CatalinaCluster cluster) |
protected void |
startInternal()
Start this component and implement the requirements
of
LifecycleBase.startInternal() . |
protected void |
stopInternal()
Stop this component and implement the requirements
of
LifecycleBase.stopInternal() . |
protected void |
update(String ssoId,
Principal principal,
String authType,
String username,
String password)
Notifies the cluster of an update of the security credentials
associated with an SSO session.
|
protected void |
updateLocal(String ssoId,
Principal principal,
String authType,
String username,
String password) |
getCookieDomain, getRequireReauthentication, invoke, lookup, reauthenticate, sessionEvent, setCookieDomain, setRequireReauthentication
backgroundProcess, event, getContainer, getDomainInternal, getNext, getObjectNameKeyProperties, initInternal, isAsyncSupported, setAsyncSupported, setContainer, setNext, toString
destroyInternal, getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister
addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, init, removeLifecycleListener, setState, setState, start, stop
public CatalinaCluster getCluster()
public void setCluster(CatalinaCluster cluster)
protected void startInternal() throws LifecycleException
LifecycleBase.startInternal()
.startInternal
in class ValveBase
LifecycleException
- if this component detects a fatal error
that prevents this component from being usedprotected void stopInternal() throws LifecycleException
LifecycleBase.stopInternal()
.stopInternal
in class ValveBase
LifecycleException
- if this component detects a fatal error
that prevents this component from being usedprotected void associate(String ssoId, Session session)
associate
in class SingleSignOn
ssoId
- Single sign on identifiersession
- Session to be associatedprotected void deregister(String ssoId, Session session)
deregister
in class SingleSignOn
ssoId
- Single sign on identifiersession
- Session to be deregisteredprotected void deregister(String ssoId)
deregister
in class SingleSignOn
ssoId
- Single sign on identifier to deregisterprotected void deregisterLocal(String ssoId)
protected void register(String ssoId, Principal principal, String authType, String username, String password)
register
in class SingleSignOn
ssoId
- Single sign on identifier to registerprincipal
- Associated user principal that is identifiedauthType
- Authentication type used to authenticate this
user principalusername
- Username used to authenticate this userpassword
- Password used to authenticate this userprotected void registerLocal(String ssoId, Principal principal, String authType, String username, String password)
protected void update(String ssoId, Principal principal, String authType, String username, String password)
SingleSignOnEntry
found under key ssoId
with the given authentication data.
The purpose of this method is to allow an SSO entry that was established without a username/password combination (i.e. established following DIGEST or CLIENT-CERT authentication) to be updated with a username and password if one becomes available through a subsequent BASIC or FORM authentication. The SSO entry will then be usable for reauthentication.
NOTE: Only updates the SSO entry if a call to
SingleSignOnEntry.getCanReauthenticate()
returns
false
; otherwise, it is assumed that the SSO entry already
has sufficient information to allow reauthentication and that no update
is needed.
update
in class SingleSignOn
ssoId
- identifier of Single sign to be updatedprincipal
- the Principal
returned by the latest
call to Realm.authenticate
.authType
- the type of authenticator used (BASIC, CLIENT-CERT,
DIGEST or FORM)username
- the username (if any) used for the authenticationpassword
- the password (if any) used for the authenticationprotected void updateLocal(String ssoId, Principal principal, String authType, String username, String password)
protected void removeSession(String ssoId, Session session)
removeSession
in class SingleSignOn
ssoId
- Single sign on identifier from which to remove the session.session
- the session to be removed.Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.