Весеннее облако не может раскрыть секрет хранилища в .yml - PullRequest
0 голосов
/ 09 апреля 2020

Я работаю с микросервисной архитектурой и имею сервис конфигурирования Spring Cloud и другой микросервис.

  profiles:
    active: vault
  cloud:
    # Configuration for a vault server running in dev mode
    vault:
      scheme: http
      host: 127.0.0.1
      port: 8200
      connection-timeout: 5000
      read-timeout: 15000
      authentication: TOKEN
      token: s.E4gdoIYAKxMvCE56MP5Etmvy
      kv:
        enabled: true
        backend: secret
        backend-version: 2
        profile-separator: /
      generic:
          enabled: false
      application-name: myapp

Зависимость сервера конфигурации

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-vault-config</artifactId>
    <version>2.1.5.RELEASE</version>
</dependency>

это в .yml в сервис конфигурации , Затем в .yml для моего микросервиса у меня есть свойство db.username, которое я хочу разрешить из Vault, но не могу. У вас есть какие-либо идеи?

username: db.username
password: secret/apm-transaction-service/dev/db.user

@Value("${db.username}")

это значение разрешено в коде java, но не в .yml

Теперь для каждого имеющегося у меня микросервиса я хочу раскрыть секреты из службы конфигурации без внесения каких-либо изменений в микросервисы. В настоящее время читает нативные .ymls из службы конфигурации и хочет добавить еще один источник:)

Метод запуска ApplicationStartupRunner запущен !! root

1 Ответ

0 голосов
/ 09 апреля 2020

, если вы используете spring-boot, для разрешения значения в файле .yml это должна быть переменная. вы должны использовать $ {db.username} в файле yaml

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...