@Override
    public boolean supports(final Class<?> authentication) {
        return X509CertificateAuthentication.class.isAssignableFrom(authentication);
    }
Creates a new X509CertificateAuthenticationProvider, which uses the given {@link Function} to extract the
username and uses the given {@link UserDetailsService} to lookup the user.

@param usernameExtractor The username extractor to use. The function should return null, if the username is
       missing.
@param userDetailsService The user details service to use.
grpc-server-spring-boot-starter/src/main/java/net/devh/boot/grpc/server/security/authentication/X509CertificateAuthenticationProvider.java