druid 多数据库 密码加密配置

一、配置文件:application-druid.yml

# 数据源配置
spring:
    datasource:
        type: com.alibaba.druid.pool.DruidDataSource
        druid:
            config:
                enabled: true
# 主库数据源
            master:
                url: jdbc:mysql://……………
                username: root
                password: K/Y6oK4ywo57m………………1zAGqiD8bewidbmKA+IBnzA==
# java -cp .\druid-1.2.1.jar com.alibaba.druid.filter.config.ConfigTools 生成密码
#DruidEncryptorUtils类生成密码和公钥,之后开启druid:filter:config:enabled=true
                publicKey: MFwwDQYJKoZIhvc………………W/aRWx6BKtTyZzERkCAwEAAQ==
                connectionProperties: config.decrypt=true;config.decrypt.key=${spring.datasource.druid.master.publicKey}
            slave:
# 从数据源开关/默认关闭
                enabled: false
                url: 
                username:
                password:

…………

#  启动加密数据库密码
                config:
                    enabled: true

二、生成密文 / 明文转密文

D:\>java -cp .\druid-1.2.1.jar com.alibaba.druid.filter.config.ConfigTools admin
privateKey:MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAgpSFQQcH8FXxSudJrerj/LWKhH7mJv9Dd59q19hyaQYMV0l/RRd0W5KtSjRO5FvruydaKGcrg/v4hGuP+jJG/wIDAQABAkAlP8bPaPkLxwhg7J9o/FNy+Dp+V1DCGRke25v33Keua343lW98HpgchlJcmOHXicTd9/7onQuwaSwlm/xv/c1JAiEA7r+6Qc7+bvSasUcLFyGAjAtXpUzInYBmJa8speyMU9sCIQCMA+9Fi+yRnz44TlJAUFfwISB/85jorCP0WA7V85mUrQIgN9BYobPbZWMHmvQJ0rGBVLv+FGW77J4swxiNroh7UcsCIQCGnvHbiGF40gdc09E5jQZAF1nMLEcEzx3yvQfmpkUwMQIgQO5+Xo3RlSMMNYilFOCUUFWr9X0xu732jWrZPHQJrv0=
publicKey:MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAIKUhUEHB/BV8UrnSa3q4/y1ioR+5ib/Q3efatfYcmkGDFdJf0UXdFuSrUo0TuRb67snWihnK4P7+IRrj/oyRv8CAwEAAQ==
password:ANTBniQbDmwWmFZEsafuqySzfJpOY7bQzbHcgWh85KecJC2voMlgzeq9sz7fV6wYDL7i0KEe2+nYgyYoI4K38Q==

三、解密验证 / 密文转明文

 pom.xml

<!--        配置文件密码加密-->
<dependency>
    <groupId>com.github.ulisesbocchio</groupId>
    <artifactId>jasypt-spring-boot-starter</artifactId>
    <version>3.0.3</version>
</dependency> 

EncTool.java

public class EncTool {

    public static void main(String[] args) throws Exception {
        String decrypt = ConfigTools.decrypt("publicKeyText" ,"cipherText");
        System.out.println(decrypt);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值