Firebase 身份验证 + Cloud Functions

Firebase Authentication + Cloud Functions

我已经在 API 网关后面部署了一个 Cloud Function 并配置了 Firebase 身份验证,这一切似乎都运行良好。

现在我需要删除 AllUsers,这样只有经过身份验证的用户才能调用该函数。我在 Firebase 中设置了一个基于电子邮件的用户,并为该用户生成了一个令牌,它被 API 网关接受,但我收到 403 禁止访问,因为不允许用户调用该函数。

如何将基于电子邮件的用户添加为可以调用该功能的帐户,似乎在任何文档中都看不到这个?

在 API 网关级别,更普遍的是 GCP IAM,您只能 allow/restrict 基于作为项目协作者的 Google 帐户进行访问。遗憾的是,无法在此级别过滤 Firebase 身份验证用户。

所以您必须在 Cloud Functions 代码本身内部进行授权检查。在您的评论中,您已经确定了一种自己验证 ID 令牌的方法,该方法也显示在 example, but if you implement your code as a callable Cloud Function, that provides built-in decoding of the token into a context.auth property.