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依賴

image.png

3.在jar包所在目錄下打開dos窗口

image.png

4.在dos窗口輸入druid的命令,點擊回車執行

image.png

  • yxkj_123456爲未加密的數據庫密碼
  • privateKey爲生成的私鑰
  • publicKey爲生成的公鑰
  • password爲加密後的數據庫密碼

以上的公鑰和密碼鑰,要特別注意,解密的話是用這兩個進行解密sql

5.打開項目的yml文件,將生成的密碼鑰替換以前的yml裏的數據庫密碼,添加public-key在datasource下,填寫生成的密碼公鑰,添加druid的配置,標明公鑰,解密

image.png

6.啓動項目進行測試,能夠看到,數據庫已經鏈接成功。

image.png

相關文章
相關標籤/搜索