SpringBoot配置文件中数据库密码加密
SpringBoot配置文件中数据库密码加密1、jasypt 加解密1.1、pom.xml依赖导入1.2、application.yml配置文件编写1.3、生成加密后的密匙测试用例1.4、数据源配置文件修改SpringBoot项目经常将连接数据库的密码明文放在配置文件里,安全性就比较低一些,尤其在一些企业对安全性要求很高,因此我们就考虑如何对密码进行加密。1、jasypt 加解密jasypt 是一
·
SpringBoot配置文件中数据库密码加密
SpringBoot项目经常将连接数据库的密码明文放在配置文件里,安全性就比较低一些,尤其在一些企业对安全性要求很高,因此我们就考虑如何对密码进行加密。
1、jasypt 加解密
jasypt 是一个简单易用的加解密Java库,可以快速集成到 Spring Boot 项目中,并提供了自动配置,使用非常简单。
1.1、pom.xml依赖导入
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>2.1.1</version>
</dependency>
1.2、application.yml配置文件编写
#jasypt加密的盐值
jasypt:
encryptor:
password: pwd
1.3、生成加密后的密匙测试用例
package com.dws.elasticsearch;
import org.jasypt.encryption.StringEncryptor;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
/**
* @author:
* @date: 2021/9/28 16:42
* @description:
*/
@SpringBootTest(classes = ElasticsearchApplication.class)
@RunWith(SpringRunner.class)
public class testPassWord {
@Autowired
private StringEncryptor encryptor;
@Test
public void test1() {
String password = encryptor.encrypt("123456");
System.out.println(password);
}
}
执行结果:
7bkF4n0HSno9j54cU9NbnA==
1.4、数据源配置文件修改
spring:
datasource:
druid:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://ip:3306/xxx?useUnicode=true&serverTimezone=GMT&characterEncoding=utf8&useOldAliasMetadataBehavior=true&allowMultiQueries=true
username: root
#使用ENC对数据库密码密文进行标识,ENC( )是固定写法,( )里面是加密后的信息
password: ENC(7bkF4n0HSno9j54cU9NbnA==)
更多推荐
已为社区贡献1条内容
所有评论(0)