背景
通常部署时有场景需求,将配置文件中的密码进行加密,避免明文查看密码。目前springboot默认将数据库密码及redis密码等进行明文存储。
方法
Spring boot 使用第三方库jasypt可以实现该功能。
添加依赖
1 | <dependency> |
获取加密密码
1 | java -cp jasypt-1.9.2.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input="12112112" password=jspc1234 algorithm=PBEWithMD5AndDES |
password是加密密钥
input 是待加密的密码
密码就是ENC(返回的数据)
修改启动参数
启动命令中增加
1 | -Djasypt.encryptor.password=加密密钥 |