官方文档地址:Other authentication methods
Elasticsearch Token Service tokens
如果希望客户端使用 Elasticsearch access token 进行身份验证,请设置相关的 HTTP 请求头。如果客户端仅代表单个用户进行请求,可以将必要的Authorization
头设置为默认头,示例如下:
RestClientBuilder builder = RestClient.builder(
new HttpHost("localhost", 9200, "http"));
Header[] defaultHeaders =
new Header[]{new BasicHeader("Authorization",
"Bearer u6iuAxZ0RG1Kcm5jVFI4eU4tZU9aVFEwT2F3")};
builder.setDefaultHeaders(defaultHeaders);
Elasticsearch API keys
如果您希望客户端使用 Elasticsearch API key 进行身份验证,请设置相关的 HTTP 请求头。如果客户端仅代表单个用户发出请求,可以将必要的Authorization
头设置为默认头,示例如下:
String apiKeyId = "uqlEyn8B_gQ_jlvwDIvM";
String apiKeySecret = "HxHWk2m4RN-V_qg9cDpuX";
String apiKeyAuth =
Base64.getEncoder().encodeToString(
(apiKeyId + ":" + apiKeySecret)
.getBytes(StandardCharsets.UTF_8));
RestClientBuilder builder = RestClient.builder(
new HttpHost("localhost", 9200, "http"));
Header[] defaultHeaders =
new Header[]{new BasicHeader("Authorization",
"ApiKey " + apiKeyAuth)};
builder.setDefaultHeaders(defaultHeaders);