1 生成秘钥,使用AES工具生成一个随机秘钥,然后对用户名,密码加密

//数据库用户名和密码加密工具测试类
public class MpDemoApplicationTests {
    @Test
    void contextLoads() {
 
        // 数据库用户名和密码
        String dbUsername="改成你的数据库连接用户名";
        String dbPassword="改成你的数据库连接密码";
 
        // 生成 16 位随机 AES 密钥
        String randomKey = AES.generateRandomKey();
        System.out.println("randomKey = " + randomKey);
 
        // 利用密钥对用户名加密
        String username = AES.encrypt(dbUsername, randomKey);
        System.out.println("username = " + username);
 
        // 利用密钥对密码加密
        String password = AES.encrypt(dbPassword, randomKey);
        System.out.println("password = " + password);
    }
 
}

假如生成信息如下,记录好,不要丢了

randomKey = 2b8394852e0a6ae9
username = +ABhu260VCp0dF/WhhdSEQ==
password = JSXQRg//4iOQkcT+GVuMFQ==

修改yml 文件,这里username和password的信息前面都加上一个mpw:

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mydb-1?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai
    username: mpw:+ABhu260VCp0dF/WhhdSEQ==
    password: mpw:JSXQRg//4iOQkcT+GVuMFQ==
    driver-class-name: com.mysql.cj.jdbc.Driver

配置启动参数,将解密秘钥信息填入启动配置里面的Program arguments里面或java -jar方式时

开发时,在idea中添加
--mpw.key=2b8394852e0a6ae9

java -jar方式
java -jar  demo_chajian_1-0.0.1-SNAPSHOT.jar --mpw.key=2b8394852e0a6ae9


参考博文
MybatisPlus配置加密数据库用户名密码_mybatis数据库账号密码加密-CSDN博客

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