当前位置:   article > 正文

Springboot - druid 数据库密码加密_spring.datasource.druid.password 加密

spring.datasource.druid.password 加密

yml配置

  1. jasypt:
  2. encryptor:
  3. password: U3buwRJdQ2023
  4. algorithm: PBEWithMD5AndDES
  5. # 数据源配置
  6. spring:
  7. datasource:
  8. type: com.alibaba.druid.pool.DruidDataSource
  9. driverClassName: com.mysql.cj.jdbc.Driver
  10. druid:
  11. # 主库数据源
  12. master:
  13. url: yourUrl
  14. username: yourUsername
  15. password: AfTgQgleg==
  16. connectionProperties: config.decrypt=true;config.decrypt.key=MFwwDEEAAQ==
  17. # 数据库过滤器
  18. filter:
  19. config:
  20. enabled: true

password:为你加密后的密码

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

生成数据

方法一

  1. public class DruidEncryptorUtils {
  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. }

方法二

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

# 加密方法
# java -cp druid-1.1.22.jar com.alibaba.druid.filter.config.ConfigTools ${youPassword}
# connectionProperties: config.decrypt=true;config.decrypt.key=${publicKey}
# password: ${password}

完整配置

  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博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/天景科技苑/article/detail/844194
推荐阅读
相关标签
  

闽ICP备14008679号