Firebase实时数据库规则不起作用

Firebase实时数据库规则不起作用,firebase,firebase-realtime-database,firebase-security,Firebase,Firebase Realtime Database,Firebase Security,我有以下firebase设置: - root - v1 - auth - "key1" : "value", - "key2" : "value, - ... - config - announcements 我希望所有东西都应该有”。写:“auth!=null” 除了应该是”的auth之外,所有内容都是可读的。请阅读:“auth!=null” 我试过以下规则,但都不管用 { "rules": { ".read"

我有以下firebase设置:

- root
  - v1
    - auth
     - "key1" : "value",
     - "key2" : "value,
     - ...
    - config
    - announcements
我希望所有东西都应该有
”。写:“auth!=null”
除了应该是
”的
auth
之外,所有内容都是可读的。请阅读:“auth!=null”

我试过以下规则,但都不管用

{
    "rules": {
        ".read": true,
        ".write": "auth != null",
        "v1": {
            ".read": true,
            ".write": "auth != null",
            "auth": {
                ".read": "auth != null",
                ".write": "auth != null"
            }
        }
    }
}

您的规则是为每个人提供数据库中的所有内容的读访问权限,但随后尝试取消对某个更深层次的子节点的读访问权限。使用实时数据库规则无法做到这一点。一旦授予对节点的读访问权,该节点及其所有子节点都将永久可读。在这种情况下,数据库规则被称为“级联”。如果子节点的任何父节点都是可读的,则不能拒绝对其的访问


请包括您用于测试此功能的数据和代码。还有,这些规则究竟是如何运作的?(你能在不应该读的时候读吗,反之亦然?)auth节点包含键值对,当转到auth.json时,它实际上向我显示了数据,而它不应该这样认为。如果你想让人们帮助你,你真的需要在你的问题中添加这类信息。简单地说一些不起作用的话是完全没有用的,因为这可能意味着很多事情。但是如果你想要这样的东西,你就必须以不同的方式重写你的规则,因为谢谢你真的很有帮助