SpringBoot 调用设置密码的 Elasticsearch

这篇具有很好参考价值的文章主要介绍了SpringBoot 调用设置密码的 Elasticsearch。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        最近项目中使用到的Elasticsearch是设置密码的,所以我们在Springboot中使用的过程中也需要指定密码才可以连接到Elasticsearch,特此记录便于日后查阅。

        增加 bootstrap.yaml 配置:

elasticsearch:
  schema: http
  address: 127.0.0.1:9200
  connectTimeout: 5000
  socketTimeout: 5000
  connectionRequestTimeout: 5000
  maxConnectNum: 100
  maxConnectPerRoute: 100
  UserName: elastic
  Password: 123456

        修改ElasticSearchConfiguration类 

package com.zcdsj.ElasticSearch;
import org.apache.http.HttpHost;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.client.CredentialsProvider;
import org.apache.http.impl.client.BasicCredentialsProvider;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestClientBuilder;
import org.elasticsearch.client.RestHighLevelClient;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.ArrayList;
import java.util.List;
/** * @Deacription ElasticSearch 配置 * @Author x **/
@Configuration
public class ElasticSearchConfiguration { 
    /** 协议 */
    @Value("${elasticsearch.schema:http}")
    private String schema;
    /** 集群地址,如果有多个用“,”隔开 */
    @Value("${elasticsearch.address}")
    private String address;
    /** 连接超时时间 */
    @Value("${elasticsearch.connectTimeout}")
    private int connectTimeout;
    /** Socket 连接超时时间 */
    @Value("${elasticsearch.socketTimeout}")
    private int socketTimeout;
    /** 获取连接的超时时间 */
    @Value("${elasticsearch.connectionRequestTimeout}")
    private int connectionRequestTimeout;
    /** 最大连接数 */
    @Value("${elasticsearch.maxConnectNum}")
    private int maxConnectNum;
    /** 最大路由连接数 */
    @Value("${elasticsearch.maxConnectPerRoute}")
    private int maxConnectPerRoute;
    @Value("${elasticsearch.UserName}")
    private String userName;
    @Value("${elasticsearch.Password}")
    private String password;
    @Bean(name = "restHighLevelClient")
    public RestHighLevelClient restHighLevelClient() { 
        // 拆分地址
        List<HttpHost> hostLists = new ArrayList<>();
        String[] hostList = address.split(",");
        for (String addr : hostList) { 
            String host = addr.split(":")[0];
            String port = addr.split(":")[1];
            hostLists.add(new HttpHost(host, Integer.parseInt(port), schema));
        }
        final CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
        credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(userName, password));
        // 转换成 HttpHost 数组
        HttpHost[] httpHost = hostLists.toArray(new HttpHost[]{ });
        // 构建连接对象
        RestClientBuilder builder = RestClient.builder(httpHost);
        // 异步连接延时配置
        builder.setRequestConfigCallback(requestConfigBuilder -> { 
            requestConfigBuilder.setConnectTimeout(connectTimeout);
            requestConfigBuilder.setSocketTimeout(socketTimeout);
            requestConfigBuilder.setConnectionRequestTimeout(connectionRequestTimeout);
            return requestConfigBuilder;
        });
        // 异步连接数配置
        builder.setHttpClientConfigCallback(httpClientBuilder -> { 
            httpClientBuilder.setMaxConnTotal(maxConnectNum);
            httpClientBuilder.setMaxConnPerRoute(maxConnectPerRoute);
            return httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider);
        });
        return new RestHighLevelClient(builder);
    }
}

        打开 http://127.0.0.1:8082/all/addDocument 密码访问就完成了。文章来源地址https://www.toymoban.com/news/detail-663002.html

