Class OAuth2ClientCredentialsProvider
java.lang.Object
com.rabbitmq.client.impl.RefreshProtectedCredentialsProvider<com.rabbitmq.client.impl.OAuth2ClientCredentialsGrantCredentialsProvider.Token>
com.rabbitmq.client.impl.OAuth2ClientCredentialsGrantCredentialsProvider
com.finconsgroup.itserr.marketplace.usercommunication.dm.security.OAuth2ClientCredentialsProvider
- All Implemented Interfaces:
com.rabbitmq.client.impl.CredentialsProvider,com.rabbitmq.stream.sasl.CredentialsProvider,com.rabbitmq.stream.sasl.UsernamePasswordCredentialsProvider
- Direct Known Subclasses:
StompOAuth2ClientCredentialsWithRefreshProvider
public class OAuth2ClientCredentialsProvider
extends com.rabbitmq.client.impl.OAuth2ClientCredentialsGrantCredentialsProvider
implements com.rabbitmq.stream.sasl.UsernamePasswordCredentialsProvider
An OAuth2 credentials provider for RabbitMQ that implements
UsernamePasswordCredentialsProvider
using the Client Credentials Grant flow.
This provider authenticates with RabbitMQ using OAuth2 by exchanging client credentials (client ID and secret) for an access token at the specified token endpoint. The obtained token is then used for authentication with the RabbitMQ server.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.rabbitmq.client.impl.OAuth2ClientCredentialsGrantCredentialsProvider
com.rabbitmq.client.impl.OAuth2ClientCredentialsGrantCredentialsProvider.OAuth2ClientCredentialsGrantCredentialsProviderBuilder, com.rabbitmq.client.impl.OAuth2ClientCredentialsGrantCredentialsProvider.TlsConfiguration, com.rabbitmq.client.impl.OAuth2ClientCredentialsGrantCredentialsProvider.Token -
Constructor Summary
ConstructorsConstructorDescriptionOAuth2ClientCredentialsProvider(String tokenEndpointUri, String clientId, String clientSecret, String grantType, Map<String, String> parameters, Duration refreshDelay, Duration refreshPeriod, ScheduledExecutorService scheduledExecutor) Constructs a new OAuth2 client credentials provider with the specified OAuth2 configuration. -
Method Summary
Methods inherited from class com.rabbitmq.client.impl.OAuth2ClientCredentialsGrantCredentialsProvider
checkContentType, checkResponseCode, configureConnection, configureConnectionForHttps, equals, extractResponseBody, getUsername, hashCode, parseToken, passwordFromToken, retrieveToken, timeBeforeExpiration, usernameFromTokenMethods inherited from class com.rabbitmq.client.impl.RefreshProtectedCredentialsProvider
getTimeBeforeExpiration, refreshMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.rabbitmq.stream.sasl.UsernamePasswordCredentialsProvider
getUsername
-
Constructor Details
-
OAuth2ClientCredentialsProvider
public OAuth2ClientCredentialsProvider(String tokenEndpointUri, String clientId, String clientSecret, String grantType, Map<String, String> parameters, Duration refreshDelay, Duration refreshPeriod, ScheduledExecutorService scheduledExecutor) Constructs a new OAuth2 client credentials provider with the specified OAuth2 configuration.- Parameters:
tokenEndpointUri- the OAuth2 token endpoint URIclientId- the OAuth2 client IDclientSecret- the OAuth2 client secretgrantType- the OAuth2 grant type (default "client_credentials")refreshDelay- represents how soon before expiration the token should be refreshed.scheduledExecutor- the scheduled executor to use to configure token refresh
-
-
Method Details
-
getPassword
- Specified by:
getPasswordin interfacecom.rabbitmq.client.impl.CredentialsProvider- Specified by:
getPasswordin interfacecom.rabbitmq.stream.sasl.UsernamePasswordCredentialsProvider- Overrides:
getPasswordin classcom.rabbitmq.client.impl.RefreshProtectedCredentialsProvider<com.rabbitmq.client.impl.OAuth2ClientCredentialsGrantCredentialsProvider.Token>
-
isAboutToExpire
public boolean isAboutToExpire()
-