如何限制从 Firebase 读取数据的速率?

Dav*_*ave 6 firebase firebase-security firebase-realtime-database

我想限制每个用户从实时数据库读取数据的速率。有像这里描述的那样限制写入的好方法,但我找不到关于如何限制数据读取的任何解决方案。

这可以通过安全规则、云函数来完成还是我可以将其限制在 Firebase 帐户中的某处?我检查了文档,但找不到答案。

Dou*_*son 4

这适用于实时数据库和 Firestore,除非术语不同。(位置==文档)

如果每次执行读取时不在数据库中的某个位置写入一些值,您将无法执行此操作。您无法在安全规则中写入位置,也无法强制客户端在读取的同时进行写入。

即使您能够在规则中写入要在速率限制中使用的位置,您也必须为必须限制的每次读取读取该位置,这违背了速率限制的目的(因为它们可能继续尝试以只会导致更多读取发生的方式读取受限制的位置)。

  • @DougStevenson 那么使用 Firebase(RTDB 或 Firestore)意味着任何人都可以破解您的应用程序来爆炸您的读取并可能让您破产?那一定是错误的。 (13认同)
  • 不支持速率限制确实很疯狂。我刚刚在这里提交了功能请求:https://firebase.google.com/support/troubleshooter/report/features/。我建议您也这样做,这样就可以解决这个问题。 (7认同)