springboot 配置文件 用户名 密码加密

本文介绍了如何在Spring Boot项目中利用Jasypt库来增强配置文件中用户名和密码的安全性。首先,引入Jasypt的依赖,然后设置加密密码。接着,通过测试类生成加密和解密的密钥。最后,将加密后的用户名和密码写入到application.yml文件中,确保数据的安全传输和存储。
摘要由CSDN通过智能技术生成

为加强配置文件里用户名、 密码的保密性,对配置文件进行加密(application.yml)

 

 

实现步骤:

 

1. 导入jar


<dependency>

   <groupId>com.github.ulisesbocchio</groupId>

   <artifactId>jasypt-spring-boot-starter</artifactId>

   <version>3.0.3</version>

</dependency>


2. 配置加密时要使用的密钥      


在yml 文件添加:

 

jasypt:

 encryptor:

   password: erp


 

3.生成密钥


@SpringBootTest

@Slf4j

public class PasswordEncondeTest {

 

   @Autowired

   private StringEncryptor stringEncryptor;

 

   @Test

   @DisplayName(value = "加密字符串")

   public  void test(){

       log.info("password:{}",stringEncryptor.encrypt("1234561212"));

       log.info("解密:{}",stringEncryptor.decrypt("tgbGCkkwDVmbrvon02T4F3JL+viYrRNEEQOGE"));

       log.info("root password:{}",stringEncryptor.encrypt("root111"));

   }

}


4. yml配置


spring:

 datasource:

   username: ENC(52rBUePp9pBF9ic4uYA62y6NG3TujEeVaGYxMQYz6gEYuWZpWKzRdaAV8xr+8ENH)

   password: ENC(0eIfTbkKqDo7jsxrnPdBaLD8i4vKANY0L1hV+j/2V3qgAVriwgxHbvHCOwYbUB+g)

   url: jdbc:mysql://XXXX:3306/XXXX?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false&nullCatalogMeansCurrent=true

   driver-class-name:  com.mysql.cj.jdbc.Driver


参考文档:  https://www.geeksforgeeks.org/how-to-encrypt-passwords-in-a-spring-boot-project-using-jasypt/

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值