1 生成秘钥,使用AES工具生成一个随机秘钥,然后对用户名,密码加密
//数据库用户名和密码加密工具测试类
public class MpDemoApplicationTests {@Testvoid 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==
2 修改yml 文件,这里username和password的信息前面都加上一个mpw:
spring:datasource:url: jdbc:mysql://localhost:3306/mydb-1?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghaiusername: mpw:+ABhu260VCp0dF/WhhdSEQ==password: mpw:JSXQRg//4iOQkcT+GVuMFQ==driver-class-name: com.mysql.cj.jdbc.Driver
3 配置启动参数,将解密秘钥信息填入启动配置里面的Program arguments里面或java -jar方式时
开发时,在idea中添加
--mpw.key=2b8394852e0a6ae9java -jar方式
java -jar demo_chajian_1-0.0.1-SNAPSHOT.jar --mpw.key=2b8394852e0a6ae9
参考博文
MybatisPlus配置加密数据库用户名密码_mybatis数据库账号密码加密-CSDN博客