Class CasAuthenticationToken

java.lang.Object
org.springframework.security.authentication.AbstractAuthenticationToken
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:
  • Constructor Details

    • CasAuthenticationToken

      public CasAuthenticationToken(String key, Object principal, Object credentials, Collection<? extends GrantedAuthority> authorities, UserDetails userDetails, org.apereo.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
    • CasAuthenticationToken

      protected CasAuthenticationToken(CasAuthenticationToken.Builder<?> builder)
  • Method Details

    • equals

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

      public int hashCode()
      Specified by:
      hashCode in interface Principal
      Overrides:
      hashCode 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.apereo.cas.client.validation.Assertion getAssertion()
    • getUserDetails

      public UserDetails getUserDetails()
    • toBuilder

      public CasAuthenticationToken.Builder<?> toBuilder()
      Description copied from interface: Authentication
      Return an Authentication.Builder based on this instance. By default, returns a builder that builds a SimpleAuthentication.

      Although a default method, all Authentication implementations should implement this. The reason is to ensure that the Authentication type is preserved when Authentication.Builder.build() is invoked. This is especially important in the event that your authentication implementation contains custom fields.

      This isn't strictly necessary since it is recommended that applications code to the Authentication interface and that custom information is often contained in the Authentication.getPrincipal() value.

      Specified by:
      toBuilder in interface Authentication
      Returns:
      an Authentication.Builder for building a new Authentication based on this instance
    • toString

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