0

我在竹子,yml 中使用以下命令创建了用户提供的服务

cf cups my-service -p '{"url":"https://some-url.com","username":"admin","password":"admin"}'

由于这些凭据在应用程序的环境变量中可见并且可能在某处泄漏,因此我将上述命令更改为使用 credhub,如下所示

cf create-service credhub default my-service -c '{"url":"some-url.com","username":"admin","password":"admin"}'

这里我使用了 credhub,但是这个命令也放在了bamboo.yml 文件中,所以凭据仍然对应用程序开发人员开放。可以采取哪些不同的措施来保护这些凭据,而不是将它们直接放在竹子.yml 中?

4

2 回答 2

1

想想如果没有bamboo.yaml 你会怎么做。也许您应该将凭据放入秘密变量(如果变量在名称 Bamboo 中有秘密或密码部分将对其进行加密),然后在您的命令中引用它

于 2021-07-06T11:23:45.837 回答
0

有几个选项:

  1. 您可以将任何您想要的内容放入您在 ups 上设置的属性中,即用户提供的服务。它可以是纯文本或加密文本。如果您放置加密文本,您的应用程序将需要了解如何解密文本以便使用它。该平台仅通过您在用户提供的服务上设置的属性。

  2. 您可以将 spring vault 或外部 vault 实例与 hashcorp 服务代理https://github.com/hashicorp/cf-vault-service-broker一起使用,以安全的方式在您的应用程序中检索/存储凭据

  3. 另一种选择可能是将配置存储在像 Spring Cloud Config 这样的云配置中,但仍建议使用 Vault 作为凭证​​。然后,您可以将其作为服务器运行,并为正在运行的应用程序提供配置。不过对于小型项目来说,这可能是开销。

于 2021-07-06T11:25:16.297 回答