如何将具有approle[in vault]的微服务连接到具有vault后端的Spring Cloud Config Server。
我可以看到使用根令牌的示例,如curl-x GET http://localhost:8888/my-service/default-h“x-config-token:s.tmqara2lasdnhjzqqzy7y8px”。但是我找不到任何使用approle连接spring cloud config服务的例子。
但是我不想将根令牌从微服务传递到spring cloud config服务器,相反,每个服务都将定义app角色,该角色应该能够连接spring cloud config,spring cloud config反过来连接到Vault并获得数据。
我在使用Spring Cloud Config服务器作为中央配置代理时也遇到了同样的问题。
我发现以下GitHub问题提供了一个解决方案。简而言之,您必须将spring-vault-core依赖项添加到您的依赖项中,以便为AppRole身份验证添加有效的令牌解析器:
Maven:
<dependency>
<groupId>org.springframework.vault</groupId>
<artifactId>spring-vault-core</artifactId>
</dependency>
格雷德尔:
implementation "org.springframework.vault:spring-vault-core"
这样可以直接解决问题。当然,必须设置以下配置:
spring:
cloud:
config:
server:
vault:
port: 443
host: myvault.domain.com
scheme: https
backend: mybackend
kv-version: 2 #required if secrets engine version is v2 (default: v1/1)
timeout: 5 #seconds
authentication: APPROLE
app-role:
secret-id: 1234567-234567-23456-12341
role-id: 987654-3456-9865-1235
role: my-role-name #optional
app-role-path: approle #optional if non default (default: approle)
添加依赖项、配置并启动服务后,将出现以下日志消息:
2021-04-30 12:40:31.211信息53327---[nio-8888-exec-2]O.S.V.A.LifecyCleAwareSessionManager:计划令牌续订
这样就不再需要x-config-token
标头了。
我正在设置一个Spring启动云配置服务器,它使用VAULT来存储秘密。 保管库身份验证机制设置为AWS_IAM。我的类路径中也有aws-java-sdk。aws cli也被配置。 当我向配置服务器发出请求时,我能够从VAULT中获取机密,但第一次请求除外 对配置服务器的第一个请求失败,因为它试图安排任务在到期后续订vault令牌(来自vault响应) 应用程序中的配置。性质 错误日志是
我正在使用Spring Cloud Config服务器,能够检测来自git存储库的更改并将其传递给配置客户机。 有两种方法,我已经实现了: null 所以两者都工作得很好,那么使用Spring Cloud Bus有什么好处吗?或者在生产环境中,不使用Spring Cloud Bus会有什么问题吗?因为将需要额外的工作来设置RabbitMQ集群(HA)作为生产中的Spring云总线。 谢谢,大卫
这里我的疑问是,当我们将这个应用程序部署到云中时,我们需要在application.properties中做什么更改?,因为我们不知道server.port和cloud中的“eureka.client.serviceurl.defaultzone”,这里我只使用localhost运行。 那么我们需要如何在配置中遵循云部署过程呢?我是Spring Cloud初学者,对这些配置有很多困惑。
我们的项目中使用的是Spring Cloud config server,它有多个微服务。配置服务器就绪后,我们现在将所有微服务的所有属性存储在一个中央git存储库中。每个微服务能够根据应用程序名称和配置文件提取自己的属性文件。我们试图将资源包存储在中央存储库中,并让config-server将这些资源包提供给微服务。我们的资源包包括属性文件,如messages_en.properties、mes
我正在尝试创建SpringCloudConfigServer,以便使用SSHURI连接到git存储库(bitbucket)。我正在关注Spring云配置 我使用ssh-keygen实用工具生成了密钥对,并粘贴了。发布文件内容在我的bitbucket帐户的ssh部分,但当我运行作为spring启动应用程序的服务器时,我得到无效的privateKey异常。 我也使用了这个堆栈溢出帖子中提供的建议,但是
我正在使用Spring Cloud配置服务器,我需要为每个阶段的产品测试和开发创建一个配置文件,我已经为默认配置文件创建了4个yml文件application.yml,为每个配置文件创建了应用程序-{配置文件},所以我的问题是如何通过环境变量加载特定的配置,并在每个配置文件配置和端口上运行配置服务器,我已经创建了一个bootstrap.yml但我不能解决这个问题。如果有人能指导我完成这些步骤来满足