Gibt es eine Möglichkeit Spring Cloud {cipher} in der Spring Boot-Anwendungskonfiguration zu verwenden?

8

Ich habe eine Spring Boot-App, die Spring Cloud Config verwendet, aber ich möchte das Spring Cloud Config-Passwort in der bootstrap.yml-Datei von Spring Boot apps verschlüsseln. Gibt es eine Möglichkeit, dies zu tun? Unten ist ein Beispiel.

Spring Boot-Anwendung bootstrap.yml

%Vor%     
Brian Abston 09.02.2015, 23:09
quelle

3 Antworten

7

Es gibt Unterstützung für verschlüsselte Eigenschaften im Konfigurations-Client (wie im Benutzerhandbuch ). Offensichtlich müssen Sie einen Schlüssel bereitstellen, um die Eigenschaften zur Laufzeit zu entschlüsseln, also sehe ich nicht immer den Vorteil (ich nehme an, die Konfigurationsdatei ist ein bisschen wie ein Schlüsselspeicher mit einem speziellen Format, also nur Sie habe ein Geheimnis zum Schutz statt vieler). Beispiel (application.yml):

%Vor%

und der Schlüssel (in bootstrap.yml):

%Vor%     
Dave Syer 10.02.2015 15:01
quelle
7

Ein paar Dinge, die ich entdeckt habe, bezogen sich darauf.

Wenn Sie bootstrap.yml (oder application.yml) verwenden, muss das Format für den Chiffretext in einfache Anführungszeichen gesetzt werden:

%Vor%

Wenn Sie bootstrap.properties (oder application.properties) verwenden, darf das Format für den verschlüsselten Text NICHT eingeschlossen sein:

%Vor%

Die [Referenzdokumente] [1] zeigen das Yml ohne die Anführungszeichen, die ich nie zur Arbeit bekommen habe. SnakeYaml hat immer einen Fehler gemeldet:

%Vor%     
Ken Krueger 20.05.2015 19:56
quelle
2

Sie können Spring CLI verwenden, um die Geheimnisse spring encrypt password --key 'SECRET_KEY'

zu verschlüsseln

Ссылка

    
eduardomoroni 02.06.2017 17:57
quelle

Tags und Links