生成公钥,私钥,加密后密码 工具类
import com.alibaba.druid.filter.config.ConfigTools;
import java.security.NoSuchAlgorithmException;
import java.security.NoSuchProviderException;
public class DruidEncryptionUtil {
/**
* 生成druid 公钥,私钥,密码
* @param args
*/
public static void main(String[] args) {
String password = "bonc";
String[] arr = new String[0];
try {
arr = ConfigTools.genKeyPair(512);
System.out.println("privateKey:" + arr[0]);
System.out.println("publicKey:" + arr[1]);
System.out.println("password:" + ConfigTools.encrypt(arr[0], password));
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
} catch (NoSuchProviderException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
或者
java -cp druid-1.1.10.jar com.alibaba.druid.filter.config.ConfigTools 你的密码
然后在在yml文件里面配置
#druid 数据库密码加密公钥
public-key: 你的公钥
# 数据库配置
spring:
type: com.alibaba.druid.pool.DruidDataSource
druid:
driver-class-name:
url:
username:
password: 加密后的密码
connectionProperties: config.decrypt=true;config.decrypt.key=${public-key};druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
filters: stat,wall,config