Class CasAuthenticationProvider
java.lang.Object
org.springframework.security.cas.authentication.CasAuthenticationProvider
- All Implemented Interfaces:
org.springframework.beans.factory.Aware
,org.springframework.beans.factory.InitializingBean
,org.springframework.context.MessageSourceAware
,org.springframework.security.authentication.AuthenticationProvider
public class CasAuthenticationProvider
extends Object
implements org.springframework.security.authentication.AuthenticationProvider, org.springframework.beans.factory.InitializingBean, org.springframework.context.MessageSourceAware
An
AuthenticationProvider
implementation that integrates with JA-SIG Central
Authentication Service (CAS).
This AuthenticationProvider
is capable of validating
CasServiceTicketAuthenticationToken
requests which contain a
principal
name equal to either
CasServiceTicketAuthenticationToken.CAS_STATEFUL_IDENTIFIER
or
CasServiceTicketAuthenticationToken.CAS_STATELESS_IDENTIFIER
. It can also
validate a previously created CasAuthenticationToken
.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.springframework.context.support.MessageSourceAccessor
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
org.springframework.security.core.Authentication
authenticate
(org.springframework.security.core.Authentication authentication) protected String
getKey()
protected org.apereo.cas.client.validation.TicketValidator
protected org.springframework.security.core.userdetails.UserDetails
loadUserByAssertion
(org.apereo.cas.client.validation.Assertion assertion) Template method for retrieving the UserDetails based on the assertion.void
setAuthenticationUserDetailsService
(org.springframework.security.core.userdetails.AuthenticationUserDetailsService<CasAssertionAuthenticationToken> authenticationUserDetailsService) void
setAuthoritiesMapper
(org.springframework.security.core.authority.mapping.GrantedAuthoritiesMapper authoritiesMapper) void
void
setMessageSource
(org.springframework.context.MessageSource messageSource) void
setServiceProperties
(ServiceProperties serviceProperties) void
setStatelessTicketCache
(StatelessTicketCache statelessTicketCache) void
setTicketValidator
(org.apereo.cas.client.validation.TicketValidator ticketValidator) void
setUserDetailsChecker
(org.springframework.security.core.userdetails.UserDetailsChecker userDetailsChecker) Sets the UserDetailsChecker to be used for checking the status of retrieved user details.void
setUserDetailsService
(org.springframework.security.core.userdetails.UserDetailsService userDetailsService) boolean
-
Field Details
-
messages
protected org.springframework.context.support.MessageSourceAccessor messages
-
-
Constructor Details
-
CasAuthenticationProvider
public CasAuthenticationProvider()
-
-
Method Details
-
afterPropertiesSet
public void afterPropertiesSet()- Specified by:
afterPropertiesSet
in interfaceorg.springframework.beans.factory.InitializingBean
-
authenticate
public org.springframework.security.core.Authentication authenticate(org.springframework.security.core.Authentication authentication) throws org.springframework.security.core.AuthenticationException - Specified by:
authenticate
in interfaceorg.springframework.security.authentication.AuthenticationProvider
- Throws:
org.springframework.security.core.AuthenticationException
-
loadUserByAssertion
protected org.springframework.security.core.userdetails.UserDetails loadUserByAssertion(org.apereo.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.- Returns:
- the UserDetails.
-
setUserDetailsService
public void setUserDetailsService(org.springframework.security.core.userdetails.UserDetailsService userDetailsService) -
setAuthenticationUserDetailsService
public void setAuthenticationUserDetailsService(org.springframework.security.core.userdetails.AuthenticationUserDetailsService<CasAssertionAuthenticationToken> authenticationUserDetailsService) -
setUserDetailsChecker
public void setUserDetailsChecker(org.springframework.security.core.userdetails.UserDetailsChecker userDetailsChecker) Sets the UserDetailsChecker to be used for checking the status of retrieved user details. This allows customization of the UserDetailsChecker implementation.- Parameters:
userDetailsChecker
- the UserDetailsChecker to be set- Since:
- 6.4
-
setServiceProperties
-
getKey
-
setKey
-
getStatelessTicketCache
-
getTicketValidator
protected org.apereo.cas.client.validation.TicketValidator getTicketValidator() -
setMessageSource
public void setMessageSource(org.springframework.context.MessageSource messageSource) - Specified by:
setMessageSource
in interfaceorg.springframework.context.MessageSourceAware
-
setStatelessTicketCache
-
setTicketValidator
public void setTicketValidator(org.apereo.cas.client.validation.TicketValidator ticketValidator) -
setAuthoritiesMapper
public void setAuthoritiesMapper(org.springframework.security.core.authority.mapping.GrantedAuthoritiesMapper authoritiesMapper) -
supports
- Specified by:
supports
in interfaceorg.springframework.security.authentication.AuthenticationProvider
-