Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
向多组用户授予对Firebase位置的访问权限_Firebase_Firebase Realtime Database - Fatal编程技术网

向多组用户授予对Firebase位置的访问权限

向多组用户授予对Firebase位置的访问权限,firebase,firebase-realtime-database,Firebase,Firebase Realtime Database,我如何向用户组授予访问Firebase位置的权限? 我只为一组用户找到了一个好的解决方案: 它有一个属性group:“group name”,但在我的例子中,它应该有一个属性groups:['group1','group2',]或groups:'group1,group2,…'组可以是字典对象{'group1':true,'group2':true} 下面是JSON结构 "Groups": { "group1": { "user1": true, "user2": true, ...},

我如何向用户组授予访问Firebase位置的权限?
我只为一组用户找到了一个好的解决方案: 它有一个属性
group:“group name”
,但在我的例子中,它应该有一个属性
groups:['group1','group2',]
groups:'group1,group2,…'
<代码>组可以是字典对象{'group1':true,'group2':true}

下面是JSON结构

"Groups": {
  "group1": { "user1": true, "user2": true, ...},
  "group2": { "user3": true,  "user4": true, ... },
  "group3": ...,
  ...
}
"Products": {
   "product1": {
       ...
       "groups": ["group1", "group2"],  "group1 group2" or 
                 {"group1": true, "group2": true} 
   }
} 

因此,用户
user1、user2、user3、user4
group1、group2
的成员可以访问产品
product1

这不是重复的,应该有另一种多组访问解决方案。链接的答案显示了如何处理组。没有更好的办法了。与您的示例不同的是,您使用了一个数组,当涉及Firebase时,它是一个反模式。Firebase建议不要使用数组的众多原因之一是,它使安全规则无法编写。有关详细信息,请参见和。如果您在Michael的答案中的解决方案是否适用于您的案例方面遇到问题,请编辑您的问题,使其包含最低限度的JSON和安全规则(以文本形式,无屏幕截图),我们将进行查看。@FrankvanPuffelen我确实在为一个位置的多个组寻找解决方案,不是单个组。问题是我不确定如何为它编写规则,使其在规则中循环通过组对象。它不是重复的,应该有另一个多组访问的解决方案。链接的答案显示了如何处理组。没有更好的办法了。与您的示例不同的是,您使用了一个数组,当涉及Firebase时,它是一个反模式。Firebase建议不要使用数组的众多原因之一是,它使安全规则无法编写。有关详细信息,请参见和。如果您在Michael的答案中的解决方案是否适用于您的案例方面遇到问题,请编辑您的问题,使其包含最低限度的JSON和安全规则(以文本形式,无屏幕截图),我们将进行查看。@FrankvanPuffelen我确实在为一个位置的多个组寻找解决方案,没有一个单独的组。问题是我不知道如何为它编写规则,在规则中循环通过组对象。