SpringCloud Config配置加密解密用法解析
1. Java8自帶無限制加密解密演算法,不需要再引入網上說的那倆包
2. 加密解密是SpringCloud Config的功能,所以必須先啟動一個SCC專案
3. 在SCC專案的配置檔案中新增加密解密的鑰匙: 金鑰----> encrypt.key=xuejian
4. 啟動SCC專案,通過http://localhost:port/encrypt/status檢查加密解密功能是否能用,如果能用,會返回OK,否則會返回一個不能用的提示
5. 啟動一個使用SpringCloud Config配置的普通微服務,在bootstrap.properties中新增連線配置中心和目標配置的屬性
紅色是SpringCloud Config進行解密的標誌,藍色是要解密的密文,綠色是金鑰(這個金鑰在SCC專案和普通微服務專案都必須配置)
spring.application.name=appForClient
spring.cloud.config.uri=http://localhost:2000
spring.cloud.config.label=dev
spring.cloud.config.profile={cipher}dc945ee51bcd7ea4135a256df7fc0149f47fd6cd83aa53f2cba43c1b063a1230
encrypt.key=xuejian
如何獲取密文呢?
啟動SCC專案後,通過http://localhost:port/encrypt請求對明文加密即可獲取
獲取後將"{cipher}+密文"替換明文即可
當啟動普通微服務時,微服務首先會根據自身配置的金鑰去解析自身配置的密文,然後通過解析得到的明文配置連線到配置中心(即普通微服務也可以根據金鑰解密)
當從配置中心載入到的配置中也有密文時,此時需要SCC配置的金鑰去解密
由上可知: 普通微服務和配置中心專案都可以進行解密加密,但要將明文轉為密文,必須由配置中心來搞.
綜上:
在加密解密功能上,配置中心與普通微服務的區別:
相同點: 都可以根據金鑰解密配置(解密功能)
不同點: 配置中心還可以根據不同金鑰為同一明文生成不同密文(轉換功能)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。