Nacos配置內容加密實現過程
一、背景
因為項目中安全檢查的要求,需要將nacos配置的內容進行加密,所以需要實現將配置內容加密處理,這里引入nacos-aes-encryption-plugin插件來完成這一需求。
二、實現步驟
1. 重新編譯nacos服務端
1.1 從github下載Nacos源碼,地址https://github.com/alibaba/nacos
1.2 在config模塊中引入插件:
<dependency>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-aes-encryption-plugin</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>1.3 服務端編譯:
cd nacos && mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U
其中,-Prelease-nacos 是編譯參數,表示編譯的是 Nacos release 版本。-U參數表示強制更新依賴。
1.4 編譯完成后,會在distribution/target目錄下生成nacos-server-x.x.x.zip包,可作為nacos的版本包直接使用。
1.5 使用上面的包重新部署nacos
2. Nacos頁面配置
進入Nacos控制臺,配置內容正常處理,配置名以"cipher-aes-"開頭。
例:cipher-aes-user
3. SpringBoot應用服務端(后端服務)
3.1 在服務中引入
<dependency>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-aes-encryption-plugin</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>3.2 將項目的yml文件中的"spring.cloud.nacos.config.prefix"改為"cipher-aes-"開頭。
例:cipher-aes-user。
4. 結果
上述配置完之后,在數據庫端看到的配置內容就是加密后的內容,但是在應用端和web端讀取的時候都是解密后的明文。

總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Java中Scanner類基礎使用、可能遇到的問題及注意事項
Scanner類是一個用于Scanner指的是java.util包下的Scanner類,可以接收控制臺輸入的數據,這篇文章主要介紹了Java中Scanner類基礎使用、可能遇到的問題及注意事項的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2025-04-04

