config-1

本文介绍了如何使用Spring Cloud Config作为配置管理方案,并详细阐述了配置文件的整合步骤,包括在服务的application.yml或bootstrap.yml中设置服务名称、profile以及Config服务器的位置。同时,文章讨论了如何结合Git进行配置存储,并展示了如何保护敏感信息,如通过引入Java加密扩展(JCE),使用{cipher}标识加密属性,以及在客户端解密配置。此外,还提到了在服务端配置不解密属性的策略,并指导如何添加对称密钥和Spring-security-rsa库来增强安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

配置管理方案

项目名称描述特点
Etcd使用go开发的开源项目,用于服务发现和键值管理,使用raft协议作它的分布式计算模型1非常快和可伸缩.2.可分布式.3.命令行驱动,易于搭建和使用
Eureka由Netflix开发,久经测试,用于服务发现和键值管理1.分布式键值存储,2.灵活,需要时间设置3.提供开箱即用的动态客户端刷新
Consul由Hashicorp开发,特性上类似于Eureka和Etcd,分布式计算模型使用了不同的算法(swim协议)快速,2.提供本地服务发现功能,可以直接和DNS集成3.没有提供开箱即用的动态客户端刷新
ZooKeeper经常用作访问键值数据的配置管理解决方案1.最古老的解决方案2.使用最为复杂.3.可用作配置管理,但只有其他架构中已经使用了Zookeeper的时候才考虑使用
SpringCloudConfig提供不同后端支持的通用配置管理方案1.非分布式键值存储2.提供了对Spring 和非Spring服务对紧密集成.

Spring cloud config pom 配置文件

        <!-- dependencyManageMent-->        
         <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-dependencies</artifactId>
        <version>Camden.SR5</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
    </dependencyManagement>
    <!--添加依赖-->
       <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-config-server</artifactId>
    </dependency>
    
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-config</artifactId>
    </dependency>

spring cloud config 和Spring boot 服务整合
在服务的application.yml或bootstrap.yml 中配置

  • 服务的名称
  • 服务的profile
  • config服务器的位置

使用spring cloud 配置服务器和git

  • spring.cloud.config.git.uri
  • spring.cloud.config.git.searchpath–> git仓库中的相对路径

敏感信息的保护

  • 引入不限长度的java 加密扩展–> JCE
  • 所有已加密的属性上加上{cipher},表示告诉spring cloud 它正在处理已加密的值.
  • 配置微服务以在客户端使用加密
  1. 配置Spring cloud config 不要在服务端解密属性–> spring.cloud.config.server.encrypt
  2. 在服务上加上对称密钥
  3. 将Spring-security-rsa JAR 添加到服务的pom中
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值