Использование конечной точки ElasticSearch за Basic-Auth-Proxy с RestHighLevelClient - PullRequest
0 голосов
/ 23 декабря 2018

У меня есть кластер ElasticSearch, который находится за прокси-сервером, настроенным с обычной аутентификацией.Как сделать звонок из RestHighLevelClient с учетными данными?В SpringBoot вам обычно приходится настраивать HttpClientContext следующим образом:

@Bean
public HttpClientContext configuredContext() {
    CredentialsProvider credsProvider = new BasicCredentialsProvider();
    credsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(DEFAULT_USER, DEFAULT_PASS));

    AuthCache authCache = new BasicAuthCache();
    authCache.put(httpHost, new BasicScheme());

    final HttpClientContext context = HttpClientContext.create();
    context.setCredentialsProvider(credsProvider);
    context.setAuthCache(authCache);
    return context;
}

, но я не могу найти подходящих параметров в ClientBuilder или Request for context.Есть ли способ заставить эту настройку работать?

1 Ответ

0 голосов
/ 23 декабря 2018

Вы можете создать RestHighLevelClient экземпляр как

final CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
    credentialsProvider.setCredentials(AuthScope.ANY,
            new UsernamePasswordCredentials("user", "password"));

    RestClientBuilder builder = RestClient.builder(new HttpHost("server", port))
            .setHttpClientConfigCallback(new RestClientBuilder.HttpClientConfigCallback() {
                @Override
                public HttpAsyncClientBuilder customizeHttpClient(HttpAsyncClientBuilder httpClientBuilder) {
                    return httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider);
                }
            });

    RestHighLevelClient client = new RestHighLevelClient(builder);

https://www.elastic.co/guide/en/elasticsearch/client/java-rest/current/_basic_authentication.html. Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...