Сервер конфигурации Spring с токеном хранилища не учитывает acl, определенный в хранилище - PullRequest
0 голосов
/ 11 июля 2019

У меня весенний конфиг-сервер и хранилище в качестве бэкенда.я создал токен в хранилище с политикой ACL.когда я использую токен в spring.cloud.config.token, он не учитывает acl

Мой клиент конфигурации sping имеет свойства этого загрузочного ремешка

spring:
  application:
    name: app1
  cloud:
    config:
      uri: https://config-server-ur:port
      token: token-associated-to-acl-policy

я создал политику acl по имени "app1 ", который позволяет только« app1 »быть прочитанным токеном в хранилище.

path "secret/app1" {
  capabilities = ["read", "list"]
}

./vault token create -display-name="app1" -policy="app1"

я использовал токен, сгенерированный в моем клиенте, и он не работает.

, когда я изменилПолитика ACL, приведенная ниже, работает

path "secret/*" {
  capabilities = ["read", "list"]
}

Однако, когда я получаю доступ к хранилищу напрямую с помощью X-Vault-токена, он работает отлично, как и ожидалось

1 Ответ

0 голосов
/ 15 июля 2019

Я нашел решение, установите значение spring.cloud.config.server.vault.defaultKey пустым, например, в config-server bootstrap.yml

spring.profiles.active=git, vault
spring.cloud.config.server.git.uri=properties-git-repo-url
spring.cloud.config.server.git.username=user
spring.cloud.config.server.git.password=password
spring.cloud.config.server.git.searchPaths=/{application}/xyz
spring.cloud.config.server.git.force-pull=true
spring.cloud.config.server.git.timeout=10
spring.cloud.config.server.git.order=2
spring.cloud.config.server.vault.host=vault-hostname
spring.cloud.config.server.vault.port=8200
spring.cloud.config.server.vault.scheme=https
spring.cloud.config.server.vault.backend=secret
spring.cloud.config.server.vault.defaultKey=
spring.cloud.config.server.vault.profileSeparator=/
spring.cloud.config.server.vault.skipSslValidation=true
spring.cloud.config.server.vault.order=1
spring.cloud.config.server.vault.kvVersion=1

по умолчанию spring.cloud.config.server.vault.defaultKey = установлен в «приложение».

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