Class OauthPasswordAuthenticationProvider<T>

java.lang.Object
io.micronaut.security.oauth2.endpoint.token.request.password.OauthPasswordAuthenticationProvider<T>
Type Parameters:
T - Request Context Type
All Implemented Interfaces:
io.micronaut.security.authentication.AuthenticationProvider<T>

public class OauthPasswordAuthenticationProvider<T> extends Object implements io.micronaut.security.authentication.AuthenticationProvider<T>
An AuthenticationProvider that delegates to an OAuth 2.0 provider using the password grant flow.
Since:
1.2.0
  • Constructor Details

    • OauthPasswordAuthenticationProvider

      public OauthPasswordAuthenticationProvider(TokenEndpointClient tokenEndpointClient, OauthClientConfiguration clientConfiguration, OauthAuthenticationMapper authenticationMapper)
      Parameters:
      tokenEndpointClient - The token endpoint client
      clientConfiguration - The client configuration
      authenticationMapper - The user details mapper
  • Method Details

    • authenticate

      public org.reactivestreams.Publisher<io.micronaut.security.authentication.AuthenticationResponse> authenticate(T requestContext, io.micronaut.security.authentication.AuthenticationRequest<?,?> authenticationRequest)
      Specified by:
      authenticate in interface io.micronaut.security.authentication.AuthenticationProvider<T>
    • getTokenEndpoint

      protected SecureEndpoint getTokenEndpoint(OauthClientConfiguration clientConfiguration)
      Builds the secure endpoint from the client configuration.
      Parameters:
      clientConfiguration - The client configuration
      Returns:
      The token endpoint