数据库密码加密
This commit is contained in:
parent
c10c3966fb
commit
780d083fcc
|
|
@ -8,7 +8,7 @@ spring:
|
|||
master:
|
||||
url: jdbc:mysql://localhost:3306/ry?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
|
||||
username: root
|
||||
password: password
|
||||
password: # 使用 com.alibaba.druid.filter.config.ConfigTools 加密后生成的 password
|
||||
# 从库数据源
|
||||
slave:
|
||||
# 从数据源开关/默认关闭
|
||||
|
|
@ -55,3 +55,7 @@ spring:
|
|||
wall:
|
||||
config:
|
||||
multi-statement-allow: true
|
||||
filters: config
|
||||
connect-properties:
|
||||
config.decrypt: true
|
||||
config.decrypt.key: # 使用 com.alibaba.druid.filter.config.ConfigTools 加密后生成的 publicKey
|
||||
|
|
|
|||
|
|
@ -4,6 +4,8 @@ import org.springframework.beans.factory.annotation.Value;
|
|||
import org.springframework.context.annotation.Configuration;
|
||||
import com.alibaba.druid.pool.DruidDataSource;
|
||||
|
||||
import java.util.Properties;
|
||||
|
||||
/**
|
||||
* druid 配置属性
|
||||
*
|
||||
|
|
@ -45,6 +47,15 @@ public class DruidProperties
|
|||
@Value("${spring.datasource.druid.testOnReturn}")
|
||||
private boolean testOnReturn;
|
||||
|
||||
@Value("${spring.datasource.druid.filters}")
|
||||
private String filters;
|
||||
|
||||
@Value("${spring.datasource.druid.connect-properties.config.decrypt}")
|
||||
private String decryptEnabled;
|
||||
|
||||
@Value("${spring.datasource.druid.connect-properties.config.decrypt.key}")
|
||||
private String decryptKey;
|
||||
|
||||
public DruidDataSource dataSource(DruidDataSource datasource)
|
||||
{
|
||||
/** 配置初始化大小、最小、最大 */
|
||||
|
|
@ -72,6 +83,17 @@ public class DruidProperties
|
|||
datasource.setTestOnBorrow(testOnBorrow);
|
||||
/** 归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。 */
|
||||
datasource.setTestOnReturn(testOnReturn);
|
||||
|
||||
try {
|
||||
/* 启用数据库密码解密 */
|
||||
datasource.setFilters(filters);
|
||||
Properties properties = new Properties();
|
||||
properties.put("config.decrypt", decryptEnabled);
|
||||
properties.put("config.decrypt.key", decryptKey);
|
||||
datasource.setConnectProperties(properties);
|
||||
} catch (Exception exception) {
|
||||
exception.printStackTrace();
|
||||
}
|
||||
return datasource;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue