十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
這篇文章主要講解了“如何實現(xiàn)JHipster Registry配置信息加密”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“如何實現(xiàn)JHipster Registry配置信息加密”吧!
成都創(chuàng)新互聯(lián)公司是一家專注于做網(wǎng)站、網(wǎng)站建設(shè)與策劃設(shè)計,魚臺網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十多年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:魚臺等地區(qū)。魚臺做網(wǎng)站價格咨詢:028-86922220
名詞 | 說明 | 備注 |
---|---|---|
對稱加密 | 最快速、最簡單的一種加密方式,加密(encryption)與解密(decryption)用的是同樣的密鑰(secret key)。 | 直接在bootstrap.yml文件中設(shè)置好key |
非對稱加密 | 非對稱加密使用了一對密鑰,公鑰(public key)和私鑰(private key)。私鑰只能由一方安全保管,不能外泄,而公鑰則可以發(fā)給任何請求它的人。 | 需要通過keytool工具生成密鑰對,并放置在Jhipster-Registry的類路徑下。 |
組件名 | 說明 | 版本 |
---|---|---|
Jhipster-Registry | 基于eureka和spring cloud config的基礎(chǔ)服務(wù)。 | v3.2.4 |
myClient | 一個客戶端服務(wù),用于測試加解密效果。 | 1.0 |
GitLab配置庫 | Jhipster-Registry引用的GitLab倉庫。所有的配置文件所在地。 |
a) 修改bootstrap.yml
spring:cloud:config:server:encrypt:enabled: true # 開啟加解密endpoint # 設(shè)置對稱密鑰encrypt:key: changeit
b) 構(gòu)建并重新啟動JhipsterRegistry服務(wù)
a) 生成密鑰對
$ keytool -genkeypair -alias configkey -keyalg \ RSA -dname "C=CN,ST=GD,L=GZ,O=YOURCOMPANY,OU=YOURCOMPANY,CN=registry" \ -keypass changeit1 -storepass changeit2 -keystore config-server.jks
b) 將config-server.jks放到j(luò)hipster-registry的src/main/resources目錄下
c) 修改bootstrap.yml
spring:cloud:config:server:encrypt:enabled: true # 開啟加解密endpointencrypt:keyStore: # 非對稱加密location: classpath:/config-server.jks # jks文件的路徑password: changeit2 # storepass,和生成密鑰時的參數(shù)值保持一致alias: configkey # alias,和生成密鑰時的參數(shù)值保持一致secret: changeit1 # keypass,和生成密鑰時的參數(shù)值保持一致
d) 構(gòu)建并重新啟動JhipsterRegistry服務(wù)
a) 通過UI使用加解密功能
http://yourdomain:8761/#/encryption
b) 通過命令行使用加解密功能
$ curl yourdomain:8761/encrypt -d <要加密的明文>$ curl yourdomain:8761/decrypt -d <想要解密的密文>
a) 加密myClient的數(shù)據(jù)庫密碼的明文信息
$ curl yourdomain:8761/encrypt -d my-secret-pw
b) 獲得數(shù)據(jù)庫密碼的密文信息
{cipher}188e937623c258e8ca180b798………………………a4eb20ff5ff3568cf
c) 保存密文到myClient的application-prod.yml
spring:datasource:username: rootpassword: '{cipher}188e937623c258e8ca180b798………………………a4eb20ff5ff3568cf' # 注意yml文件中密文要放在單引號中
d) 上傳application-prod.yml到GitLab倉庫
e) 通過jhipster-registry的管理頁面查看配置屬性password,驗證值是否已經(jīng)解密:
http://yourdomain:8761/#/config
f) 重啟myClient,驗證是否正確獲取password的值并連接到MySQL數(shù)據(jù)庫。
感謝各位的閱讀,以上就是“如何實現(xiàn)JHipster Registry配置信息加密”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對如何實現(xiàn)JHipster Registry配置信息加密這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!