SpringBoot数据库密码加密 SpringBoot中使用com.alibaba.druid.filter.config.ConfigTools对数据库密码加密的方法
在下令狐 人气:01.在本地Maven仓库中打开Powershell
2.输入命令,然后点击回车
- scotttiger为未加密的数据库密码
- privateKey为生成的私钥
- publicKey为生成的公钥
- password为加密后的数据库密码
java -cp druid-1.0.18.jar com.alibaba.druid.filter.config.ConfigTools scotttiger
3.将生成公钥和加密的数据库密码配置到SpringBoot项目中的yml配置文件中
- password处填写生成的加密后数据库密码
- connectionProperties处填写生成的公钥
druid的pom版本
master: datasource: url: jdbc:oracle:thin:@127.0.0.1:1521:orcl username: scott password: N6KokAALNve19HZGUry6kpbEVmNsbeQ+4tJwin1omv0SfUlgnhgjlTjJbIoHmHdfc7DCaay4SGgaWRkzPdZ9VA== driverClassName: oracle.jdbc.driver.OracleDriver type: com.alibaba.druid.pool.DruidDataSource #初始化连接数量,最大最小连接数 initialSize: 5 maxActive: 20 minIdle: 3 #获取连接等待超时的时间 maxWait: 600000 #超过时间限制是否回收 removeAbandoned: true #超过时间限制多长 removeAbandonedTimeout: 180 #配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 timeBetweenEvictionRunsMillis: 600000 #配置一个连接在池中最小生存的时间,单位是毫秒 minEvictableIdleTimeMillis: 300000 #用来检测连接是否有效的sql,要求是一个查询语句 validationQuery: SELECT 1 FROM DUAL #申请连接的时候检测 testWhileIdle: true #申请连接时执行validationQuery检测连接是否有效,配置为true会降低性能 testOnBorrow: false #归还连接时执行validationQuery检测连接是否有效,配置为true会降低性能 testOnReturn: false #打开PSCache,并且指定每个连接上PSCache的大小 poolPreparedStatements: true maxPoolPreparedStatementPerConnectionSize: 50 #属性类型是字符串,通过别名的方式配置扩展插件,常用的插件有: #监控统计用的filter:stat 日志用的filter:log4j 防御SQL注入的filter:wall filters: config,stat useGlobalDataSourceState: true connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000;config.decrypt=true;config.decrypt.key=MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBALll/FQBHg+49ZbH9z+jgnXzRWHGmjFOSNobfg9nrK87IIdw8qRJMmJQdexKpT38NVSrsGc119AUPtQOlSfbBbsCAwEAAQ==
druid的pom版本
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.18</version> </dependency>
加载全部内容