一、前言
配置文件中,有些敏感数据需要加密处理。
SpringCloud config server可以结合jce实现这个功能。
二、配置
下载jce
替换java_home/jre/lib/security下的两个jar包
config server配置
配置文件添加
测试加密解密
启动eureka、config-server
可以使用curl和postman测试/enrypt、/derypt,如果加密解密结果一致就没问题。
生成证书
在文件夹找到生成的server-rsa.jks,复制到项目classpath。
配置中心
加密test
在rsatest-dev.yml添加以下内容
后的内容是待解密内容
访问配置
访问ip:port/rsatest-dev.yml
key-store配置正确情况下,可以看到profile: test
配置错误,会看到 invalid: profile:
三、拓展
1. git使用ssh登陆
因为git账号暴露也是不好的。
修改git配置
需要生成ssh
在C:\user....sh\下会生出私钥文件id_rsa和公钥id_rsa.pub,复制id_rsa.pub的内容。
然后放到github或者其他git平台的ssh。
需要在.ssh/下know_hosts文件添加公钥。
在linux上道理也是一样。
2. 另一种配置文件加密
jasypt安全框架继承springboot,可以实现配置加载前解密。
具体操作:
添加pom
demo
具体使用
配置加上
ENC()里是待解密内容。
吐槽
虽然这种只是骗小孩子的一种方式,但是一眼看不懂明文密码还行。
领取专属 10元无门槛券
私享最新 技术干货