到了这里,关于SpringBoot 调用设置密码的 Elasticsearch的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Elasticsearch/Kibana密码设置

    1.ES设置账号密码 第一步:进入ES容器 命令: docker exec -it es /bin/bash 第二步:在ES的配置文件中添加以下配置 命令: vi config/elasticsearch.yml 第三步:保存后,退出容器,重启ES 命令: docker restart es 第四步:再次进入容器 命令: docker exec -it es /bin/bash 第五步:进入容器后执行以

    2024年02月12日
    浏览(35)
  • ElasticSearch设置密码Windows

    关闭ES,修改D:ProgramFileselasticsearch-7.9.2configelasticsearch.yml配置文件 在bin目录下运行cmd,修改密码:  如果提示: future versions of Elasticsearch will require Java 11解决方法 修改D:ProgramFileselasticsearch-7.9.2binelasticsearch-env.bat  用自己的esjdk路径  重新修改密码  重启后验证 访问  弹框

    2024年02月11日
    浏览(29)
  • ElasticSearch、kibana设置账户密码;ElasticSearch对外访问

    今天在linux服务器上搭建elasticsearch索引库,但这段时间正在搞护网行动,所以elasticsearch和kibana就不能裸奔了,所以这篇文章我写了如何设置账户密码 elasticsearch 使用版本7.6.2 kibana 使用版本7.6.2 生成CA证书 bin目录下执行 然后使用刚刚生成的证书,生成p12秘钥 ,进入bin目录执行

    2024年02月02日
    浏览(40)
  • Elasticsearch集群和账号密码设置

    ubuntu 20.04 elasticsearch 8.0 服务器IP:192.168.1.63 目录elastic-master是主节点,目录elastic-node2 是从节点 系统需要新建一个用户来专门启动es,因为es不能使用root用户启动 一台服务器上装多个es来配置集群(多台也是一样的配置) 下载地址 解压刚刚下载的es,解压后我就暂时放在elast

    2024年02月02日
    浏览(48)
  • elasticSearch 设置用户名密码 && 查询

    一、设置密码 1.需要在配置文件中开启x-pack验证, 修改config目录下面的elasticsearch.yml文件,在里面添加如下内容,并重启. 2,执行设置用户名和密码的命令,这里需要为4个用户分别设置密码,elastic, kibana, logstash_system,beats_system 网上设置时出现的: 我设置密码时出现的: 其中,用

    2024年01月17日
    浏览(68)
  • elasticsearch设置用户名和密码

    1、需要在配置文件中开启x-pack验证:修改config目录下面的elasticsearch.yml文件,在里面添加如下内容 2、重启es 3、进入es的安装根目录bin下找到elasticsearch-setup-passwords、并执行如下命令 4、执行elasticsearch-setup-passwords interactive命令后,这里需要为4个用户分别设置密码,elastic, kib

    2024年02月02日
    浏览(66)
  • elasticsearch-head如何连接设置密码的elasticsearch

    先修改配置,在elasticsearch.yml文件中加入以下配置 重启es 启动es-head 访问es-head的url要变动 原来是http://IP:9100 现在因为加密了,所以要做身份验证,格式:http://IP:9100/?auth_user=用户名auth_password=密码 通过该url访问es-head,然后注正常填写es的地址即可 通过以上步骤就能成功连接加

    2024年02月11日
    浏览(48)
  • elasticsearch6.6.0设置访问密码

    首先破解 x-pack-core-6.6.0.jar 破解的方式大家可以参考 https://codeantenna.com/a/YDks83ZHjd 中5.破解x-pack 这部分 , 也可以直接下载我编译好的 https://download.csdn.net/download/iBuDongIt/88748782 下载后解压替换 elasticsearch-6.6.0/modules/x-pack-core/x-pack-core-6.6.0.jar即可 注意 : 先切换到 elasticsearch 所属的

    2024年01月17日
    浏览(37)
  • elasticsearch7设置用户名和密码

    windows ,elasticsearch 在elasticsearch.yml中添加 xpack.security.enabled: true xpack.security.transport.ssl.enabled: true 在es的bin目录下命令行执行:elasticsearch-setup-passwords interactive   curl -H \\\"Content-Type:application/json\\\" -XPOST -u elastic \\\'http://127.0.0.1:9200/_xpack/security/user/elastic/_password\\\' -d \\\'{ \\\"password\\\" : \\\"123456\\\" }\\\' 修

    2024年02月12日
    浏览(51)
  • Elasticsearch7.x——设置用户密码认证

    然后重启服务 接下来,我们需要启用X-Pack Security。这样才能对Elasticsearch进行更加全面的安全加固。具体操作如下: 在执行以上命令后,我们会收到弹出框提示。根据提示输入启用密码后,可以开始设置各种角色的密码,包括 elastic,apm_system,kibana,kibana_system,logstash_syste

    2024年02月04日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包