GitHubで利用できるこのオープンソースプロジェクトをチェックしてください。私はそれがちょうどあなたが探しているものかもしれないと思う。注:外観から見ると、これは現在、Spring Cloud Incubatorプロジェクト(将来Springの正式なSpring認定オープンソースライブラリになる可能性があります)であり、投稿者は3人だけです。あなたのニーズに合うように「十分に信頼できる」かどうかを確認する必要があります。
https://github.com/spring-cloud-incubator/spring-cloud-vault-config
---ここで有用な情報の簡単な概要---
のpom.xmlに以下の依存関係を追加します:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-vault-starter-config</artifactId>
<version>x.y.z</version>
</dependency>
標準のSpringブートアプリケーションを作成します - 提供例は単なる主なアプリケーションクラスです:
@SpringBootApplication
@RestController
public class Application {
@RequestMapping("/")
public String home() {
return "Hello World!";
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
実行時には、ポート8200のデフォルトローカルVaultサーバ から外部設定を取得します(実行中の場合)。起動時の動作を に変更するには、bootstrap.properties(application.propertiesのようなアプリケーションコンテキストの ブートストラップフェーズの場合)を使用してVaultサーバー の場所を変更することができます。
bootstrap.yml:
spring.cloud.vault:
host: localhost
port: 8200
scheme: http
connection-timeout: 5000
read-timeout: 15000
Vaultのホストのホスト名を設定しますhost
。ホスト名は
port
は、プレーンHTTPを使用するHTTPにスキームを設定するVaultのポート
scheme
を設定し、SSL証明書の検証に使用されます。サポートされているスキームはhttpとhttpsです。
connection-timeout
は
read-timeout
このプロジェクトは、1がしっかりボールトで春のブート設定を保存することができます
ミリ秒単位の読み取りタイムアウトを設定し、ミリ秒単位で接続タイムアウトを設定しますが、すべてのパスワードに対応するためには表示されません。リース/更新機能 –
まだ更新機能はありません。静的秘密の更新は大したことではありませんが、データベース/サービス秘密の更新は問題です。データベースは、ユーザーの変更をさまざまな方法で処理します。 DB2データベースがフリークアウトしている間に接続が確立されると、ユーザを削除してもMySQLは気にしません。私はデータソース/プールを更新することが可能だと思います。しばらくの間、サービスを再開して有効期限を処理することで、安全な側にいなければなりません。有効期限を切る/更新する機能をアプリを破壊することなく使用する方法を慎重に調査するため、まだサポートは追加されていません。 – mp911de