Class RefreshTokenReactiveOAuth2AuthorizedClientProvider
java.lang.Object
org.springframework.security.oauth2.client.RefreshTokenReactiveOAuth2AuthorizedClientProvider
- All Implemented Interfaces:
- ReactiveOAuth2AuthorizedClientProvider
public final class RefreshTokenReactiveOAuth2AuthorizedClientProvider
extends Object
implements ReactiveOAuth2AuthorizedClientProvider
An implementation of a 
ReactiveOAuth2AuthorizedClientProvider for the
 refresh_token grant.- Since:
- 5.2
- See Also:
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionreactor.core.publisher.Mono<OAuth2AuthorizedClient>authorize(OAuth2AuthorizationContext context) Attempt to re-authorize theclientin the providedcontext.voidsetAccessTokenResponseClient(ReactiveOAuth2AccessTokenResponseClient<OAuth2RefreshTokenGrantRequest> accessTokenResponseClient) Sets the client used when requesting an access token credential at the Token Endpoint for therefresh_tokengrant.voidSets theClockused inInstant.now(Clock)when checking the access token expiry.voidsetClockSkew(Duration clockSkew) Sets the maximum acceptable clock skew, which is used when checking theaccess tokenexpiry.
- 
Constructor Details- 
RefreshTokenReactiveOAuth2AuthorizedClientProviderpublic RefreshTokenReactiveOAuth2AuthorizedClientProvider()
 
- 
- 
Method Details- 
authorizepublic reactor.core.publisher.Mono<OAuth2AuthorizedClient> authorize(OAuth2AuthorizationContext context) Attempt to re-authorize theclientin the providedcontext. Returns an emptyMonoif re-authorization is not supported, e.g. the client is not authorized OR therefresh tokenis not available for the authorized client OR theaccess tokenis not expired.The following context attributesare supported:- "org.springframework.security.oauth2.client.REQUEST_SCOPE"(optional) - a- String[]of scope(s) to be requested by the- client
 - Specified by:
- authorizein interface- ReactiveOAuth2AuthorizedClientProvider
- Parameters:
- context- the context that holds authorization-specific state for the client
- Returns:
- the OAuth2AuthorizedClientor an emptyMonoif re-authorization is not supported
 
- 
setAccessTokenResponseClientpublic void setAccessTokenResponseClient(ReactiveOAuth2AccessTokenResponseClient<OAuth2RefreshTokenGrantRequest> accessTokenResponseClient) Sets the client used when requesting an access token credential at the Token Endpoint for therefresh_tokengrant.- Parameters:
- accessTokenResponseClient- the client used when requesting an access token credential at the Token Endpoint for the- refresh_tokengrant
 
- 
setClockSkewSets the maximum acceptable clock skew, which is used when checking theaccess tokenexpiry. The default is 60 seconds.An access token is considered expired if OAuth2AccessToken#getExpiresAt() - clockSkewis before the current timeclock#instant().- Parameters:
- clockSkew- the maximum acceptable clock skew
 
- 
setClockSets theClockused inInstant.now(Clock)when checking the access token expiry.- Parameters:
- clock- the clock
 
 
-