springboot 项目使用jasypt加密数据源的方法
作者:一条咸鱼青年
Jasypt 是一个 Java 库,它允许开发者以最小的努力为他/她的项目添加基本的加密功能,而且不需要对密码学的工作原理有深刻的了解。接下来通过本文给大家介绍springboot 项目使用jasypt加密数据源的问题,一起看看吧
引入maven 坐标
<dependency> <groupId>com.github.ulisesbocchio</groupId> <artifactId>jasypt-spring-boot-starter</artifactId> <version>3.0.4</version> </dependency>
配置密钥
#jasypt加密的盐值 jasypt.encryptor.password=jsuuwjnf
生成加密字符串
@Autowired StringEncryptor encryptor; @Test void test1() { String url = encryptor.encrypt("jdbc:mysql://192.168.134.135:3306/rbac?serverTimezone=UTC&useSSL=false&characterEncoding=utf8"); String name = encryptor.encrypt("root"); String password = encryptor.encrypt("12321573"); System.out.println(url); System.out.println(name); System.out.println(password); }
生成结果
修改原先的数据库连接信息
# 加密后的数据库url
spring.datasource.url=ENC(ztfgopw048yih3D45sPq4ia7v4rTDnvE+4Oye2rMyN9XBOovSlX5k3CHs1K4mBylbGGmf8blj1QPBqdSEA4UGIGLdQ1Qaj4+8kmUGrmAzXN6/Qh1CNxUpeZgghNe0HJ5NqPoGa+sSsPh9JIdhlrvhE6YYfAXTyxEpyUa5wTj0Tw=)
# 加密后的数据库用户名&&密码:
spring.datasource.username=ENC(68DX3O6HbDljx70ttga6wvtzaGnmswMNGCcq+QWtq8aih4xcTrcpDEeYHYLX+FYa)
spring.datasource.password=ENC(60cxL9lRBQAtWX+Yuk6Sb5NBwWN9juj2vCe/uUqudb9rwXClYOyO4eN4jOEVy6o5)
测试
使用加密后的数据源信息,正常连接数据库,测试请求通过。
此外,加密盐值在生成加密信息以后可以删掉,在部署spring boot项目的时候通过命令行的方式将盐值注入进去,防止数据源信息被解密。
java -jar app-0.0.1-SNAPSHOT.jar --jasypt.encryptor.password=xxxx
总结
本篇文档只是基于简单的加密角度来编写,未深入探讨,若有不足还请指正。
到此这篇关于springboot 项目使用jasypt加密数据源的文章就介绍到这了,更多相关jasypt加密数据源内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:
- springboot使用jasypt对配置文件加密加密数据库连接的操作代码
- SpringBoot整合Jasypt实现配置加密的步骤详解
- Springboot集成Jasypt实现配置文件加密的方法
- 微服务SpringBoot整合Jasypt加密工具的场景分析
- SpringBoot整合jasypt实现敏感信息的加密详解
- SpringBoot集成Jasypt敏感信息加密的操作方法
- Jasypt对SpringBoot配置文件加密
- jasypt 集成SpringBoot 数据库密码加密操作
- SpringBoot 集成 Jasypt 对数据库加密以及踩坑的记录分享
- 基于Jasypt对SpringBoot配置文件加密
- 在SpringBoot中通过jasypt进行加密解密的方法
- SpringBoot使用Jasypt对配置文件和数据库密码加密