org.springframework.security.cas.authentication
Class CasAuthenticationToken

java.lang.Object
  extended by org.springframework.security.authentication.AbstractAuthenticationToken
      extended by org.springframework.security.cas.authentication.CasAuthenticationToken
All Implemented Interfaces:
Serializable, Principal, Authentication, CredentialsContainer

public class CasAuthenticationToken
extends AbstractAuthenticationToken
implements Serializable

Represents a successful CAS Authentication.

See Also:
Serialized Form

Constructor Summary
CasAuthenticationToken(String key, Object principal, Object credentials, Collection<? extends GrantedAuthority> authorities, UserDetails userDetails, org.jasig.cas.client.validation.Assertion assertion)
          Constructor.
 
Method Summary
 boolean equals(Object obj)
           
 org.jasig.cas.client.validation.Assertion getAssertion()
           
 Object getCredentials()
          The credentials that prove the principal is correct.
 int getKeyHash()
           
 Object getPrincipal()
          The identity of the principal being authenticated.
 UserDetails getUserDetails()
           
 String toString()
           
 
Methods inherited from class org.springframework.security.authentication.AbstractAuthenticationToken
eraseCredentials, getAuthorities, getDetails, getName, hashCode, isAuthenticated, setAuthenticated, setDetails
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CasAuthenticationToken

public CasAuthenticationToken(String key,
                              Object principal,
                              Object credentials,
                              Collection<? extends GrantedAuthority> authorities,
                              UserDetails userDetails,
                              org.jasig.cas.client.validation.Assertion assertion)
Constructor.

Parameters:
key - to identify if this object made by a given CasAuthenticationProvider
principal - typically the UserDetails object (cannot be null)
credentials - the service/proxy ticket ID from CAS (cannot be null)
authorities - the authorities granted to the user (from the UserDetailsService) (cannot be null)
userDetails - the user details (from the UserDetailsService) (cannot be null)
assertion - the assertion returned from the CAS servers. It contains the principal and how to obtain a proxy ticket for the user.
Throws:
IllegalArgumentException - if a null was passed
Method Detail

equals

public boolean equals(Object obj)
Specified by:
equals in interface Principal
Overrides:
equals in class AbstractAuthenticationToken

getCredentials

public Object getCredentials()
Description copied from interface: Authentication
The credentials that prove the principal is correct. This is usually a password, but could be anything relevant to the AuthenticationManager. Callers are expected to populate the credentials.

Specified by:
getCredentials in interface Authentication
Returns:
the credentials that prove the identity of the Principal

getKeyHash

public int getKeyHash()

getPrincipal

public Object getPrincipal()
Description copied from interface: Authentication
The identity of the principal being authenticated. In the case of an authentication request with username and password, this would be the username. Callers are expected to populate the principal for an authentication request.

The AuthenticationManager implementation will often return an Authentication containing richer information as the principal for use by the application. Many of the authentication providers will create a UserDetails object as the principal.

Specified by:
getPrincipal in interface Authentication
Returns:
the Principal being authenticated or the authenticated principal after authentication.

getAssertion

public org.jasig.cas.client.validation.Assertion getAssertion()

getUserDetails

public UserDetails getUserDetails()

toString

public String toString()
Specified by:
toString in interface Principal
Overrides:
toString in class AbstractAuthenticationToken