您的位置:首页技术文章
文章详情页

SpringBoot项目application.yml文件数据库配置密码加密的方法

【字号: 日期:2023-05-27 11:38:16浏览:2作者:猪猪

在Spring boot开发中,需要在application.yml文件里配置数据库的连接信息,或者在启动时传入数据库密码,如果不加密,传明文,数据库就直接暴露了,相当于'裸奔'了,因此需要进行加密处理才行。

使用@SpringBootApplication注解启动的项目,只需增加maven依赖

SpringBoot项目application.yml文件数据库配置密码加密的方法

我们对信息加解密是使用这个jar包的:

SpringBoot项目application.yml文件数据库配置密码加密的方法

编写加解密测试类:

package cn.linjk.ehome; import org.jasypt.encryption.pbe.StandardPBEStringEncryptor;import org.jasypt.encryption.pbe.config.EnvironmentPBEConfig;import org.junit.Test; public class JasyptTest { @Test public void testEncrypt() throws Exception { StandardPBEStringEncryptor standardPBEStringEncryptor = new StandardPBEStringEncryptor(); EnvironmentPBEConfig config = new EnvironmentPBEConfig(); config.setAlgorithm('PBEWithMD5AndDES'); // 加密的算法,这个算法是默认的 config.setPassword('test'); // 加密的密钥 standardPBEStringEncryptor.setConfig(config); String plainText = '88888888'; String encryptedText = standardPBEStringEncryptor.encrypt(plainText); System.out.println(encryptedText); } @Test public void testDe() throws Exception { StandardPBEStringEncryptor standardPBEStringEncryptor = new StandardPBEStringEncryptor(); EnvironmentPBEConfig config = new EnvironmentPBEConfig(); config.setAlgorithm('PBEWithMD5AndDES'); config.setPassword('test'); standardPBEStringEncryptor.setConfig(config); String encryptedText = 'ip10XNIEfAMTGQLdqt87XnLRsshu0rf0'; String plainText = standardPBEStringEncryptor.decrypt(encryptedText); System.out.println(plainText); }}

加密串拿到了,现在来修改application.yml的配置:

我们把加密串放在ENC({加密串})即可。

SpringBoot项目application.yml文件数据库配置密码加密的方法

启动时需要配置 秘钥

将秘钥加入启动参数

SpringBoot项目application.yml文件数据库配置密码加密的方法

SpringBoot项目application.yml文件数据库配置密码加密的方法

到此这篇关于SpringBoot项目application.yml文件数据库配置密码加密的方法的文章就介绍到这了,更多相关SpringBoot application.yml数据库加密内容请搜索好吧啦网以前的文章或继续浏览下面的相关文章希望大家以后多多支持好吧啦网!

标签: Spring
相关文章: