【发布时间】:2016-04-25 03:19:21
【问题描述】:
我正在将 Firebase 用于具有以下树结构的应用...
- groups
- $group_id
- users
- $user_id
- users
- $user_id
- groups
- $group_id
非常简单 - 用户属于组,并且这种关系存储在“用户”位置和“组”位置。
我希望编写安全规则,只允许用户从属于同一组的其他用户的 Firebase 位置读取(即,如果他们的任何 $group_ids 匹配)。我应该如何构建我的数据以确保这一点以及实际的安全“读取”规则语法是什么样的?
【问题讨论】:
-
你读过auth-based security吗?它有一个现场演示和完整示例,展示了这种结构和概念。另见how to ask 和creating an mcve。
-
我确实阅读了该链接上的文档,但它们没有涵盖任何有助于解决我的问题的具体内容。我在想答案可能是目前没有办法实现我想要做的事情,因为没有什么可以允许对其他组的值组(例如数组)进行更复杂的检查以至少进行一次匹配。我能找到的最接近的东西是 .hasChildren() 但这需要所有传递的值都存在。
标签: firebase firebase-security