Java客户端添加ES的用户名和密码认证

public void ESClientInit() {

    public static RestHighLevelClient client = null;
    
    //不需要用户名和密码的认证
    //client = new RestHighLevelClient(RestClient.builder(new HttpHost("127.0.0.1", "9300", "http")));

    //需要用户名和密码的认证
    final CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
    credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials("userName", "password"));
    RestClientBuilder restClientBuilder = RestClient.builder(new HttpHost("127.0.0.1", "9300", "http"))
            .setHttpClientConfigCallback(new RestClientBuilder.HttpClientConfigCallback() {
                @Override
                public HttpAsyncClientBuilder customizeHttpClient(HttpAsyncClientBuilder httpAsyncClientBuilder) {
                    return httpAsyncClientBuilder.setDefaultCredentialsProvider(credentialsProvider);
                }
            });
    client = new RestHighLevelClient(restClientBuilder);

}
原文地址:https://www.cnblogs.com/wueryuan/p/13523549.html