edu.internet2.middleware.shibboleth.idp.authn.provider
Class ExternalAuthnSystemLoginHandler

java.lang.Object
  extended by edu.internet2.middleware.shibboleth.idp.authn.provider.AbstractLoginHandler
      extended by edu.internet2.middleware.shibboleth.idp.authn.provider.ExternalAuthnSystemLoginHandler
All Implemented Interfaces:
LoginHandler

public class ExternalAuthnSystemLoginHandler
extends AbstractLoginHandler

A login handler meant to bridge between the IdP and an external, web-based, authentication service. This login handler will forward the user-agent to a context-relative path and include the following request attributes: FORCE_AUTHN_PARAM, PASSIVE_AUTHN_PARAM, AUTHN_METHOD_PARAM, and RELYING_PARTY_PARAM. The external authentication system invocation Fileter/Servlet/JSP must, upon completion of authentication, set the appropriate HttpServletRequest attributes, as described by the LoginHandler interface and then invoke AuthenticationEngine.returnToAuthenticationEngine(HttpServletRequest, HttpServletResponse) .


Field Summary
static String AUTHN_METHOD_PARAM
          Query parameter, "authnMethod" , that provides which authentication method should be attempted.
static String FORCE_AUTHN_PARAM
          Query parameter, "forceAuthn" , that indicates whether the authentication request requires forced authentication.
static String PASSIVE_AUTHN_PARAM
          Query parameter, "isPassive" , that indicates whether the authentication requires passive authentication.
static String RELYING_PARTY_PARAM
          Query parameter, "relyingParty" , that provides the entity ID of the relying party that is requesting authentication.
 
Fields inherited from interface edu.internet2.middleware.shibboleth.idp.authn.LoginHandler
AUTHENTICATION_ERROR_KEY, AUTHENTICATION_EXCEPTION_KEY, AUTHENTICATION_INSTANT_KEY, AUTHENTICATION_METHOD_KEY, PRINCIPAL_KEY, PRINCIPAL_NAME_KEY, SUBJECT_KEY
 
Constructor Summary
ExternalAuthnSystemLoginHandler()
          Constructor.
 
Method Summary
 String getExternalAuthnPath()
          Get context-relative path to the Filter, Servlet, or JSP that triggers the external authentication system.
 void login(javax.servlet.http.HttpServletRequest httpRequest, javax.servlet.http.HttpServletResponse httpResponse)
          Authenticate the user making the request.
protected  void populateRequestAttributes(javax.servlet.http.HttpServletRequest httpRequest)
          Sets the request attributes that will be sent to the external authentication service.
 void setExternalAuthnPath(String path)
          Set context-relative path to the Filter, Servlet, or JSP that triggers the external authentication system.
 
Methods inherited from class edu.internet2.middleware.shibboleth.idp.authn.provider.AbstractLoginHandler
getAuthenticationDuration, getSupportedAuthenticationMethods, setAuthenticationDuration, setAuthenticationDurection, setSupportsForceAuthentication, setSupportsPassive, supportsForceAuthentication, supportsPassive
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

FORCE_AUTHN_PARAM

public static final String FORCE_AUTHN_PARAM
Query parameter, "forceAuthn" , that indicates whether the authentication request requires forced authentication.

See Also:
Constant Field Values

PASSIVE_AUTHN_PARAM

public static final String PASSIVE_AUTHN_PARAM
Query parameter, "isPassive" , that indicates whether the authentication requires passive authentication.

See Also:
Constant Field Values

AUTHN_METHOD_PARAM

public static final String AUTHN_METHOD_PARAM
Query parameter, "authnMethod" , that provides which authentication method should be attempted.

See Also:
Constant Field Values

RELYING_PARTY_PARAM

public static final String RELYING_PARTY_PARAM
Query parameter, "relyingParty" , that provides the entity ID of the relying party that is requesting authentication.

See Also:
Constant Field Values
Constructor Detail

ExternalAuthnSystemLoginHandler

public ExternalAuthnSystemLoginHandler()
Constructor.

Method Detail

getExternalAuthnPath

public String getExternalAuthnPath()
Get context-relative path to the Filter, Servlet, or JSP that triggers the external authentication system.

Returns:
context-relative path to the Filter, Servlet, or JSP that triggers the external authentication system

setExternalAuthnPath

public void setExternalAuthnPath(String path)
Set context-relative path to the Filter, Servlet, or JSP that triggers the external authentication system.

Parameters:
path - context-relative path to the Filter, Servlet, or JSP that triggers the external authentication system, may not be null or empty

login

public void login(javax.servlet.http.HttpServletRequest httpRequest,
                  javax.servlet.http.HttpServletResponse httpResponse)
Authenticate the user making the request.

Parameters:
httpRequest - user request
httpResponse - response to user

populateRequestAttributes

protected void populateRequestAttributes(javax.servlet.http.HttpServletRequest httpRequest)
Sets the request attributes that will be sent to the external authentication service.

Parameters:
httpRequest - current HTTP request


Copyright © 2006-2011 Internet2. All Rights Reserved.