运维开发网

Springboot项目对数据库用户名密码实现加密过程解析

运维开发网 https://www.qedev.com 2020-12-23 22:25 出处:网络 作者: 丶sky丶fx
pom.xml文件中引入如下内容 <dependency> <groupId>com.github.ulisesbocchio</groupId>

pom.xml文件中引入如下内容

<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>1.16</version>
</dependency>

保存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了!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

扫码领视频副本.gif

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号