SpringBoot配置文件中数据库密码加密

139 字
1 分钟
SpringBoot配置文件中数据库密码加密

jasypt 加解密 (亲测)#

  • 引入maven依赖

    <!--数据库账号密码加密-->
    <dependency>
    <groupId>com.github.ulisesbocchio</groupId>
    <artifactId>jasypt-spring-boot-starter</artifactId>
    <version>3.0.3</version>
    </dependency>
  • 配置文件设置盐

    jasypt:
    encryptor:
    password: salt(混淆的盐 不是数据库密码)
  • 添加测试用例

    @Autowired
    StringEncryptor encryptor;
    @Test
    public void jacketEncrypt() {
    //加密
    String username = encryptor.encrypt("root");
    String password = encryptor.encrypt("root");
    System.out.println("name 密文: " + username);
    System.out.println("password 密文: " + password);
    //解密
    String decryptUsername = encryptor.decrypt(username);
    String decryptPassword = encryptor.decrypt(password);
    System.out.println(decryptUsername + ":" + decryptPassword);
    }
  • 执行结果

    username 密文: 4JemeydjoOcwvCq2o2bDbzwcHxQr/sH+oO+7A6+r7cEnyNDTPbyRrMrZIVqDekmU
    password 密文: xxdvFS4od9nOskblLD7nyfjt5WEQ2V/8kMHxPfX8LrzMP4h0s6K9Z6XTlYtdwCHv
    root:root
  • 修改配置文件

    spring:
    datasource:
    url: jdbc:xxxx
    username: ENC(4JemeydjoOcwvCq2o2bDbzwcHxQr/sH+oO+7A6+r7cEnyNDTPbyRrMrZIVqDekmU)
    password: ENC(xxdvFS4od9nOskblLD7nyfjt5WEQ2V/8kMHxPfX8LrzMP4h0s6K9Z6XTlYtdwCHv)
  • 启动类添加注解开启加解密功能

    @EnableEncryptableProperties

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

SpringBoot配置文件中数据库密码加密
https://tianch.com.cn/posts/tutorials/springboot-pei-zhi-wen-jian-zhong-shu-ju-ku-mi-ma-jia-mi/
作者
田小晖
发布于
2021-06-24
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
田小晖
记录技术成长,分享运维与开发经验。
公告
分类
标签
站点统计
文章
134
分类
9
标签
29
总字数
203,962
运行时长
0
最后活动
0 天前
站点信息
构建平台
Cloudflare Pages
博客版本
Firefly v6.15.6
文章许可
CC BY-NC-SA 4.0