spring-cloud-config - spring cloud config是否从后端缓存/存储配置数据

标签 spring-cloud-config hashicorp-vault

在我的项目中,我计划使用多个后端在我的 spring 云配置服务器设置中存储不同的数据:使用 git 后端存储非敏感数据,并使用 vault 存储密码/ token 等敏感数据。这类似于 https://content.pivotal.io/blog/spring-cloud-services-supports-vault-multiple-backends-use-the-right-config-repo-for-the-job建议。

我的问题是,由于从保险库返回的解密值通过配置服务器传回“客户端应用程序”,配置服务器是否会以任何方式缓存/存储/记录来自保险库的响应。如果这是真的,配置服务器将成为黑客的一个大目标,我们可能不得不通过额外的配置来保护配置服务器。

最佳答案

我想对您的担忧的真正答案是保护堆栈的每一层,以防止任何一点的入侵。

Spring documentation没有明确提到缓存数据 - 所以在这方面你应该是安全的。对于 Config Server 来说,从外部数据存储缓存配置也没有多大意义,因为它不是该数据的真实来源。我们希望它始终从源获取数据,以确保我们获得最新版本的数据。我假设可能存在缓存的情况如果 配置服务器在本地存储配置并且是 能看文件进行更改并相应地刷新其缓存。但话虽如此,我仍然不赞成在这一层缓存的好处。

从个人使用 Spring Cloud Config Server 来看,我还没有看到它注销了整个配置;事实上,它开始时记录的很少。我相信您可以通过设置适当的级别来进一步抑制日志记录。

您还应该考虑使用 SSL 保护 Vault & Config Server 和 Config Server 与每个应用程序之间的连接。这将阻止您以明文形式传输数据,并为您提供额外的安全层。

关于spring-cloud-config - spring cloud config是否从后端缓存/存储配置数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48635446/

相关文章:

Spring Cloud Config Server 在运行 main() 时不强制执行 BASIC 身份验证

Spring Cloud Config 对称 key

kubernetes - Kubernetes 上的 CA 证书和 JWT token

java - 尝试使用 ssh 私钥文件设置 Spring Boot 云配置服务器并获取 : ucom. jcraft.jsch.JSchException:USERAUTH 失败

java - 无法在 spring cloud 配置服务器中禁用解密服务器端

hashicorp-vault - 如何在生产中使用 Hashicorp Vault 的 AppRole?

kubernetes - 保管箱和Consul:保管箱存储未显示在Consul UI中

ansible - 使用 hash_vault Ansible 插件无法访问 Hashicorp Vault KV 存储版本 2

amazon-web-services - 在 "provisioner" block 上的 AWS EC2 实例上运行 Hashicorp Vault 服务器

java - 如何防止 spring 在测试中重新分配其上下文