org.jasig.cas.client.tomcat.v7
Class AbstractAuthenticator

java.lang.Object
  extended by org.apache.catalina.util.LifecycleBase
      extended by org.apache.catalina.util.LifecycleMBeanBase
          extended by org.apache.catalina.valves.ValveBase
              extended by org.apache.catalina.authenticator.AuthenticatorBase
                  extended by org.jasig.cas.client.tomcat.v7.AbstractAuthenticator
All Implemented Interfaces:
MBeanRegistration, org.apache.catalina.Authenticator, org.apache.catalina.Contained, org.apache.catalina.Lifecycle, org.apache.catalina.LifecycleListener, org.apache.catalina.Valve
Direct Known Subclasses:
AbstractCasAuthenticator, Saml11Authenticator

public abstract class AbstractAuthenticator
extends org.apache.catalina.authenticator.AuthenticatorBase
implements org.apache.catalina.LifecycleListener

Base authenticator for all authentication protocols supported by CAS.

Since:
3.1.12
Version:
$Revision$ $Date$
Author:
Scott Battaglia

Field Summary
protected  org.slf4j.Logger logger
           
 
Fields inherited from class org.apache.catalina.authenticator.AuthenticatorBase
algorithm, alwaysUseSession, AUTH_HEADER_NAME, cache, changeSessionIdOnAuthentication, context, DEFAULT_ALGORITHM, disableProxyCaching, info, REALM_NAME, securePagesWithPragma, secureRandomAlgorithm, secureRandomClass, secureRandomProvider, SESSION_ID_BYTES, sessionIdGenerator, sm, sso
 
Fields inherited from class org.apache.catalina.valves.ValveBase
asyncSupported, container, containerLog, next
 
Fields inherited from class org.apache.catalina.util.LifecycleMBeanBase
mserver
 
Fields inherited from interface org.apache.catalina.Lifecycle
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 Summary
AbstractAuthenticator()
           
 
Method Summary
 boolean authenticate(org.apache.catalina.connector.Request request, javax.servlet.http.HttpServletResponse response, org.apache.catalina.deploy.LoginConfig loginConfig)
          
protected abstract  String getArtifactParameterName()
          Abstract method that subclasses should use to provide the name of the artifact parameter (i.e.
protected abstract  String getAuthenticationMethod()
           
protected  String getAuthMethod()
          Provided for Tomcat 7.0.8 support.
protected  String getCasServerUrlPrefix()
           
protected  String getEncoding()
           
 String getInfo()
          
protected abstract  String getName()
           
protected abstract  String getServiceParameterName()
          Abstract method that subclasses should use to provide the name of the service parameter (i.e.
protected abstract  TicketValidator getTicketValidator()
          Returns the single instance of the ticket validator to use to validate tickets.
 boolean isEncode()
           
protected  boolean isRenew()
           
 void lifecycleEvent(org.apache.catalina.LifecycleEvent event)
          
 void setCasServerLoginUrl(String casServerLoginUrl)
           
 void setCasServerUrlPrefix(String casServerUrlPrefix)
           
 void setEncode(boolean encode)
           
 void setEncoding(String encoding)
           
 void setRenew(boolean renew)
           
 void setServerName(String serverName)
           
 void setServiceUrl(String serviceUrl)
           
protected  void setState(org.apache.catalina.LifecycleState state, Object data)
          
protected  void startInternal()
           
 
Methods inherited from class org.apache.catalina.authenticator.AuthenticatorBase
associate, doLogin, getAlgorithm, getCache, getChangeSessionIdOnAuthentication, getContainer, getDisableProxyCaching, getSecurePagesWithPragma, getSecureRandomAlgorithm, getSecureRandomClass, getSecureRandomProvider, invoke, login, logout, reauthenticateFromSSO, register, setAlgorithm, setCache, setChangeSessionIdOnAuthentication, setContainer, setDisableProxyCaching, setSecurePagesWithPragma, setSecureRandomAlgorithm, setSecureRandomClass, setSecureRandomProvider, stopInternal
 
Methods inherited from class org.apache.catalina.valves.ValveBase
backgroundProcess, event, getDomainInternal, getNext, getObjectNameKeyProperties, initInternal, isAsyncSupported, setAsyncSupported, setNext, toString
 
Methods inherited from class org.apache.catalina.util.LifecycleMBeanBase
destroyInternal, getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister
 
Methods inherited from class org.apache.catalina.util.LifecycleBase
addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, init, removeLifecycleListener, setState, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

logger

protected final org.slf4j.Logger logger
Constructor Detail

AbstractAuthenticator

public AbstractAuthenticator()
Method Detail

getAuthenticationMethod

protected abstract String getAuthenticationMethod()

getAuthMethod

protected String getAuthMethod()
Provided for Tomcat 7.0.8 support.

Specified by:
getAuthMethod in class org.apache.catalina.authenticator.AuthenticatorBase
Returns:
the authentication method.

getArtifactParameterName

protected abstract String getArtifactParameterName()
Abstract method that subclasses should use to provide the name of the artifact parameter (i.e. ticket)

Returns:
the artifact parameter name. CANNOT be NULL.

getServiceParameterName

protected abstract String getServiceParameterName()
Abstract method that subclasses should use to provide the name of the service parameter (i.e. service)

Returns:
the service parameter name. CANNOT be NULL.

getTicketValidator

protected abstract TicketValidator getTicketValidator()
Returns the single instance of the ticket validator to use to validate tickets. Sub classes should include the one appropriate for the

Returns:
a fully configured ticket validator. CANNOT be NULL.

startInternal

protected void startInternal()
                      throws org.apache.catalina.LifecycleException
Overrides:
startInternal in class org.apache.catalina.authenticator.AuthenticatorBase
Throws:
org.apache.catalina.LifecycleException

getCasServerUrlPrefix

protected final String getCasServerUrlPrefix()

setCasServerUrlPrefix

public final void setCasServerUrlPrefix(String casServerUrlPrefix)

setCasServerLoginUrl

public final void setCasServerLoginUrl(String casServerLoginUrl)

isEncode

public final boolean isEncode()

setEncode

public final void setEncode(boolean encode)

isRenew

protected final boolean isRenew()

setRenew

public void setRenew(boolean renew)

setServerName

public final void setServerName(String serverName)

setServiceUrl

public final void setServiceUrl(String serviceUrl)

getEncoding

protected final String getEncoding()

setEncoding

public final void setEncoding(String encoding)

authenticate

public final boolean authenticate(org.apache.catalina.connector.Request request,
                                  javax.servlet.http.HttpServletResponse response,
                                  org.apache.catalina.deploy.LoginConfig loginConfig)
                           throws IOException

Specified by:
authenticate in interface org.apache.catalina.Authenticator
Specified by:
authenticate in class org.apache.catalina.authenticator.AuthenticatorBase
Throws:
IOException

lifecycleEvent

public void lifecycleEvent(org.apache.catalina.LifecycleEvent event)

Specified by:
lifecycleEvent in interface org.apache.catalina.LifecycleListener

getInfo

public String getInfo()

Specified by:
getInfo in interface org.apache.catalina.Valve
Overrides:
getInfo in class org.apache.catalina.authenticator.AuthenticatorBase

setState

protected void setState(org.apache.catalina.LifecycleState state,
                        Object data)

Overrides:
setState in class org.apache.catalina.util.LifecycleBase

getName

protected abstract String getName()
Returns:
Authenticator descriptive name.


Copyright © 2006-2014 Jasig. All Rights Reserved.