SpringBoot项目application.yml文件数据库配置密码加密的方法
在Spring boot开发中,需要在application.yml文件里配置数据库的连接信息,或者在启动时传入数据库密码,如果不加密,传明文,数据库就直接暴露了,相当于"裸奔"了,因此需要进行加密处理才行。
使用@SpringBootApplication注解启动的项目,只需增加maven依赖
我们对信息加解密是使用这个jar包的:
编写加解密测试类:
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数据库加密内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Spring 中的 Service 有多个实现类如何注入(多种方式)
这篇文章主要介绍了Spring 中的 Service 有多个实现类如何注入,本文通过多种方式结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-07-07Java语言实现简单FTP软件 FTP远程文件管理模块实现(10)
这篇文章主要为大家详细介绍了Java语言实现简单FTP软件,FTP远程文件管理模块的实现方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-04-04
最新评论