org.springframework.security.providers.cas
Class CasAuthenticationProvider
java.lang.Object
org.springframework.security.providers.cas.CasAuthenticationProvider
- All Implemented Interfaces:
- InitializingBean, MessageSourceAware, AuthenticationProvider
public class CasAuthenticationProvider
- extends Object
- implements AuthenticationProvider, InitializingBean, MessageSourceAware
An AuthenticationProvider
implementation that integrates with JA-SIG Central Authentication Service
(CAS).
This AuthenticationProvider
is capable of validating UsernamePasswordAuthenticationToken
requests which contain a principal
name equal to either
CasProcessingFilter.CAS_STATEFUL_IDENTIFIER
or CasProcessingFilter.CAS_STATELESS_IDENTIFIER
.
It can also validate a previously created CasAuthenticationToken
.
- Version:
- $Id$
- Author:
- Ben Alex
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
messages
protected MessageSourceAccessor messages
CasAuthenticationProvider
public CasAuthenticationProvider()
afterPropertiesSet
public void afterPropertiesSet()
throws Exception
- Specified by:
afterPropertiesSet
in interface InitializingBean
- Throws:
Exception
authenticate
public Authentication authenticate(Authentication authentication)
throws AuthenticationException
- Description copied from interface:
AuthenticationProvider
- Performs authentication with the same contract as
AuthenticationManager.authenticate(Authentication)
.
- Specified by:
authenticate
in interface AuthenticationProvider
- Parameters:
authentication
- the authentication request object.
- Returns:
- a fully authenticated object including credentials. May return
null
if the
AuthenticationProvider
is unable to support authentication of the passed
Authentication
object. In such a case, the next AuthenticationProvider
that
supports the presented Authentication
class will be tried.
- Throws:
AuthenticationException
- if authentication fails.
loadUserByAssertion
protected UserDetails loadUserByAssertion(org.jasig.cas.client.validation.Assertion assertion)
- Template method for retrieving the UserDetails based on the assertion. Default is to call configured userDetailsService and pass the username. Deployers
can override this method and retrieve the user based on any criteria they desire.
- Parameters:
assertion
- The CAS Assertion.
getUserDetailsService
protected UserDetailsService getUserDetailsService()
setUserDetailsService
public void setUserDetailsService(UserDetailsService userDetailsService)
setServiceProperties
public void setServiceProperties(ServiceProperties serviceProperties)
getKey
protected String getKey()
setKey
public void setKey(String key)
getStatelessTicketCache
public StatelessTicketCache getStatelessTicketCache()
getTicketValidator
protected org.jasig.cas.client.validation.TicketValidator getTicketValidator()
setMessageSource
public void setMessageSource(MessageSource messageSource)
- Specified by:
setMessageSource
in interface MessageSourceAware
setStatelessTicketCache
public void setStatelessTicketCache(StatelessTicketCache statelessTicketCache)
setTicketValidator
public void setTicketValidator(org.jasig.cas.client.validation.TicketValidator ticketValidator)
supports
public boolean supports(Class authentication)
- Description copied from interface:
AuthenticationProvider
- Returns
true
if this AuthenticationProvider
supports the indicated
Authentication
object.
Returning true
does not guarantee an AuthenticationProvider
will be able to
authenticate the presented instance of the Authentication
class. It simply indicates it can support
closer evaluation of it. An AuthenticationProvider
can still return null
from the
AuthenticationProvider.authenticate(Authentication)
method to indicate another AuthenticationProvider
should be
tried.
Selection of an AuthenticationProvider
capable of performing authentication is
conducted at runtime the ProviderManager
.
- Specified by:
supports
in interface AuthenticationProvider
- Parameters:
authentication
- DOCUMENT ME!
- Returns:
true
if the implementation can more closely evaluate the Authentication
class
presented
Copyright © 2004-2010 SpringSource, Inc. All Rights Reserved.