首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何禁用对Firebase数据库的REST API调用?

如何禁用对Firebase数据库的REST API调用?
EN

Stack Overflow用户
提问于 2017-05-23 14:00:57
回答 1查看 461关注 0票数 3

在使用Firebase BaaS很长一段时间后,我担心REST API调用可能会导致数据被窃取和/或通过窥探导致大量数据下载。

尽管Firebase规则中提出的规则有助于避免大多数用例问题,但一个简单的问题是,如果最终用户使用恶意代码使用REST API调用卸载整个节点数据,那么允许用户在不进行身份验证的情况下读取数据库的一部分可能会导致数据使用量激增。

例如:这是最近在GoogleIO2017中推出的Tic-Tac游戏,它使用Firebase https://tictactoe-io2017.firebaseapp.com/尽管只有经过身份验证的用户才能玩游戏简单的REST API调用https://tictactoe-io2017.firebaseio.com/games.json可以检索从开始到现在的所有游戏细节,这给开发人员带来了沉重的使用费负担

EN

回答 1

Stack Overflow用户

发布于 2020-05-26 11:52:58

我认为在公共端点中禁用REST API是不可能的(即使用户未通过身份验证,也需要获取数据)。但是有一种方法可以使用实时数据库安全规则来限制查询:

代码语言:javascript
复制
  "rules": 
  {
     "my-world-visible-rdb-endpoint":
     {
        ".read": "query.limitToLast>1 && query.limitToFirst < 50",
        ".write": false
     }
  }

上面的代码将强制客户端显式限制结果,并将拒绝像您提到的示例那样的代价高昂的读取。

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

https://stackoverflow.com/questions/44126882

复制
相关文章

相似问题

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