Class OAuth2AuthorizationCodeRequestAuthenticationToken

java.lang.Object
org.springframework.security.authentication.AbstractAuthenticationToken
org.springframework.security.oauth2.server.authorization.authentication.OAuth2AuthorizationCodeRequestAuthenticationToken
All Implemented Interfaces:
Serializable, Principal, Authentication, CredentialsContainer

public class OAuth2AuthorizationCodeRequestAuthenticationToken extends AbstractAuthenticationToken
An Authentication implementation for the OAuth 2.0 Authorization Request used in the Authorization Code Grant.
Since:
7.0
See Also:
  • Constructor Details

    • OAuth2AuthorizationCodeRequestAuthenticationToken

      public OAuth2AuthorizationCodeRequestAuthenticationToken(String authorizationUri, String clientId, Authentication principal, @Nullable String redirectUri, @Nullable String state, @Nullable Set<String> scopes, @Nullable Map<String,Object> additionalParameters)
      Constructs an OAuth2AuthorizationCodeRequestAuthenticationToken using the provided parameters.
      Parameters:
      authorizationUri - the authorization URI
      clientId - the client identifier
      principal - the Principal (Resource Owner)
      redirectUri - the redirect uri
      state - the state
      scopes - the requested scope(s)
      additionalParameters - the additional parameters
    • OAuth2AuthorizationCodeRequestAuthenticationToken

      public OAuth2AuthorizationCodeRequestAuthenticationToken(String authorizationUri, String clientId, Authentication principal, OAuth2AuthorizationCode authorizationCode, @Nullable String redirectUri, @Nullable String state, @Nullable Set<String> scopes)
      Constructs an OAuth2AuthorizationCodeRequestAuthenticationToken using the provided parameters.
      Parameters:
      authorizationUri - the authorization URI
      clientId - the client identifier
      principal - the Principal (Resource Owner)
      authorizationCode - the OAuth2AuthorizationCode
      redirectUri - the redirect uri
      state - the state
      scopes - the authorized scope(s)
  • Method Details

    • getAuthorizationCode

      @Nullable public OAuth2AuthorizationCode getAuthorizationCode()
      Returns:
      the OAuth2AuthorizationCode
    • 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
    • getAuthorizationUri

      public String getAuthorizationUri()
      Returns the authorization URI.
      Returns:
      the authorization URI
    • getClientId

      public String getClientId()
      Returns the client identifier.
      Returns:
      the client identifier
    • getRedirectUri

      @Nullable public String getRedirectUri()
      Returns the redirect uri.
      Returns:
      the redirect uri
    • getState

      @Nullable public String getState()
      Returns the state.
      Returns:
      the state
    • getScopes

      public Set<String> getScopes()
      Returns the requested (or authorized) scope(s).
      Returns:
      the requested (or authorized) scope(s), or an empty Set if not available
    • getAdditionalParameters

      public Map<String,Object> getAdditionalParameters()
      Returns the additional parameters.
      Returns:
      the additional parameters, or an empty Map if not available