【问题标题】:Firebase Database Security Rules - Allow access to friendsFirebase 数据库安全规则 - 允许访问朋友
【发布时间】:2021-11-05 17:17:41
【问题描述】:

我正在尝试基于用户是作者的朋友而授予对用户发布的帖子的阅读权限。但是,Firebase 告诉我“变量未知 $friendId”。这是我的

rules:

users": {
      "$uid": {
        ".read": "$uid === auth.uid",
        ".write": "$uid === auth.uid",
          "posts": {
            "public": {
              ".read" : "auth != null"
            },
              "private" : {
                ".read": "root.child('users').child($uid).child('friends').child($friendId) === auth.id"
              }
          }
      }

基本上,我希望 Firebase 检查 /users/$uid/friends/ 是否包含朋友 ID,如果是这样,则授予读取 /users/$uid/posts/private 的权限。

【问题讨论】:

    标签: database firebase firebase-security


    【解决方案1】:

    确实,Firebase 似乎无法从条件语句中接受新变量。但是,您可以只使用auth.variables。我所做的只是更改了关于私人帖子的最后一部分:

    "private": {
        ".read": "root.child('users').child($uid).child('friends').child(auth.uid).exists()"
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-15
      • 1970-01-01
      • 2020-07-11
      • 2020-10-19
      • 2018-10-22
      • 2021-01-02
      • 2023-03-13
      • 2016-09-16
      相关资源
      最近更新 更多