有时我们需要对配置信息进行加密,Spring Cloud Config 也可以满足这种加密的需求,配置文件中的值配置成加密后的值,Config Client 在加载是可以自动读取。
实现加密功能,需要安装 JCE(Java Cryptography Extension),下载解压,把jar文件拷贝到 $JAVA_HOME/jre/lib/security 即可。
创建 Config Server,看一下加密状态:
http://localhost:7001/encrypt/status
没有开启加密时,会提示:
{
"description": "No key was installed for encryption service",
"status": "NO_KEY"
}
说明还没有配置加密的 key。
在配置文件中配置 encrypt.key 来开启加密。
bootstrap.properties
encrypt.key=123456
重启应用,再看一下加密状态:
{
status: "OK"
}
加密测试:
$ curl localhost:7001/encrypt -d mysecret
解密测试:
$ curl localhost:7001/decrypt -d e2d6ce0f584996cd820e56c36372183246b645d31c1157c5c646718291527639
用postman测试时,选择post方式,参数方式是 body 中的 raw 。