1. Java8自帶無限制加密解密算法, 不需要再引入網(wǎng)上說的那倆包
2. 加密解密是SpringCloud Config的功能, 所以必須先啟動一個SCC項(xiàng)目
3. 在SCC項(xiàng)目的配置文件中添加加密解密的鑰匙: 密鑰----> encrypt.key=xuejian
4. 啟動SCC項(xiàng)目,通過http://localhost:port/encrypt/status檢查加密解密功能是否能用,如果能用,會返回OK,否則會返回一個不能用的提示
5. 啟動一個使用SpringCloud Config配置的普通微服務(wù),在bootstrap.properties中添加連接配置中心和目標(biāo)配置的屬性
紅色是SpringCloud Config進(jìn)行解密的標(biāo)志,藍(lán)色是要解密的密文,綠色是密鑰(這個密鑰在SCC項(xiàng)目和普通微服務(wù)項(xiàng)目都必須配置)
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項(xiàng)目后, 通過http://localhost:port/encrypt請求對明文加密即可獲取
獲取后將"{cipher}+密文"替換明文即可
當(dāng)啟動普通微服務(wù)時, 微服務(wù)首先會根據(jù)自身配置的密鑰去解析自身配置的密文, 然后通過解析得到的明文配置連接到配置中心(即普通微服務(wù)也可以根據(jù)密鑰解密)
當(dāng)從配置中心加載到的配置中也有密文時,此時需要SCC配置的密鑰去解密
由上可知: 普通微服務(wù)和配置中心項(xiàng)目都可以進(jìn)行解密加密, 但要將明文轉(zhuǎn)為密文,必須由配置中心來搞.
綜上:
在加密解密功能上,配置中心與普通微服務(wù)的區(qū)別:
相同點(diǎn): 都可以根據(jù)密鑰解密配置(解密功能)
不同點(diǎn): 配置中心還可以根據(jù)不同密鑰為同一明文生成不同密文(轉(zhuǎn)換功能)
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。
原文鏈接:https://www.cnblogs.com/wangxuejian/p/13568586.html