乐趣区

关于mysql:SpringBoot使用Druid密码加密解密

什么是 Druid?

  • Druid:Druid 不仅是一个数据库连接池,还蕴含一个 ProxyDriver、一系列内置的 JDBC 组件库、一个 SQL Parser。
  • 反对所有 JDBC 兼容的数据库,包含 Oracle、MySql、Derby、Postgresql、SQL Server、H2 等。
  • Druid 针对 Oracle 和 MySql 做了特地优化,比方:
  • Oracle 的 PS Cache 内存占用优化
  • MySql 的 ping 检测优化
  • Druid 提供了 MySql、Oracle、Postgresql、SQL-92 的 SQL 的残缺反对,这是一个手写的高性能 SQL Parser,反对 Visitor 模式,使得剖析 SQL 的形象语法树很不便。
  • 简略 SQL 语句用时 10 微秒以内,简单 SQL 用时 30 微秒。
  • 通过 Druid 提供的 SQL Parser 能够在 JDBC 层拦挡 SQL 做相应解决,比如说分库分表、审计等。Druid 进攻 SQL 注入攻打的 WallFilter,就是通过 Druid 的 SQL Parser 剖析语义实现的

应用 druid 的数据库加密 / 解密操作

1.pom 文件依赖

<dependency>
 <groupId>com.alibaba</groupId>
 <artifactId>druid</artifactId>
 <version>1.1.23</version>
</dependency>

2. 在磁盘中找到下载的 druid 依赖

3. 在 jar 包所在目录下关上 dos 窗口

4. 在 dos 窗口输出 druid 的命令,点击回车执行

  • yxkj_123456 为未加密的数据库明码
  • privateKey 为生成的私钥
  • publicKey 为生成的公钥
  • password 为加密后的数据库明码

以上的公钥和明码钥,要特地留神,解密的话是用这两个进行解密

5. 关上我的项目的 yml 文件,将生成的明码钥替换之前的 yml 里的数据库明码,增加 public-key 在 datasource 下,填写生成的明码公钥,增加 druid 的配置,表明公钥,解密

6. 启动我的项目进行测试,能够看到,数据库曾经连贯胜利。

退出移动版