问题标签 [spring-vault]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
945 浏览

spring - Spring Vault 和 Hibernate 凭据

我在 Vault 中存储了一些数据库凭据。
如何在 Hibernate init 之前获取/使用 Hibernate 的凭据?

0 投票
1 回答
967 浏览

spring-boot - 将多个 ClientAuthentiation 与 spring-vault 一起使用

我们有一个使用spring-vault的应用程序。它使用 AppRole 对 Vault 进行身份验证。我们使用从该操作中获得的令牌来读取和写入秘密。VaultEndpoint和的配置AppRoleAuthentication是从属性文件自动配置的。

代码如下所示:

我想保留自动装配功能,但也支持另外两个 ClientAuthentication 实现:

  • 现有的TokenAuthentication
  • 自定义ClientAuthentication实现(LDAP 身份验证后端)

最终结果将是同时提供两种身份验证机制。一些操作将使用应用程序的凭据(Vault 中的 AppRole)执行,其他操作将使用用户的凭据(Vault 中的 LDAP)执行。

我想我可以创建多个AbstractVaultConfiguration类,每个类都返回不同的ClientAuthentication导数。但是如何为配置类创建一个 VaultTemplate?

0 投票
0 回答
176 浏览

spring-vault - 续订 Vault Postgres 后端凭据

如何使用 SecretLeaseContainer 更新 spring vault Postgres 后端凭据?

@override public void afterPropertiesSet() 抛出异常 {

}

0 投票
1 回答
1608 浏览

spring-cloud - 使用 Spring Cloud Vault 连接到 Vault 时出现“Secret id missing”错误

我正在尝试使用基于角色的身份验证(spring boot 项目)连接到 spring Vault。

根据文档,我应该只能使用 approle(拉模式)连接到 spring vault。但是,我在应用程序启动时收到 secrect-id 缺失异常。

http://cloud.spring.io/spring-cloud-vault/single/spring-cloud-vault.html#_approle_authentication

当我通过时,secret-id 也可以连接,并且属性/值正在正确地自动连接。

有什么方法可以使用“token + role/role-id”与保险库连接,并使用提到的信息在运行时自动为我生成 secret-id。

聚甲醛:

如果需要任何其他信息,请告诉我。

更新

@ mp911de,我按照您的建议进行了尝试,但是 spring-cloud-vault 正在选择在 bootstrap.yml 中设置的属性,而不是在“onApplicationEvent”中设置的属性,因此解决方案不起作用。我尝试通过“System.setProperty”方法设置属性,但该事件不起作用。

但是,如果我在运行方法之前在 main 中设置属性,它会按预期工作。但我需要先加载 application.properties (需要从那里选择一些配置),因此不想在那里写逻辑。

我的方法有什么问题吗?

0 投票
0 回答
954 浏览

spring-boot - 覆盖 bootstrap.yml 中的属性

我想在bootstrap.yml加载后立即覆盖定义的属性。

例如:需要spring.cloud.vault.secret-id根据某些条件覆盖/定义。在 spring-cloud-vault 使用 secret-id 属性连接到 Vault 服务器之前如何实现相同的功能。

提前感谢您的帮助。

0 投票
1 回答
1096 浏览

spring-boot - 带有 Git/Vault 后端的 Spring Cloud Config - 令牌传递

除了为 Spring Cloud Config Server 提供 AppRole 或静态令牌来访问所有应用程序中的所有机密之外,是否可以将 Spring Cloud Vault Config 配置为在配置请求中使用给定令牌?

这种通信将通过 2-way SSL 与标头中的令牌进行。向外发送这样的令牌并不理想,但在这种情况下似乎是正确的解决方案。

请记住,这是一个使用 Git + Vault 作为后端的 Spring Cloud Config Server,以便将机密、变量等解析为所需的配置。这不仅用于 Spring 配置,还用于传递到临时环境的其他文件,例如 Apache 的 httpd.conf(将秘密塞入的坏示例)

这里的目标是尽可能限制访问,并将其限制在请求配置的最终应用程序中。也很高兴不要在 Spring Config AND Vault 策略上使用 AuthZ 重复 RBAC 工作。

0 投票
1 回答
284 浏览

http-headers - 使用 spring-vault 设置 X-Vault-Wrap-TTL 标头

我们正在编写一个应用程序,使用Vault的“响应包装”功能创建短暂的秘密。Vault API 使用标头将 TTL 设置为非默认值

有没有办法X-Vault-Wrap-TTL使用 spring-vault 设置标题?

0 投票
0 回答
158 浏览

hashicorp-vault - 启用 TLS 时的 Vault Client 通信

我在链接部分之后使用密钥库设置了一个保管库服务器(不是在开发模式下) - http://cloud.spring.io/spring-cloud-vault/single/spring-cloud-vault.html

我现在可以在启用 tls 的情况下启动服务器。我的问题很简单,如何让 Vault 客户端与服务器通信。

Vault 有 authbackend 来验证使用 TLS 的角色,但要达到这一点,我认为我必须首先建立客户端连接。有人可以请放一些光。

0 投票
2 回答
886 浏览

spring-cloud - 使用 Git/Vault 的 Spring Cloud Config 生产环境

Spring Boot - 2.0.0.M3 Spring 云 - Finchley.M1

我想知道是否有人在使用数据库存储后端的生产设置中使用具有 vault 和 git 支持的 Spring Cloud 配置服务器。我已经使用 Vault 评估了 Spring 云配置,并考虑是否使用 Oracle JCE 来加密用户名/密码或 Vault 并寻求相同的建议。我们正在开发 Springboot/微服务。

以下是我的发现 -

  1. Vault 将引入一个额外的层,因此将引入额外的安全用例,在与 Vault 通信时进行审计。

  2. Spring cloud Config 执行器端点在此时为生成加密值而破坏了里程碑版本,如果我们寻求 Oracle JCE 支持,/encrypt /decrypt 可能无法工作,因此我们通过稳定版本生成加密值。

  3. 我们不希望使用 consul 服务器,而是尝试使用 Cassandra 作为存储后端。

  4. 我使用 AppRole 使用 Vault Authentication 后端并生成了一个具有读取权限的令牌(与根令牌不同,因为使用相同的令牌是不安全的)。但是,Spring Cloud 配置目前仅支持来自客户端的基于 Token 的身份验证。这意味着我们首先从 Vault 生成令牌,然后将其作为命令行/环境变量传递。一些额外的关注点是令牌的到期(尽管我们可以有非到期令牌不确定利弊)、重启、安全问题、实例化新的微服务。云配置端没有提供动态令牌/身份验证。

  5. 对于里程碑版本,我发现客户端加密/解密目前无法使用推荐的 RSA jar 包含。这是我打开的票。 https://github.com/spring-cloud/spring-cloud-config/issues/805#issuecomment-332491536

这些是我的一些观察,如果有任何案例研究/白皮书解决生产微服务环境的 Spring Cloud config vault 用例、设置和挑战,请分享您的想法。

谢谢

0 投票
1 回答
582 浏览

hashicorp-vault - 租用时间后删除机密

我开始使用保险库,当我在保险库中添加一个秘密时,我通过了租约 = 10 秒,但在 10 秒后,秘密没有被删除。我怎样才能从保险库中删除秘密?