引言
Jasypt 是一個Java庫,允許開發(fā)人員以很簡單的方式添加基本加密功能,而無需深入研究加密原理。利用它可以實現(xiàn)高安全性的,基于標準的加密技術(shù),無論是單向和雙向加密。加密密碼,文本,數(shù)字,二進制文件。并且可集成到Spring應(yīng)用程序中,與Spring Security集成,加密的應(yīng)用程序(即數(shù)據(jù)源)的配置等信息。
版本
- jasypt-spring-boot-starter : 2.1.0
- Spring Boot : 2.0.4
- JDK 1.9
步驟
借助jasypt-spring-boot-starter給Spring boot應(yīng)用配置加密非常簡單。
- 引入依賴
compile "com.github.ulisesbocchio:jasypt-spring-boot-starter:${jasypt}"
- 配置密碼
在application.yml中配置加密需要使用的密鑰。
jasypt:
encryptor:
password: eva
- 加密內(nèi)容
編寫一個單元測試加密你需要加密的內(nèi)容。
@Autowired
StringEncryptor stringEncryptor;
@Test
public void encrypt() {
System.out.println("PWD: " + stringEncryptor.encrypt("yourpassword"));
}
- 修改配置文件,使用
ENC包裹加密得到的密文即可。
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://localhost:3306/jxc?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
username: ENC(dghf0DZZJA+vQ95xgHz5iA==)
password: ENC(TNbKfi0lHjpfPcdepEnR5oKHikoDfVr+/amPonxytqK5u+B8Pid7k4hmlGUOhv+6QxEuB3gjJPPn7L8ishuFYym/Gr59qRO6Uf5/XiyT+3FUTujtyybxUjTyo4CO1wKe+zubp27QVYM=)