第十四章:SpringCloud 依赖Git仓库实现配置对称加密

本文介绍如何在Spring Cloud配置服务器中使用加密和解密功能,包括安装JCE无限强度策略文件、配置加密密钥、加密配置文件中的敏感数据及通过配置服务器提供的API进行加密解密。

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

先决条件:要使用加密和解密功能,您需要安装在JVM中的全功能JCE(默认情况下不存在)。您可以从Oracle下载“Java加密扩展(JCE)无限强度管辖策略文件”,并按照安装说明进行操作(基本上将JRE lib / security目录中的2个策略文件替换为您下载的那些文件)。

要配置一个对称密钥,只需要设置encrypt.key一个秘密字符串(或者使用一个环境变量ENCRYPT_KEY使其不在纯文本配置文件中)。

server: 
  port: 8080
spring:
  cloud:
    config:
      server:
        git:
          uri: https://xxxxx    #自己的git配置仓库
          username:
          password:
encrypt:
  key: cool

如果你正在为配置客户端应用程序设置一个远程配置库,它可能包含这样的一个application.yml例如:

  • application.yml
spring:
  datasource:
    username: dbuser
    password: '{cipher}FKSAJDFGYOS8F7GLHAKERGFHLSAJ'
.properties文件中的加密值不能包含在引号中,否则该值不会被解密:
  • application.properties
spring.datasource.username:dbuser
spring.datasource.password:{cipher} FKSAJDFGYOS8F7GLHAKERGFHLSAJ

服务器也暴露/encrypt和/decrypt端点(假设这些将被保护,并且只能被授权代理访问)。如果您正在编辑远程配置文件,则可以使用配置服务器通过发送到/encrypt端点来加密值

最后我们访问 127.0.0.1:8080/master/laojiao.yml
即可显示解密后的配置内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值