0

春季启动 - 2.0.0.M3 春云 - Finchley.M1生产环境春云配置使用Git /库

我想知道是否有人使用Spring配置的云服务器保险柜和Git支持在使用数据库存储后端的生产设置中。 使用跳马和考虑是否要为甲骨文JCE加密的用户名/密码或库,并寻求在相同的建议,我已经评估春季云配置。我们正在研究Springboot/microservices。

以下是我的发现 -

  1. 库将引入的附加层,从而在与库通信将推出额外的安全usecases,审计。

  2. Spring云配置执行器端点在此时生成加密值并且/ encrypt/decrypt可能不起作用,因此如果我们选择Oracle JCE支持,则我们通过稳定版本生成加密值。

  3. 我们不希望使用领事服务器,并尝试使用卡桑德拉作为存储后端。

  4. 我使用利用AppRole保管箱认证后端和生成的令牌(从根令牌不同,因为它是不安全使用相同的)与读取权限。不过,Spring Cloud配置目前仅支持来自客户端的基于令牌的身份验证。这意味着我们首先从Vault生成令牌,然后将其作为命令行/ env变量传递。 关心的一些附加分是令牌到期(虽然我们可以有非到期令牌不知道优点/缺点),重新启动后,安全问题,实例化新的微服务。在云配置端没有提供动态令牌/认证。

  5. 对于里程碑意义的版本,我发现客户端加密/解密工作不象现在使用RSA罐子的建议列入。这是我打开的票。 https://github.com/spring-cloud/spring-cloud-config/issues/805#issuecomment-332491536

这些都是我的一些意见,请分享你的想法,如果有任何案例研究/白皮书该地址春云配置跳马usecases,安装和挑战生产微型服务环境。

谢谢

回答

0

感谢您接触到我。一想我会说明的是,在App角色后端采用两种不同的令牌,确实弹簧云配置保管库确实支持此功能,请参阅:http://cloud.spring.io/spring-cloud-vault/single/spring-cloud-vault.html#_approle_authentication。按照文档,我以与使用配置服务器相同的方式利用保管库。我没有加密我的配置中的任何值,我只是不把它们放在那里。我把秘密值放在拱顶上,让它为配置服务。只要键不发生冲突,就不必乱用任何东西,否则您可能需要调整优先级,以便Vault获胜,请再次参阅上面指出的文档。我不会在spring-cloud-config中亲自加密加密/解密。因为您必须将钥匙检入SCM或将其分发给您的团队进行本地开发,您将失去拥有这些钥匙IMO的价值。

0

感谢Spring Cloud Vault确实支持Spring云配置,但不支持Vault。唯一的方法似乎是将X-Config令牌从微服务传递到配置服务器。我们对手动或通过脚本生成令牌的这一部分持怀疑态度。尤其是在集装箱化和新的MS实例产生时。不确定这种方法,尤其是在生产环境中。