当前位置:   article > 正文

Springboot2 集成 druid 数据库密码加密_connectionproperties: config.decrypt=true

connectionproperties: config.decrypt=true

环境:

springboot  2.1.1.RELEASE

druid 1.1.13

yml配置

  1. # 数据源配置
  2. spring:
  3. datasource:
  4. type: com.alibaba.druid.pool.DruidDataSource
  5. driverClassName: com.mysql.cj.jdbc.Driver
  6. druid:
  7. # 主库数据源
  8. master:
  9. url: yourUrl
  10. username: yourUsername
  11. password: AfTgQgleg==
  12. connectionProperties: config.decrypt=true;config.decrypt.key=MFwwDEEAAQ==

其中

password:为你加密后的密码

connectionProperties: config.decrypt=true;config.decrypt.key=你生成的公钥

 

这2个密码生成办法用下面的方法:

  1. public class Testa {
  2. public static void main(String[] args) {
  3. try {
  4. String password = "yourPassword";
  5. String[] arr = ConfigTools.genKeyPair(512);
  6. // System.out.println("privateKey:" + arr[0]);
  7. System.out.println("publicKey:" + arr[1]);
  8. System.out.println("password:" + ConfigTools.encrypt(arr[0], password));
  9. } catch (Exception e) {
  10. e.printStackTrace();
  11. }
  12. }
  13. }

还有第二种方法

在cmd控制台运行以下命令

          java -cp druid-1.1.13.jar com.alibaba.druid.filter.config.ConfigTools 你的密码

将生成的password和publicKey复制过来即可

 

最后还有一点必须配置,不然无法成功

yml配置

  1. filter:
  2. config:
  3. enabled: true # 数据库过滤器

一定要有这个!

 

附带一个完整yml配置

  1. # 数据源配置
  2. spring:
  3. datasource:
  4. type: com.alibaba.druid.pool.DruidDataSource
  5. driverClassName: com.mysql.cj.jdbc.Driver
  6. druid:
  7. # 主库数据源
  8. master:
  9. url: ***
  10. username: root
  11. password: ***
  12. connectionProperties: config.decrypt=true;config.decrypt.key=***
  13. # 从库数据源
  14. slave:
  15. # 从数据源开关/默认关闭
  16. enabled: false
  17. url:
  18. username:
  19. password:
  20. # 初始连接数
  21. initialSize: 5
  22. # 最小连接池数量
  23. minIdle: 10
  24. # 最大连接池数量
  25. maxActive: 20
  26. # 配置获取连接等待超时的时间
  27. maxWait: 60000
  28. # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
  29. timeBetweenEvictionRunsMillis: 60000
  30. # 配置一个连接在池中最小生存的时间,单位是毫秒
  31. minEvictableIdleTimeMillis: 300000
  32. # 配置一个连接在池中最大生存的时间,单位是毫秒
  33. maxEvictableIdleTimeMillis: 900000
  34. # 配置检测连接是否有效
  35. validationQuery: SELECT 1 FROM DUAL
  36. testWhileIdle: true
  37. testOnBorrow: false
  38. testOnReturn: false
  39. webStatFilter:
  40. enabled: true
  41. # 添加过滤规则
  42. url-pattern: /*
  43. # 忽略过滤格式
  44. exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"
  45. statViewServlet:
  46. enabled: true
  47. loginUsername: druid
  48. loginPassword: druid123
  49. # 设置白名单,不填则允许所有访问
  50. allow:
  51. url-pattern: /druid/*
  52. filter:
  53. stat:
  54. enabled: true
  55. # 慢SQL记录
  56. log-slow-sql: true
  57. slow-sql-millis: 1000
  58. merge-sql: true
  59. wall:
  60. config:
  61. multi-statement-allow: true
  62. config:
  63. enabled: true # 数据库过滤器

 

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号