public final class AuthorizedClientServiceOAuth2AuthorizedClientManager extends java.lang.Object implements OAuth2AuthorizedClientManager
OAuth2AuthorizedClientManager
that is capable of operating outside of a HttpServletRequest
context,
e.g. in a scheduled/background thread and/or in the service-tier.OAuth2AuthorizedClientManager
,
OAuth2AuthorizedClientProvider
,
OAuth2AuthorizedClientService
Modifier and Type | Class and Description |
---|---|
static class |
AuthorizedClientServiceOAuth2AuthorizedClientManager.DefaultContextAttributesMapper
The default implementation of the
contextAttributesMapper . |
Constructor and Description |
---|
AuthorizedClientServiceOAuth2AuthorizedClientManager(ClientRegistrationRepository clientRegistrationRepository,
OAuth2AuthorizedClientService authorizedClientService)
Constructs an
AuthorizedClientServiceOAuth2AuthorizedClientManager using the provided parameters. |
Modifier and Type | Method and Description |
---|---|
OAuth2AuthorizedClient |
authorize(OAuth2AuthorizeRequest authorizeRequest)
Attempt to authorize or re-authorize (if required) the
client
identified by the provided clientRegistrationId . |
void |
setAuthorizedClientProvider(OAuth2AuthorizedClientProvider authorizedClientProvider)
Sets the
OAuth2AuthorizedClientProvider used for authorizing (or re-authorizing) an OAuth 2.0 Client. |
void |
setContextAttributesMapper(java.util.function.Function<OAuth2AuthorizeRequest,java.util.Map<java.lang.String,java.lang.Object>> contextAttributesMapper)
Sets the
Function used for mapping attribute(s) from the OAuth2AuthorizeRequest to a Map of attributes
to be associated to the authorization context . |
public AuthorizedClientServiceOAuth2AuthorizedClientManager(ClientRegistrationRepository clientRegistrationRepository, OAuth2AuthorizedClientService authorizedClientService)
AuthorizedClientServiceOAuth2AuthorizedClientManager
using the provided parameters.clientRegistrationRepository
- the repository of client registrationsauthorizedClientService
- the authorized client service@Nullable public OAuth2AuthorizedClient authorize(OAuth2AuthorizeRequest authorizeRequest)
OAuth2AuthorizedClientManager
client
identified by the provided clientRegistrationId
.
Implementations must return null
if authorization is not supported for the specified client,
e.g. the associated OAuth2AuthorizedClientProvider
(s) does not support
the authorization grant
type configured for the client.
In the case of re-authorization, implementations must return the provided authorized client
if re-authorization is not supported for the client OR is not required,
e.g. a refresh token
is not available OR
the access token
is not expired.
authorize
in interface OAuth2AuthorizedClientManager
authorizeRequest
- the authorize requestOAuth2AuthorizedClient
or null
if authorization is not supported for the specified clientpublic void setAuthorizedClientProvider(OAuth2AuthorizedClientProvider authorizedClientProvider)
OAuth2AuthorizedClientProvider
used for authorizing (or re-authorizing) an OAuth 2.0 Client.authorizedClientProvider
- the OAuth2AuthorizedClientProvider
used for authorizing (or re-authorizing) an OAuth 2.0 Clientpublic void setContextAttributesMapper(java.util.function.Function<OAuth2AuthorizeRequest,java.util.Map<java.lang.String,java.lang.Object>> contextAttributesMapper)
Function
used for mapping attribute(s) from the OAuth2AuthorizeRequest
to a Map
of attributes
to be associated to the authorization context
.contextAttributesMapper
- the Function
used for supplying the Map
of attributes
to the authorization context