Other authentication methods
If you want the client to authenticate with an Elasticsearch access token, set the relevant HTTP request header. If the client makes requests on behalf of a single user only, you can set the necessary Authorization
header as a default header as shown in the following example:
Rest5ClientBuilder builder = Rest5Client
.builder(new HttpHost("https", "localhost", 9200));
Header[] defaultHeaders = new Header[]{ new BasicHeader(
"Authorization",
"Bearer u6iuAxZ0RG1Kcm5jVFI4eU4tZU9aVFEwT2F3"
)};
builder.setDefaultHeaders(defaultHeaders);
If you want the client to authenticate with an Elasticsearch API key, set the relevant HTTP request header. If the client makes requests on behalf of a single user only, you can set the necessary Authorization
header as a default header as shown in the following example:
String apiKeyId = "uqlEyn8B_gQ_jlvwDIvM";
String apiKeySecret = "HxHWk2m4RN-V_qg9cDpuX";
String apiKeyAuth = Base64.getEncoder().encodeToString(
(apiKeyId + ":" + apiKeySecret).getBytes(StandardCharsets.UTF_8)
);
Rest5ClientBuilder builder = Rest5Client
.builder(new HttpHost("https", "localhost", 9200));
Header[] defaultHeaders = new Header[]{ new BasicHeader(
"Authorization",
"ApiKey " + apiKeyAuth
)};
builder.setDefaultHeaders(defaultHeaders);