让用户看到自己的数据的Firebase规则,/ jobs处的ERROR侦听器失败:Permission_denied

时间:2019-02-22 15:03:07

标签: firebase firebase-realtime-database firebase-security-rules

我正在尝试找出Firebase规则,这些规则将允许我的用户仅在其应用程序中查看其数据。

当前,这是我的实时数据库文件:

enter image description here

这是我的Firebase设置规则:

 {
  "rules": {
    "users": {
      "$uid": {
        ".read": "auth.uid === $uid"
      }
    },
    "jobs": {
      "$uid": {
        ".read": "auth.uid === $uid"
      }
    }
  }
}

我如何更改规则以使用户能够查看与其用户ID相关的数据?

1 个答案:

答案 0 :(得分:1)

您似乎在jobsusers中都使用用户的UID作为其数据的密钥。在这种情况下,您可以确保每个用户只能通过以下方式读取自己的工作和个人资料:

{
  "rules": {
    "users": {
      "$uid": {
        ".read": "auth.uid === $uid"
      }
    },
    "jobs": {
      "$uid": {
        ".read": "auth.uid === $uid"
      }
    }
  }
}

请注意,这几乎是Firebase documentation on securing user data中示例的文字副本。