SpringBoot配置文件加密之Jasypt
在部署spring服务时,有时候我们为了安全起见,需要对配置文件中数据库密码,敏感信息等进行加密。可以使用Jasypt进行实现
一,在pom文件中引进依赖
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot</artifactId>
</dependency>
二,在启动类上添加注释
@SpringBootApplication()
@EnableEncryptableProperties
public class ApiServerApplication {
public static void main(String[] args) {
SpringApplication.run(ApiServerApplication.class, args);
}
}
三,对已知的数据库密码进行加盐加密
新建一个类,执行以下程序,获得明文密码和盐生成的密文
public static void main(String[] args) {
BasicTextEncryptor textEncryptor = new BasicTextEncryptor();
textEncryptor.setPassword("hhh2023"); // 盐
String password = textEncryptor.encrypt("密码");
System.out.println(password);
}
四,在配置文件中将明文密码改为密文
spring:
datasource:
password: ENC(密文,上面打印的password)