SpringBoot使用jasypt加解密密码的实现方法(二)
作者:自行车上的程序员 时间:2021-10-15 14:16:46
在我们的服务中不可避免的需要使用到一些秘钥(数据库、redis等)
开发和测试环境还好,但生产如果采用明文配置讲会有安全问题,jasypt是一个通用的加解密库,我们可以使用它。
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>2.1.1</version>
</dependency>
配置文件:
# 加密的密钥
# 测试环境可以采用在配置文件中配置
# 生产环境建议采用启动参数的形式传入
# 其他配置参数参考:com.ulisesbocchio.jasyptspringboot.properties.JasyptEncryptorConfigurationProperties
jasypt.encryptor.password=you salt
# 解密得到原始密码
spring.datasource.password= ENC(密文)
那密文怎么来的呢?
@Autowired
StringEncryptor stringEncryptor;
@Test
public void encrypt() {
System.out.println("PWD: " + stringEncryptor.encrypt("yourpassword"));
}
public static void main(String[] args) {
BasicTextEncryptor textEncryptor = new BasicTextEncryptor();
//加密所需的salt(盐)
textEncryptor.setPassword("G0CvDz7oJn6");
//要加密的数据(数据库的用户名或密码)
String username = textEncryptor.encrypt("root");
String password = textEncryptor.encrypt("root123");
System.out.println("username:"+username);
System.out.println("password:"+password);
}
jasypt默认使用StringEncryptor来进行加解密,我们也可以自定义自己的加解密类来替换它,具体用户用时请百度/google。
来源:https://www.cnblogs.com/yangzhilong/p/10881589.html
标签:SpringBoot,加解密,密码
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Java实现身份证号码验证源码示例分享
2022-12-24 03:58:50
springboot返回值转成JSONString的处理方式
2022-09-27 12:04:46
关于使用Mybatisplus自带的selectById和insert方法时的一些问题
2023-11-01 14:15:42
java 多态性详解及常见面试题
2023-03-15 18:08:49
idea输入sout无法自动补全System.out.println()的问题
2023-11-28 21:34:03
![](https://img.aspxhome.com/file/2023/3/60603_0s.jpg)
Spring中的后置处理器BeanPostProcessor详解
2023-02-24 00:50:03
springboot接收别人上传的本地视频实例代码
2023-03-22 01:55:39
spring Boot打包部署到远程服务器的tomcat中
2023-01-14 21:45:28
![](https://img.aspxhome.com/file/2023/9/62109_0s.png)
深入了解Hadoop如何实现序列化
2023-10-13 10:33:43
![](https://img.aspxhome.com/file/2023/8/62348_0s.png)
Spring Boot 集成Mybatis实现主从(多数据源)分离方案示例
2023-08-10 07:43:21
![](https://img.aspxhome.com/file/2023/5/64485_0s.png)
详解Java单元测试之Junit框架使用教程
2022-03-06 02:55:56
![](https://img.aspxhome.com/file/2023/8/61788_0s.png)
springboot自定义stater启动流程
2023-06-07 06:33:45
![](https://img.aspxhome.com/file/2023/5/65165_0s.png)
java二维数组基础知识详解
2023-03-28 11:10:54
![](https://img.aspxhome.com/file/2023/9/63999_0s.png)
Android带进度条的文件上传示例(使用AsyncTask异步任务)
2023-06-24 09:43:11
![](https://img.aspxhome.com/file/2023/4/72624_0s.png)
C语言字符串另类用法的实现
2023-06-19 02:05:25
SpringBoot整合Shiro框架,实现用户权限管理
2021-10-27 00:03:02
Java如何在临界区中避免竞态条件
2022-11-02 09:39:29
解析Mybatis SqlSessionFactory初始化原理
2022-07-09 04:24:05
![](https://img.aspxhome.com/file/2023/4/62084_0s.jpg)
Java基于享元模式实现五子棋游戏功能实例详解
2023-07-23 16:20:18
![](https://img.aspxhome.com/file/2023/4/57714_0s.png)
java property配置文件管理工具框架过程详解
2023-10-12 04:35:50