私が実行しているDocker Vault container
中dev
モード、と私は秘密に位置読み取ることはできません/secret/mobsters/
と呼ばれるがpassword
。
これがSpringログです。
実行vault kv get secret/mobsters
すると、パスワードとキーと値のペアが返されます。ボールトサーバーにローカルでアクセスすることもできます。
これが私が秘密を参照している方法です:
@Value("${password}")
String password;
@PostConstruct
private void postConstruct() {
System.out.println("My password is: " + password);
}
Spring Cloud Vault
構成が使用して設定されbootstrap.yml
たファイルを:
spring.application.name: mobsters
spring.cloud.vault:
host: localhost
port: 8200
scheme: http
authentication: TOKEN
token: ...
Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'password' in value "${password}"`
Vault UIから:
HashiCorp Vault0.10.0でSpringVault / Spring Cloud Vaultを使用すると、キー/値バックエンドがデフォルトでバージョン管理が有効になっているため、機能しません。バージョン管理されたAPIが完全に変更され、既存のクライアント実装が壊れているため、これにはいくつかの重要性があります。コンテキストパスと応答構造は異なります。
2つのオプションがあります。
spring.cloud.vault.generic.backend=secret/data
、あなたのブートストラップコンフィギュレーションに。data.
soを付けると、に@Value("${hello.world}")
なり@Value("${data.hello.world}")
ます。この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加