Druid数据源配置文件加密

本文介绍在开发应用中如何通过Druid工具对数据库配置文件中的敏感信息(如用户名和密码)进行加密,以提高安全性,包括使用ConfigTools加密/解密、重写DruidDataSource方法和创建自定义安全数据源的过程。
摘要由CSDN通过智能技术生成

1. 背景
我们在开发应用时,需要连接数据库,一般把数据库信息放在一个属性配置文件中,比如dbconfig.properties,具体的内容大概是这样:
#MySql数据库配置
connection.url=jdbc:mysql://127.0.0.1:3306/test?useUnicod=true&characterEncoding=UTF-8
connection.username=root
connection.password=123456
里面用明文的方式存储着数据库的敏感信息用户名username和密码password,这是不好的行为,容易产生安全问题。那我们如何实现加密存储呢?实现方式有多种,下面将采用一种简单便捷的方案。
2. 实现原理
实现原理其实很简单,配置文件存储加密后的用户名和密码,重写Druid数据源的两个方法setUsername(String username)和setPassword(String password)对信息解密。
3. 实现方式
3.1 写加密工具
首先得有一个加密工具,具有加解密功能,这里为了方便直接使用Druid中的工具类com.alibaba.druid.filter.config.ConfigTools。使用其中的encrypt(String plainText)方法和decrypt(String cipherText)方法采用默认的公私玥加解密。
3.2 加密配置文件
调用encrypt(明文)方法获取密文配置到属性文件中去:
#MySql数据库配置
connection.url=jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8
c

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值