1

考虑一个接收 HTTPS 请求并使用 HTTP 基本身份验证的 API。每当收到请求时,应用程序都需要检查标头中的用户名/密码组合是否有效。可能有成千上万的用户,每个用户都有自己的密钥。

我想知道 Google Secret Manager 是否适合这个用例。那是:

  • 我可以将每个 API 用户名/密码存储在 Secret Manager 中,使用用户名作为秘密 ID。
  • 然后,每当有请求进入时,应用程序将:(1) 查找 Authorization 标头中存在的用户名的凭据,(2) 将标头密码与从 Secret Manager 检索到的密码进行比较,(3) 如果存在则拒绝请求是不匹配。

对于上述案例,Google Secret Manager 是否有效且可取?

4

1 回答 1

2

这在技术上是可行的,因为 GCP 项目中的机密数量没有限制。但是,它可能很快变得昂贵。每个秘密是 0.06 美元/月。这意味着每个用户每年花费 0.72 美元。对于 100 万用户,这就是 72 万美元/年 + API 运营成本。

还有延迟要考虑。您需要在用户请求的上下文中对 Secret Manager 进行 API 调用。这很容易使往返延迟加倍。您考虑的架构是正确的,但 Secret Manager 并不是真正的 LDAP 或身份验证服务器。

于 2020-04-03T21:35:42.040 回答