Bootstrap

SpringBoot配置文件加密之Jasypt

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)
;