Class OAuth2AuthenticationToken
- All Implemented Interfaces:
Serializable,Principal,Authentication,CredentialsContainer
AbstractAuthenticationToken that represents an OAuth
2.0 Authentication.
The Authentication associates an OAuth2User Principal to the
identifier of the Authorized Client, which
the End-User (Principal) granted authorization to so that it can access its
protected resources at the UserInfo Endpoint.
- Since:
- 5.0
- See Also:
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class org.springframework.security.authentication.AbstractAuthenticationToken
AbstractAuthenticationToken.AbstractAuthenticationBuilder<B extends AbstractAuthenticationToken.AbstractAuthenticationBuilder<B>> -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedOAuth2AuthenticationToken(OAuth2User principal, Collection<? extends GrantedAuthority> authorities, String authorizedClientRegistrationId) Constructs anOAuth2AuthenticationTokenusing the provided parameters. -
Method Summary
Modifier and TypeMethodDescriptionReturns the registration identifier of theAuthorized Client.The credentials that prove the principal is correct.The identity of the principal being authenticated.Return anAuthentication.Builderbased on this instance.Methods inherited from class org.springframework.security.authentication.AbstractAuthenticationToken
equals, eraseCredentials, getAuthorities, getDetails, getName, hashCode, isAuthenticated, setAuthenticated, setDetails, toString
-
Constructor Details
-
OAuth2AuthenticationToken
public OAuth2AuthenticationToken(OAuth2User principal, Collection<? extends GrantedAuthority> authorities, String authorizedClientRegistrationId) Constructs anOAuth2AuthenticationTokenusing the provided parameters.- Parameters:
principal- the userPrincipalregistered with the OAuth 2.0 Providerauthorities- the authorities granted to the userauthorizedClientRegistrationId- the registration identifier of theAuthorized Client
-
OAuth2AuthenticationToken
-
-
Method Details
-
getPrincipal
Description copied from interface:AuthenticationThe 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
UserDetailsobject as the principal.- Returns:
- the
Principalbeing authenticated or the authenticated principal after authentication.
-
getCredentials
Description copied from interface:AuthenticationThe credentials that prove the principal is correct. This is usually a password, but could be anything relevant to theAuthenticationManager. Callers are expected to populate the credentials.- Returns:
- the credentials that prove the identity of the
Principal
-
getAuthorizedClientRegistrationId
Returns the registration identifier of theAuthorized Client.- Returns:
- the registration identifier of the Authorized Client.
-
toBuilder
Description copied from interface:AuthenticationReturn anAuthentication.Builderbased on this instance. By default, returns a builder that builds aSimpleAuthentication.Although a
defaultmethod, allAuthenticationimplementations should implement this. The reason is to ensure that theAuthenticationtype is preserved whenAuthentication.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
Authenticationinterface and that custom information is often contained in theAuthentication.getPrincipal()value.- Returns:
- an
Authentication.Builderfor building a newAuthenticationbased on this instance
-