1.添加依赖
<dependency> <groupId>com.github.ulisesbocchio</groupId> <artifactId>jasypt-spring-boot-starter</artifactId> <version>2.1.0</version> </dependency>
2.生成密码命令
java -cp jasypt-1.9.2.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI input="abc123" password=test algorithm=PBEWithMD5AndDES
说明:
- algorithm: 加密算法
- input:加密的内容
- password: 盐值(后面解密也需使用这个盐值进行解密)
- OUTPUT: 加密之后的内容
- org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI 为加密使用的类
3.解密命令
java -cp jasypt-1.9.2.jar org.jasypt.intf.cli.JasyptPBEStringDecryptionCLI input="Kh4BPjpQIt00Af/s+1Fx8w==" password=test algorithm=PBEWithMD5AndDES
4.配置文件或者jar启动的时候添加(2种方式选一种就可以)
1.配置文件:jasypt.encryptor.password=test
2.jar包启动作为启动参数:--jasypt.encryptor.password=test
5.启动类上
@EnableEncryptableProperties
6.使用
spring.datasource.password=ENC(Kh4BPjpQIt00Af/s+1Fx8w==)
说明:ENC()
中包含的就是要解密的内容, 一般我们通过上面的命令先生成加密内容,然后在配置文件中将加密内容配置到ENC()
中。