相关疑难解决方法(0)

安全规则中的Firebase速率限制?

我启动了我的第一个开放式存储库项目EphChat,人们立即开始充斥它的请求.

Firebase是否有办法对安全规则中的限制请求进行评级?我假设有一种方法可以使用请求的时间和先前写入的数据的时间,但在文档中找不到有关如何执行此操作的任何内容.

目前的安全规则如下.

{
    "rules": {
      "rooms": {
        "$RoomId": {
          "connections": {
              ".read": true,
              ".write": "auth.username == newData.child('FBUserId').val()"
          },
          "messages": {
            "$any": {
            ".write": "!newData.exists() || root.child('rooms').child(newData.child('RoomId').val()).child('connections').hasChild(newData.child('FBUserId').val())",
            ".validate": "newData.hasChildren(['RoomId','FBUserId','userName','userId','message']) && newData.child('message').val().length >= 1",
            ".read": "root.child('rooms').child(data.child('RoomId').val()).child('connections').hasChild(data.child('FBUserId').val())"
            }
          },
          "poll": {
            ".write": "auth.username == newData.child('FBUserId').val()",
            ".read": true
          }
        }
      }
    }
}
Run Code Online (Sandbox Code Playgroud)

我想对整个Rooms对象的db进行速率限制写入(和读取?),因此每秒只能生成1个请求(例如).

谢谢!

rate-limiting firebase firebase-security firebase-realtime-database

30
推荐指数
1
解决办法
8546
查看次数