Springboot项目对数据库用户名密码实现加密过程解析
项目对数据库用户名密码实现加密过程解析
主要介绍了Springboot项目对数据库用户名密码实现加密过程解析,文中通过示例代码介绍的非常详细,对大家
的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
pom.xml文件中引入如下内容
com.github.ulisesbocchio
jasypt-spring-boot-starter
1.16
保存pom.xml文件,更新jar
将当前路径切换到jasypt包目录下:
使用如下命令进行密码加密:
java -cp jasypt-1.9.2.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input="password" password=fantasy
algorithm=PBEWithMD5AndDES
其中input为需要加密的密码
password为加密时采用的秘钥
algorithm为加密算法,默认算法为PBEWithMD5AndDES
最后得到password加密后的密文:2p9NblOkkwNqsYhDruu5TFPR1RgkL9aH
注意:每次运行得到的结果不一样(不用好奇,都是有效的)
将加密后密码密文配置到spring boot的配置文件的数据源配置选项中
如:spring.datasource.password=ENC(2p9NblOkkwNqsYhDruu5TFPR1RgkL9aH)
在程序中获取到的spring.datasource.password会自动转换成明文内容(password)
注意:密文格式为
ENC(密文)
在java启动的环境变量中设置加密的秘钥
-Djasypt.encryptor.password=fantasy
5.启动项目,正常访问就OK了!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。