public class ClusterSingleSignOn extends SingleSignOn implements ClusterValve, AbstractReplicatedMap.MapOwner
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.Lifecycle.SingleUse
cache
asyncSupported, container, containerLog, next
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 boolean |
associate(String ssoId,
Session session)
Associate the specified single sign on identifier with the
specified Session.
|
CatalinaCluster |
getCluster()
Returns the cluster the cluster deployer is associated with
|
int |
getMapSendOptions() |
long |
getRpcTimeout() |
protected SessionListener |
getSessionListener(String ssoId) |
boolean |
getTerminateOnStartFailure() |
void |
objectMadePrimary(Object key,
Object value) |
void |
setCluster(CatalinaCluster cluster)
Associates the cluster deployer with a cluster
|
void |
setMapSendOptions(int mapSendOptions) |
void |
setRpcTimeout(long rpcTimeout) |
void |
setTerminateOnStartFailure(boolean terminateOnStartFailure) |
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 boolean |
update(String ssoId,
Principal principal,
String authType,
String username,
String password)
Updates any
SingleSignOnEntry found under key
ssoId with the given authentication data. |
deregister, getCookieDomain, getRequireReauthentication, invoke, reauthenticate, register, removeSession, sessionDestroyed, setCookieDomain, setRequireReauthentication
backgroundProcess, 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
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
backgroundProcess, getNext, invoke, isAsyncSupported, setNext
public CatalinaCluster getCluster()
ClusterValve
getCluster
in interface ClusterValve
public void setCluster(CatalinaCluster cluster)
ClusterValve
setCluster
in interface ClusterValve
cluster
- CatalinaClusterpublic long getRpcTimeout()
public void setRpcTimeout(long rpcTimeout)
public int getMapSendOptions()
public void setMapSendOptions(int mapSendOptions)
public boolean getTerminateOnStartFailure()
public void setTerminateOnStartFailure(boolean terminateOnStartFailure)
protected boolean associate(String ssoId, Session session)
SingleSignOn
associate
in class SingleSignOn
ssoId
- Single sign on identifiersession
- Session to be associatedtrue
if the session was associated to the given SSO
session, otherwise false
protected boolean update(String ssoId, Principal principal, String authType, String username, String password)
SingleSignOn
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 authenticationtrue
if the credentials were updated, otherwise
false
protected SessionListener getSessionListener(String ssoId)
getSessionListener
in class SingleSignOn
public void objectMadePrimary(Object key, Object value)
objectMadePrimary
in interface AbstractReplicatedMap.MapOwner
protected void startInternal() throws LifecycleException
LifecycleBase.startInternal()
.startInternal
in class SingleSignOn
LifecycleException
- if this component detects a fatal error
that prevents this component from being usedprotected void stopInternal() throws LifecycleException
LifecycleBase.stopInternal()
.stopInternal
in class SingleSignOn
LifecycleException
- if this component detects a fatal error
that prevents this component from being usedCopyright © 2000-2016 Apache Software Foundation. All Rights Reserved.