Hashicorp Vault 客户端最佳实践

0 security authentication hashicorp-vault

我有一个使用 Hashicorp Vault 来存储用户名和密码秘密的应用程序。应用程序部署到云托管平台并传递令牌作为环境变量。在应用程序启动时,使用令牌从保管库中读取机密,并用于打开与远程服务的会话。远程服务的应用程序和会话是长期存在的。如果一切顺利,应用程序很少重新启动,因此很少从保管库中读取。当应用程序重新启动时,令牌可能已过期,从而导致失败。

是否有关于客户应如何使用保管库的最佳实践指南?令牌生命周期可以延长,但生命周期越长,安全性就越低。应用程序可以在每次需要时重新建立与远程服务的会话,但这将是低效的。有没有我不考虑的另一种选择?任何想法将不胜感激。

Col*_*son 5

您应该使用应用程序角色而不是传入普通令牌。在这种情况下,您将角色 ID 烘焙到您的应用程序中,然后在您的环境变量中为该角色部署一个秘密 ID。

然后,您的应用程序可以组合这些以在启动时从 Vault 获取真实令牌,并在运行时定期更新该令牌。