首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何为第三方开发人员构建安全的Firestore API : SDK vs Firebase REST API与https函数?

如何为第三方开发人员构建安全的Firestore API : SDK vs Firebase REST API与https函数?
EN

Stack Overflow用户
提问于 2020-07-21 01:37:51
回答 1查看 288关注 0票数 2

我必须使用Firebase构建一个API,并需要一些设计选择方面的帮助。我希望能够将API卖给用户,然后用户可以使用它构建/集成他们自己的应用程序。用户将同时拥有读写权限。

一般资料:

我使用的是固定数据库,带有电子邮件和密码,authentication.

  • Only专门指定的用户可以使用API

  • ,每个用户只能访问有关他们的特定文档。

我已经注意到了3种不同的方法,可以将API提供给Firestore的用户:

(https://firebase.google.com/docs/functions/http-events)

提供的REST

API要求:

  • 只供我专门授予访问权限的用户使用(电子邮件和密码登录)
  • ,我想限制这些用户只执行几个他们能够执行的读/写任务。
  • 它需要安全。

我目前的做法是:

  • 使用第三个选项- Firebase提供的REST (从而为用户提供projectId和API密钥)
  • 将授权用户添加到Firbase上的授权帐户列表中,并使用自定义声明和数据库规则限制访问。

我的问题:

看来,

  • 函数(选项1)通常用于API构建。选项2和3不安全吗?
  • 这三个选项的正常用例是什么?什么时候应该使用它们,什么时候应该避免?
  • 在我选择的选项3中有什么明显的缺陷吗?
  • ,关于做出这些设计决策的其他有用信息都是非常有用的。

提前谢谢你

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-21 14:14:34

TL;DL:这取决于您想要使用这个API做什么,以及有多少设备/用户将调用它。

在回答您的问题之前,我将列出以下每种方法的优点:

  • 云函数:

云函数是作为服务解决方案的函数,因此它也是API的托管服务,因此您不必提供、管理或升级服务器,API将根据负载自动扩展。此外,此选项还考虑到SDK和客户端库的优点,因为您的代码无论如何都必须使用它连接到Firestore。

  • SDKs和客户端库:

这是实现Firestore的最简单和更优化的方法,但是,在无法运行本机库的环境中,例如IOT设备将被排除在解决方案之外,因此在实现此选项时请考虑这一点。

  • 云修复REST:

每个被适当授权访问Firestore的设备都能够这样做。

注意事项:对于SDK和REST,您需要考虑托管您的API,如上面提到的App标准、App或Compute实例。

尽管如此,这取决于您和您的API的使用和要求,以说明哪个选项是最好的考虑以上各点。

根据安全性,如果正确设置了firebase规则和firebase,则所有选项都可以是安全的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63006140

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档