Druid 加密数据库密码 (仅需两步)
2017-09-22 00:00
381 查看
摘要: Druid 加密数据库密码 ,以免明文展示容易被查看到
1、首先通过工具类生成加密后的密文,publicKey 及解密后的明文,代码如下:
2、数据源配置解密方式:
1、首先通过工具类生成加密后的密文,publicKey 及解密后的明文,代码如下:
import com.alibaba.druid.filter.config.ConfigTools; /** * desc 数据库密码加解密 * * @author dyl Aug 23, 2017 */ public class EncryptDruidPwd { public static void main(String[] args) throws Exception { // 密码明文 String[] passwords = { "ttt123_321", "tt123_321" }; String[] users = { "admin321", "admin123", }; // 用私钥加密后的密文 for (int i = 0; i < passwords.length; i++) { String[] keyPair = ConfigTools.genKeyPair(1024 + i * 5); // 私钥 String privateKey = keyPair[0]; // 公钥 String publicKey = keyPair[1]; String encpwd = ConfigTools.encrypt(privateKey, passwords[i]); System.out.println(users[i] + ".publicKey=" + publicKey); System.out.println(users[i] + ".password=" + encpwd); // 解密 String decryptPassword = ConfigTools.decrypt(publicKey, encpwd); System.out.println(names[i] + "decryptPassword:" + decryptPassword); System.out.println("----------------分隔符---------------------"); } } }
2、数据源配置解密方式:
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"> <property name="driverClassName" value="com.mysql.jdbc.Driver" /> <property name="url" value="${ji.jdbcUrl}" /> <property name="username" value="${ji.user}" /> <property name="password" value="${ji.password}" /> <!-- 配置初始化大小、最小、最大 --> <property name="initialSize" value="5" /> <property name="minIdle" value="2" /> <property name="maxActive" value="200" /> <property name="connectionInitSqls" value="set names utf8mb4;" /> <!-- 配置获取连接等待超时的时间 --> <property name="maxWait" value="60000" /> <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 --> <property name="timeBetweenEvictionRunsMillis" value="60000" /> <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 --> <property name="minEvictableIdleTimeMillis" value="300000" /> <property name="validationQuery" value="SELECT 'x'" /> <property name="testWhileIdle" value="true" /> <property name="testOnBorrow" value="false" /> <property name="testOnReturn" value="false" /> <!-- 配置解密的所用到的publicKey --> <property name="filters" value="config" /> <property name="connectionProperties" value="config.decrypt=true;config.decrypt.key=${ji.publicKey}" /> </bean>
相关文章推荐
- druid 数据库密码加密
- springbootMaven项目Druid数据库密码加密
- Druid实现数据库连接用户密码加密
- druid-1.0.13 数据库配置文件密码加密
- Druid 数据库用户密码加密 代码实现
- Druid执行命令加密数据库密码
- Jfinal+Druid实现数据库密码加密部署
- Druid实现数据库连接用户密码加密
- druid 1.0.16数据库密码加密
- druid执行命令加密数据库密码
- druid 数据库密码加密
- DruidDataSource 数据库密码加密
- druid 数据库密码加密
- druid数据库账号密码加密解密
- druid 数据库密码加密
- Druid配置数据库用户密码加密
- 利用druid的驱动包加密数据库密码
- druid数据库密码加密
- Spring+mysql+druid对数据库连接的用户名密码加密
- 使用druid对数据库密码加密