开辟者大年夜赛路演 | 12月16日,技巧立异,北京不见不散

为了安然,连接数据库的设备文件中,如暗码等信息须要采取密文的情势存放。
若何设备数据库暗码加密拜访数据库?
将设备文件用户相干的信息(例如:暗码)进行加密使其以密文情势存在,进行初始化连接池的时刻进行解密操作,达到成功创建连接池的目标。
接下来,我们完成如下几个连接池采取数据库密文存储的实现:
- DBCP连接池
- C3P0连接池
- Druid连接池
DBCP连接池
数据库属性文件database.properties
设备数据库属性文件, 设备数据库连接的暗码(jdbc.password)设置为加密后的值,该值可以采取AES、DES、3DES等对称加密方法实现,也可以采取RSA的加密算法存储~
- # jdbc.driverClassName
- jdbc.driverClassName=com.mysql.jdbc.Driver
- # Database URL
- jdbc.url=jdbc:mysql://127.0.0.1:3306/abc?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
- jdbc.username=abc
- jdbc.password=YpIADNvyi+/X2O33wS5E9SaEVKZgKuS70X8kgxgioEJ7+7KccS8aVmFIWndJ83NsUebDkb+w94HM3xCyjnjg4Q==
- # Time to wait for an open connection before timing out
- # (in milliseconds)
- cpool.checkoutTimeout=5000
- # Connection pool size
- cpool.minPoolSize=10
- cpool.maxPoolSize=50
- # How long to keep unused connections around(in seconds)
- # Note: MySQL times out idle connections after 8 hours(28,800 seconds)
- # so ensure this value is below MySQL idle timeout
- cpool.maxIdleTime=25200
- # How long to hang on to excess unused connections after traffic spike
- # (in seconds)
- cpool.maxIdleTimeExcessConnections=1800
- # Acquiring new connections is slow, so eagerly retrieve extra connections
- # when current pool size is reached
- cpool.acquireIncrement=10
如不雅采取DBCP连接池,那么,我们可以采取自定义连接池,持续org.apache.commons.dbcp.BasicDataSource,然后重写setPassword(String password)办法即可~
- import org.apache.commons.codec.binary.Base64;
- /**
- * @Type CustomDataSource.java
推荐阅读
开辟者大年夜赛路演 | 12月16日,技巧立异,北京不见不散 GAFA: What can we learn from their acquisition strategies?我们可以大年夜这些收购中发明更多的规律。显然,苹不雅想要在将来利>>>详细阅读
本文标题:MySQL连接配置文件密码加密及其在多种连接池上的应用
地址:http://www.17bianji.com/lsqh/39758.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示