Springboot 整合druid 数据库密码加密 超简单配置

1、工程的pom.xml中加入druid starter:


    com.alibaba
    druid-spring-boot-starter
    1.1.10

2、工程的application.yml中加入相关配置:

public-key: MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAIu+KSyVgrHeq7VRhuP2FBR4cDkYK8q8zc/uglpSOxCet0zwatmLxQXGWbAR6DoHop5vqGomyKAukLQk0rk4SskCAwEAAQ==
spring:
    datasource:
        type: com.alibaba.druid.pool.DruidDataSource
        druid:
            url: jdbc:postgresql://10.0.0.236:5432/jia_test
            username: postgres
            password: Q9ZvOSYpratpg1w8MpaRzFBsu6MrTasUICEgjsuUTEQ2TMcqlrwHoF5992jVm1Y8ZtSe3UsbnMhVUKNo8wxwuw==
            driver-class-name: org.postgresql.Driver
            initial-size: 10
            max-active: 100
            min-idle: 10
            max-wait: 60000
            pool-prepared-statements: true
            max-pool-prepared-statement-per-connection-size: 20
            time-between-eviction-runs-millis: 60000
            min-evictable-idle-time-millis: 300000
            #Oracle需要打开注释
            #validation-query: SELECT 1 FROM DUAL
            test-while-idle: true
            test-on-borrow: false
            test-on-return: false
            stat-view-servlet:
                enabled: true
                url-pattern: /druid/*
                login-username: admin
                login-password: admin
            filters: stat,wall
            filter:
                stat:
                    log-slow-sql: true
                    slow-sql-millis: 1000
                    merge-sql: false
                wall:
                    config:
                        multi-statement-allow: true
            connection-properties: config.decrypt=true;config.decrypt.key=${public-key};




jiongbo:
    token: 8483b195-d1d7-4478-a010-70c2d17b58a4


task:
    enable: true

swagger:
    enable: true

以上两部就完成了springboot 整合druid,不需要其他的任何配偶类。下面就是用alibaba druid官方提供的工具对铭文密码进行加密或者任何其他第三方的加密方法都行。记得保留公钥私钥匙

3、对数据库密码进行加密

命令行下进入druid-1.1.10.jar所在目录,执行下面的命令生成:公钥(public-key)、私钥(private-key)和加密后的密码(password)

> pwd
> E:\repository\com\alibaba\druid\1.1.10
> java -cp druid-1.1.10.jar com.alibaba.druid.filter.config.ConfigTools 你的密码

将上面生成的password 放到application.yml的【your encrypted Password】位置
将上面生成的public-key 放到application.yml的【your public key】位置

4、特别提醒加密相关的三点配置:

配置启用ConfigFilter:filters: config
是否需要解密:config.decrypt=true
指定公钥:config.decrypt.key=${public-key}
以上三点配置中第一个在:spring.datasource.druid.filters中指定,后两个在spring.datasource.druid.connectionProperties中指定。千万不要放错地了。

你可能感兴趣的:(Springboot 整合druid 数据库密码加密 超简单配置)