springcloud的config加密与解密

ps:本人是北大青鸟课工场学生,以下为课工场素材
准备工作
默认情况下JRE中自带了JCE(Java Cryptography Extension),但是默认是一个有限长度的版本,这里需要一个不限长度的JCE,这个JCE可以在Oracle官网下载,下载之后解压,可以看到如下三个文件:

需要将这里的两个jar包拷贝到的jdk安装目录下,覆盖%JAVA_HOME%\jre\lib\security目录下原有的文件。
如此之后,准备工作就完成了。
对称加解密
对称加解密比较简单,直接配置密钥就可以了,在创建出来的config-server中配置密钥,但是注意这个密钥需要配置在bootstrap.properties中,另外这里还有非常重要一点:Spring Cloud的Dalston.SR3和Dalston.SR2版本在这个问题上是有BUG的,如果用这两个版本在这里测试会没有效果,应该避开使用这两个版本,配置如下:
encrypt.key=自定义一个值形成加密规则和解密规则
配置完成之后,启动config-server工程,然后访问如下地址http://localhost:服务器端口/encrypt/status,如果看到如下访问结果,表示环境搭建成功了:

此时我们就可以通过第三方工具如POSTMAN、RestClient等来访问/encrypt和/decrypt接口,比如说我要给dev这个字符加密,方式如下(我这里以POSTMAN为例,注意是POST请求):

解密方式如下:

OK,拿到加密的字符串之后,我们就可以在配置文件中使用了,还是我们昨天的配置文件,这次我这样来写:

小伙伴们注意,配置文件的值如果是以{cipher}开头,表示该值是一个加密字符,配置中心config-server在获取到这个值之后会先对值进行解密,解密之后才会返回给客户端使用。
非对称加解密
上文使用了对称加解密的方式来确保配置文件的安全性,如果使用非对称加解密的方式,安全性将会得到进一步的提高。使用非对称加密的话需要先生成密钥对,生成密钥对可以直接使用jdk中自带的keytool工具,方式如下:
keytool -genkeypair -alias config-server -keyalg RSA -keystore config-server.keystore
执行效果如图:

执行成功之后,会在命令执行目录下生成一个名为config-server.keystore的文件,将该文件拷贝到config-server的srcmainresources目录下,然后做如下配置:
encrypt.key-store.location=config-server.keystore
encrypt.key-store.alias=config-server
encrypt.key-store.password=111111
encrypt.key-store.secret=111111
OK,如此之后我们的非对称加密就配置好了,测试方式和对称加密的测试方式一致.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Spring Cloud Config配置中心有以下功能: 1. 集中管理应用程序的配置信息 2. 支持多环境配置 3. 支持加密/解密配置信息 4. 支持客户端自动更新配置信息 5. 支持版本管理 6. 支持配置信息的动态刷新 ### 回答2: Spring Cloud Config配置中心是一个可以集中管理、动态更新分布式系统中的配置的工具。它具有以下功能: 1. 集中管理:Spring Cloud Config可以将分布式系统的配置集中存储在一个地方,使得配置信息更加可控和可维护。开发人员可以通过配置服务器统一管理各个环境(如开发、测试、生产)的配置文件,减少配置文件的传统散落问题。 2. 动态更新:在分布式系统中,如果某些配置信息发生变化,传统方式需要重新部署应用程序才能使变化生效。而使用Spring Cloud Config可以实现动态更新,即可以在不重新部署应用的情况下,及时将新的配置信息更新到应用程序中,减少了重新部署对系统的影响和停机时间。 3. 版本管理:Spring Cloud Config允许配置文件进行版本管理,每次更新配置文件都会生成一个新的版本,方便进行配置的历史版本查看和回滚操作。这样可以有效地避免因为配置错误而导致的系统故障,并提高系统的可靠性和稳定性。 4. 分布式支持:Spring Cloud Config支持将配置文件分布式地存储在多个配置服务器中,可以根据需求进行水平扩展和负载均衡,确保系统可扩展性和高可用性。 5. 安全性:Spring Cloud Config提供了对配置文件的安全保护机制,开发人员可以通过对配置文件进行加密解密操作,确保配置文件的安全性,防止敏感信息泄露。 总的来说,Spring Cloud Config配置中心提供了集中管理、动态更新、版本管理、分布式支持和安全性等功能,帮助开发人员更加方便地管理和维护分布式系统的配置信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值