W3Cschool
恭喜您成為首批注冊(cè)用戶(hù)
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Spring Cloud Config服務(wù)器還支持Vault作為后端。
Vault是用于安全訪問(wèn)機(jī)密的工具。秘密是您要嚴(yán)格控制訪問(wèn)權(quán)限的所有內(nèi)容,例如API密鑰,密碼,證書(shū)和其他敏感信息。Vault為所有機(jī)密提供了統(tǒng)一的界面,同時(shí)提供了嚴(yán)格的訪問(wèn)控制并記錄了詳細(xì)的審核日志。
有關(guān)Vault的更多信息,請(qǐng)參見(jiàn)Vault快速入門(mén)指南。
要使配置服務(wù)器能夠使用Vault后端,您可以使用?vault
?配置文件運(yùn)行配置服務(wù)器。例如,在配置服務(wù)器的?application.properties
?中,您可以添加?spring.profiles.active=vault
?。
默認(rèn)情況下,配置服務(wù)器假定您的Vault服務(wù)器在?http://127.0.0.1:8200
?下運(yùn)行。它還假定后端的名稱(chēng)為?secret
?,密鑰為?application
?。所有這些默認(rèn)值都可以在配置服務(wù)器的?application.properties
?中進(jìn)行配置。下表描述了可配置的Vault屬性:
名稱(chēng) | 默認(rèn)值 |
---|---|
host |
127.0.0.1 |
port |
8200 |
scheme |
http |
backend |
secret |
defaultKey |
application |
profileSeparator |
, |
kvVersion |
1 |
skipSslValidation |
false |
timeout |
5 |
namespace |
null |
重要
上表中的所有屬性必須以spring.cloud.config.server.vault
為前綴,或放置在復(fù)合配置的正確Vault部分中。
所有可配置的屬性都可以在?org.springframework.cloud.config.server.environment.VaultEnvironmentProperties
?中找到。
Vault 0.10.0引入了版本化的鍵值后端(k / v后端版本2),該后端公開(kāi)了與早期版本不同的API,現(xiàn)在它需要在安裝路徑和實(shí)際上下文路徑之間使用?data/
?并包裝?data
?對(duì)象中的秘密。設(shè)置?kvVersion=2
?將考慮到這一點(diǎn)。
(可選)支持Vault企業(yè)版X-Vault-Namespace標(biāo)頭。要將其發(fā)送到Vault,請(qǐng)?jiān)O(shè)置namespace屬性。
在配置服務(wù)器運(yùn)行時(shí),您可以向服務(wù)器發(fā)出HTTP請(qǐng)求以從Vault后端檢索值。為此,您需要Vault服務(wù)器的令牌。
首先,將一些數(shù)據(jù)放入您的Vault中,如以下示例所示:
$ vault kv put secret/application foo=bar baz=bam
$ vault kv put secret/myapp foo=myappsbar
其次,向配置服務(wù)器發(fā)出HTTP請(qǐng)求以檢索值,如以下示例所示:
$ curl -X "GET" "http://localhost:8888/myapp/default" -H "X-Config-Token: yourtoken"
您應(yīng)該看到類(lèi)似于以下內(nèi)容的響應(yīng):
{
"name":"myapp",
"profiles":[
"default"
],
"label":null,
"version":null,
"state":null,
"propertySources":[
{
"name":"vault:myapp",
"source":{
"foo":"myappsbar"
}
},
{
"name":"vault:application",
"source":{
"baz":"bam",
"foo":"bar"
}
}
]
}
使用Vault時(shí),可以為您的應(yīng)用程序提供多個(gè)屬性源。例如,假設(shè)您已將數(shù)據(jù)寫(xiě)入Vault中的以下路徑:
secret/myApp,dev
secret/myApp
secret/application,dev
secret/application
寫(xiě)入?secret/application
?的Properties對(duì)使用Config Server的所有應(yīng)用程序均可用。名稱(chēng)為myApp的應(yīng)用程序?qū)⒕哂袑?xiě)入?secret/myApp
?和?secret/application
?的所有屬性。當(dāng)?myApp
?啟用了?dev
?配置文件時(shí),寫(xiě)入上述所有路徑的屬性將可用,列表中第一個(gè)路徑中的屬性?xún)?yōu)先于其他屬性。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話(huà):173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: