Class OAuth2AuthorizationCodeAuthenticationToken

java.lang.Object
org.springframework.security.authentication.AbstractAuthenticationToken
org.springframework.security.oauth2.client.authentication.OAuth2AuthorizationCodeAuthenticationToken
All Implemented Interfaces:
Serializable, Principal, Authentication, CredentialsContainer

public class OAuth2AuthorizationCodeAuthenticationToken extends AbstractAuthenticationToken
An AbstractAuthenticationToken for the OAuth 2.0 Authorization Code Grant.
Since:
5.1
See Also:
  • Constructor Details

    • OAuth2AuthorizationCodeAuthenticationToken

      public OAuth2AuthorizationCodeAuthenticationToken(ClientRegistration clientRegistration, OAuth2AuthorizationExchange authorizationExchange)
      This constructor should be used when the Authorization Request/Response is complete.
      Parameters:
      clientRegistration - the client registration
      authorizationExchange - the authorization exchange
    • OAuth2AuthorizationCodeAuthenticationToken

      public OAuth2AuthorizationCodeAuthenticationToken(ClientRegistration clientRegistration, OAuth2AuthorizationExchange authorizationExchange, OAuth2AccessToken accessToken)
      This constructor should be used when the Access Token Request/Response is complete, which indicates that the Authorization Code Grant flow has fully completed.
      Parameters:
      clientRegistration - the client registration
      authorizationExchange - the authorization exchange
      accessToken - the access token credential
    • OAuth2AuthorizationCodeAuthenticationToken

      public OAuth2AuthorizationCodeAuthenticationToken(ClientRegistration clientRegistration, OAuth2AuthorizationExchange authorizationExchange, OAuth2AccessToken accessToken, @Nullable OAuth2RefreshToken refreshToken)
      This constructor should be used when the Access Token Request/Response is complete, which indicates that the Authorization Code Grant flow has fully completed.
      Parameters:
      clientRegistration - the client registration
      authorizationExchange - the authorization exchange
      accessToken - the access token credential
      refreshToken - the refresh token credential
    • OAuth2AuthorizationCodeAuthenticationToken

      public OAuth2AuthorizationCodeAuthenticationToken(ClientRegistration clientRegistration, OAuth2AuthorizationExchange authorizationExchange, OAuth2AccessToken accessToken, OAuth2RefreshToken refreshToken, Map<String,Object> additionalParameters)
  • Method Details

    • 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.

      Returns:
      the Principal being authenticated or the authenticated principal after authentication.
    • 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.
      Returns:
      the credentials that prove the identity of the Principal
    • getClientRegistration

      public ClientRegistration getClientRegistration()
      Returns the client registration.
      Returns:
      the ClientRegistration
    • getAuthorizationExchange

      public OAuth2AuthorizationExchange getAuthorizationExchange()
      Returns:
      the OAuth2AuthorizationExchange
    • getAccessToken

      public OAuth2AccessToken getAccessToken()
      Returns the access token.
      Returns:
      the OAuth2AccessToken
    • getRefreshToken

      @Nullable public OAuth2RefreshToken getRefreshToken()
      Returns the refresh token.
      Returns:
      the OAuth2RefreshToken
    • getAdditionalParameters

      public Map<String,Object> getAdditionalParameters()
      Returns the additional parameters
      Returns:
      the additional parameters