3

我们正在使用elasticsearch-rest-high-level-client与 AWS Elasticsearch 进行通信。

但是,正如我们被告知的,我们需要使用 AWS 凭证签署请求。我知道这个类AWS4Signer,但不知道如何使用它elasticsearch-rest-high-level-client

4

1 回答 1

0

来自 aws文档

public static RestHighLevelClient esClient(String serviceName, String region) {
    AWS4Signer signer = new AWS4Signer();
    signer.setServiceName(serviceName);
    signer.setRegionName(region);
    HttpRequestInterceptor interceptor = new AWSRequestSigningApacheInterceptor(serviceName, signer, credentialsProvider);
    return new RestHighLevelClient(RestClient.builder(HttpHost.create(aesEndpoint)).setHttpClientConfigCallback(hacb -> hacb.addInterceptorLast(interceptor)));
}
于 2020-09-10T13:40:36.597 回答