Я успешно сконфигурировал мое приложение весенней загрузки для чтения определенного бэкэнда в хранилище и указанного c пути к ключу. Однако, когда я развертываю свое приложение в Openshift, кажется, что хранилище Spring Cloud пытается просмотреть несколько путей, выбрасывает кучу исключений и затем, наконец, определяет правильный путь на основе указанной иерархии здесь .
Мой bootstrap .yml выглядит следующим образом
spring:
profile: sandbox
cloud:
vault:
host: vault-host.fqdn
port: 8200
connection-timeout: 5000
read-timeout: 5000
config:
order: -10
scheme: https
generic:
enabled: false
kv:
enabled: true
backend: my_backend
application-name: app/path
authentication: KUBERNETES
kubernetes:
role: custom-role
kubernetes-path: openshift-path
Я уже настроил хранилище на my_backend/app/path/sandbox/<secret>
на основе иерархии, упомянутой в 2 . Я также посмотрел на эту SO post , но я все еще получаю 403 ошибки из хранилища Spring Cloud, пытающегося просмотреть иерархию, прежде чем он найдет правильную, настроенную в файле.
Есть ли лучший способ настроить его так, чтобы он выдавал ошибки только тогда, когда не может найти требуемый путь в Vault?
Вот сообщение об ошибке, которое я получаю в журналах Spring
Vault location [my_backend/application] not resolvable: Status 403 Forbidden [my_backend/data/application]: 1 error occurred:
* permission denied
Эта ошибка повторяется для многих различных комбинаций, и, наконец, приложение подходит. Это не блокатор, но мне было интересно, есть ли лучший способ сделать это в openshift.