接着上一篇文章“Spring Cloud Config(一)访问加密”,本文主要是说下内容加密,很多情况下的信息是不希望明文展示的,例如数据库用户、密码,关键信息等。
配置环境
JDK8的版本,首先需要下载JCE来替换默认的,下载地址:点击。
替换java Home路径下的jre\lib\security的文件。
注意: 不是同级目录下的jre,测试时放错位置了一直不生效,如图是jdk1.8的,而不是jre8。
配置config
在bootstrap.yml文件中配置密钥。
encrypt:
key: abc123
启动config Server,启动后可以看到暴露/encrypt和/decrypt接口。
测试加解密
使用postman进行测试,输入http://localhost:9000/encrypt/,选择post提交方式,在body中选择raw格式,并选择test格式,如图。
在文本框中输入需要加密的字符串,实例中是123123142。
返回加密后的串为:b071abfd8c5605eecae135891e1031a831b9dff5e782ae9048c53b8ef43c4f59
将地址修改为解密接口,并在文本框中输入加密后的字符串进行解密。
配置文件中使用加密
在需要使用加密的地方添加{cipher},在实际解析时会认为是加密的串自动解密。
spring:
security:
user:
//明文密码为userpwd
password: '{cipher}76afc8d07abe00abedb0de87314f48e09ec3aaeff5776896d76d79d0c0a0d2fb'
name: user
encrypt:
key: abc123
以上为本文的全部内容。