Firebase Cloud功能使用API​​密钥保护HTTPS端点

Rua*_*uan 6 authentication http firebase google-cloud-functions

我看了几个地方,包括这篇文章和firebase小组

在此输入图像描述

有没有办法使用这些api来使用您为每个使用云功能的客户创建的API密钥来保护这些端点?

我能够阻止每个人对浏览器密钥设置限制,但我想创建一个新的api密钥,并将其用作为各种客户端验证我的端点的方法.

创建一个新的api密钥,并将其用作我的查询的参数不起作用(如果我做错了,现在不要)

在此输入图像描述

有没有办法做到这一点?

Vil*_*lle 4

选项 1:在函数内处理身份验证

https://github.com/firebase/functions-samples/tree/master/authorized-https-endpoint

修改上面的内容以使用存储在 firestore 中的客户端/密钥


选项 2:使用API 网关

上述网关可能最适合您的用例,因为前两个网关可以让您将所有内容保留在 Google 内,尽管复杂性/成本更高 - 希望端点很快就能获得功能支持。Azure 意味着您的架构的一部分位于 Google 之外,但看起来是一种实现您的目标的简单方法(每个客户端的 api 密钥用于您的 google cloud / firebase 功能)

以下是实施 Azure API 管理的一个很好的演练:

https://koukia.ca/a-microservices-implementation-journey-part-4-9c19a16385e9