firebase - 通过 firebase 功能对另一台服务器进行身份验证的最佳做法是什么?

标签 firebase firebase-authentication google-cloud-functions

我想从另一台服务器调用我的 firebase 函数 HTTP API——它没有电子邮件和密码(或任何其他 firebase 身份验证方法)。

我希望能够在 Firestore 中运行读/写之类的任务,但仍要保护 API。我想像 AWS 那样创建某种编程 key 来调用它们的 API。但是,如何在 firebase 中执行此操作?我们如何生成这样的编程 key 以在一台服务器与另一台服务器之间进行通信?

最佳答案

这似乎是您可以尝试的最佳可用选项 - 因为它似乎没有官方方法 - 它是通过使用 API key 来执行调用的验证和安全性。正如官方文档中所阐明的那样 Using API Keys ,并非所有 Google 应用程序都支持此功能,但 Cloud Endpoints 应该可以。

考虑到这一点,您可以将 Cloud Endpoints 与您的 Cloud Functions 集成,通过 API key 提供安全性。您可以在本文 here 中找到有关如何实现该目标的更多信息.

您可能想尝试的另一种选择是使用 JWT token - 已阐明 here - 作为 API 调用中的 header 。这样,您将通过 key 进行身份验证 - 与在 AWS 中完全不同,但这是一个开始 - 因此您可以保护您的调用。 :)

无论如何,如果您觉得这没有用,我建议您在 Google's Feature Tracker 中提出功能请求, 因此他们可以检查进一步实现此类功能的可能性。

如果这些信息对您有帮助,请告诉我!

关于firebase - 通过 firebase 功能对另一台服务器进行身份验证的最佳做法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61902498/

相关文章:

firebase - 如何将 TS 路径映射与 Firebase Cloud Functions 结合使用

javascript - 解析云代码替代方案

java - Firebase 实时数据库 long 值始终返回 0,即使它不是

javascript - Firebase 自定义声明不会传播

typescript - Firebase Functions Typescript - 使用 html 模板发送电子邮件

javascript - 在用户注销后从 Cloud Firestore 中清除用户数据

angularjs - AngularJS 服务中的 Firebase AngularFire

firebase - Flutter 检查用户名是否已存在于 Firestore 数据库中

javascript - 如何从服务器端使用 Google 登录创建 Firebase 用户

android - 如何在android studio中使用firebase auth删除注册用户?