关于配置文件中秘钥信息加密实现方案的一些思考
- 背景
- 实现方案
- TODO 待实现
- 类似资料
背景
配置信息文件中(代码中), 不应该有明文的秘钥信息. 需要找一种方案去做加密处理.
实现方案
我们可以在项目指定目录上传一份加密/解密程序, 例如: jasypt-gui.jar.
启动时: 配置JVM参数, 对加密的信息进行解密. (这里可能还是会依赖流水线或服务器的环境变量, 需要指定秘钥)
password: ENC(xxxx)
程序启动:
如下是脚本片段:
- $JVM_OPT: 这里是JVM参数的变量.
dirname $0
/…/packages/xxx.jar : 这里是获取jar包的位置
nohup /usr/bin/java $JVM_OPT -jar
`dirname $0`/../packages/xxx.jar
--spring.profiles.active=$active
--jaspt.encryptor.password=$key &
TODO 待实现
- 数据库
- 正常不加密连接数据库启动
- 设置加密信息启动, 配置秘钥启动
- jar -jar 启动服务(加密) => 将来生产的启动方式.
类似资料
jasypt 加密: https://blog.csdn.net/lisheng19870305/article/details/103962528