Nous utilisons le serveur Spring Cloud Config avec un référentiel git sauvegardé pour fournir des propriétés pour un profil de test. Nous avons reçu l'exigence de déplacer nos clés vers le coffre (hashicorp) et de conserver les propriétés habituelles comme d'habitude dans notre fichier de propriétés. Avant le coffre-fort, nous passions les clés via une propriété système (en utilisant -Dxxx=yyy
), qui était chargée comme une source de propriété normale et l'application fonctionnait comme prévu.Dans Spring Cloud Server ajoute d'autres propriétés à un environnement existant
Maintenant, je dois avoir une source de propriété composite à extraire du fichier de propriétés et aussi du coffre-fort en même temps. Je ne suis pas sûr de savoir comment extraire des propriétés à la fois du coffre-fort et du git en même temps et de les offrir aux clients de configuration de nuage de printemps.
J'ai creusé dans le documentation et j'ai trouvé que nous pouvions avoir un référentiel d'environnement composite, mais je ne peux pas faire fonctionner Vault et git en même temps.
J'ai essayé plusieurs choses comme mettre des propriétés comme ceci:
spring.cloud.config.server.git.uri=file:///E:/Project/git/myappdata
spring.cloud.config.server.vault.host=127.0.0.1
spring.cloud.config.server.vault.port=8200
spring.cloud.config.server.vault.scheme=http
spring.cloud.config.server.vault.backend=secret
spring.cloud.config.server.vault.defaultKey=myapp
testé également en utilisant la voûte des nuages de printemps et je pourrais aller chercher les secrets, mais ils ne sont pas fournis à mes clients.
J'ai essayé d'utiliser l'implémentation d'une interface EnvironmentRepository
, mais il s'agit de créer un nouveau référentiel (et je veux juste ajouter 1 propriété de coffre-fort au référentiel fourni existant basé sur git).
Et allait utiliser l'événement de printemps ApplicationEnvironmentPreparedEvent et essayé d'ajouter dynamiquement la propriété de voûte.
Je pense que je néglige quelque chose. Savez-vous quelle est la bonne façon de lire un secret de coffre et l'ajouter en tant que propriété d'un fichier de propriétés standard?