关于配置文件中秘钥信息加密实现方案的一些思考(TODO)

关于配置文件中秘钥信息加密实现方案的一些思考

  • 背景
  • 实现方案
  • 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 待实现

  1. 数据库
  2. 正常不加密连接数据库启动
  3. 设置加密信息启动, 配置秘钥启动
  4. jar -jar 启动服务(加密) => 将来生产的启动方式.

类似资料

jasypt 加密: https://blog.csdn.net/lisheng19870305/article/details/103962528

你可能感兴趣的:(java)