Class OauthPasswordAuthenticationProvider

  • All Implemented Interfaces:
    io.micronaut.security.authentication.AuthenticationProvider

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

      • 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 Detail

      • authenticate

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

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