解决RestHighLevelClient报错missing authentication credentials for REST request

使用ElasticSearch Java API时遇到错误 "missing authentication credentials for REST request"

这是代码:

java 复制代码
RestHighLevelClient esClient =
                new RestHighLevelClient(RestClient.builder(new HttpHost("localhost",9200,"http")));

        CreateIndexRequest createIndexRequest = new CreateIndexRequest("user");
        CreateIndexResponse createIndexResponse = esClient.indices().create(createIndexRequest, RequestOptions.DEFAULT);
        boolean acknowledged = createIndexResponse.isAcknowledged();
        System.out.println("创建索引:" + acknowledged);

        esClient.close();

原因是请求没有发送用户名和密码,没有通过验证导致的。

  1. 解决方法,使用RestClientBuilder,将ES登录用户名和密码添加进去,修改如下:
java 复制代码
RestClientBuilder build = RestClient.builder(new HttpHost("localhost",9200,"http"));
        CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
        credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials("elastic", "e5nTeAjoHTTPg--WgM49")); //用户名和密码
        build.setHttpClientConfigCallback((HttpAsyncClientBuilder httpAsyncClientBuilder) -> httpAsyncClientBuilder.setDefaultCredentialsProvider(credentialsProvider));
        RestHighLevelClient esClient = new RestHighLevelClient(build);

        CreateIndexRequest createIndexRequest = new CreateIndexRequest("user");
        CreateIndexResponse createIndexResponse = esClient.indices().create(createIndexRequest, RequestOptions.DEFAULT);
        boolean acknowledged = createIndexResponse.isAcknowledged();
        System.out.println("创建索引:" + acknowledged);

        esClient.close();

顺利解决:

  1. 还有一种解决方法,就是取消身份验证(不推荐)。

进入ES的config文件,找到并打开文件elasticsearch.yml。

找到以下配置,并改为false,如下:

复制代码
# Enable security features
xpack.security.enabled: false

xpack.security.enrollment.enabled: false
相关推荐
huashengzsj5 分钟前
2026年WordPress建站公司推荐:哪些服务商更适合长期运营网站?
大数据·人工智能·云计算
Elasticsearch22 分钟前
Agent 上岗做日志检测,日志赛道降本的叙事快讲不下去了
elasticsearch
BD_Marathon22 分钟前
Hadoop组成
大数据·hadoop·分布式
whcyhhh23 分钟前
头歌实践教学平台:数据科学与大数据技术导论(十八4)
大数据·开发语言·python
红色星际26 分钟前
新石器走进无人配送车下半场
大数据·人工智能
FII工业富联科技服务39 分钟前
工业AI Agent从单点应用到规模化落地:多智能体、Agentic Layer与制造运营协同架构解析
大数据·人工智能
时代分流42 分钟前
供应商管理系统:SRM数字化采购协同方案
大数据·人工智能
腾讯云大数据1 小时前
腾讯云大数据接入 WorkBuddy:为 Agent 平台引入 Data+AI 专业智能体
大数据·人工智能·云计算·腾讯云
ZDGJ60991 小时前
国际期货科普 | 打开全球投资新视野
大数据
Elastic 中国社区官方博客1 小时前
从告警到根因仅需 3 分钟:使用 Elastic Agent Builder 实现自动化根因分析
运维·数据库·人工智能·elasticsearch·自动化·可用性测试