一、Jasypt介绍
Jasypt(Java Simplified Encryption),为开发人员提供一种简单的方式来为项目增加加密功能,包括:密码Digest认证,文本和对象加密,集成hibernate、Spring Security来增强密码管理。Jasypt1.4新特性:加密属性文件、Spring Framework集成、加密Hibernate数据源配置、新的命令行工具、URL加密的Apache wicket集成、升级文档。
二、Jasypt作用
1.加密任务与应用程序。例如:加密密码、敏感信息和数据通信、创建完整检查数据的sums。
2.包括高安全性、基于标准的加密技术、可同时单向和双向加密的加密密码、文本、数字和二进制文件。
3.符合RSA标准的基于密码的加密,并提供了无配置加密工具以及新的、高可配置标准的加密工具。
4.加密属性文件(encryptable properties files)、Spring work集成、加密Hibernate数据源配置、新的命令行工具、URL加密的Apache wicket集成以及升级文档。
三、使用Jasypt对SpringBoot配置文件加密
1.pom.xml中引入依赖
1 | <!-- jasypt加密依赖 --> |
2.application.yml配置文件中配置加密所需的salt(盐)
1 | # jasypt用于数据库url及密码加密. |
3.加密
这里给配置文件中的链接数据库的用户名及密码加密。新建一个工具类JasyptUtil,main方法中加密代码示例如下:
1 | public static void main(String[] args) { |
运行main方法,结果如下:
1 | user:leMoA9uT7nBUbd/oNSzl+tzbjBRyeRGk |
将配置文件application.yml中的数据库的用户名及密码替换为上述结果。加密字符串要在ENC()中。
1 | user: ENC(leMoA9uT7nBUbd/oNSzl+tzbjBRyeRGk) |
运行项目,看数据库是否能连接上,若能正常链接,则加密成功。