服务器端的Firebase /高级过滤器,使用访问权限限制用户访问

时间:2018-02-27 20:29:47

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

他在那里,

这是我的情况(简化,因为实际上我的数据库中有更多元素)

我在Firebase中有3个元素:

1 - 访问权限列表,例如:

{ id: 'G01' }

2 - 具有各种属性和访问权限列表的用户列表,例如:

{ 
   id: '800', 
   name: 'rachel', 
   groups: {
       G01: true, 
       G02: true
   }
}

3 - 具有各种属性和访问权限列表的消息列表,例如:

{ 
   id: '430', 
   content: 'hi there', 
   groups: {
       G01: true,
       G03: true
   }
},
{ 
   id: '650', 
   content: 'hi there', 
   groups: {
       G03: true
   }
}

我的目标是仅向用户端返回授权用户的邮件(例如,' rachel'只能看到包含G01和G02组的邮件: id =' 430'消息)同时保持Firebase的实时性

我知道这个过滤器可以在请求服务器之前和/或之后在客户端完成,但我不想让用户拦截请求并修改过滤器(出于安全原因)

我研究了服务器端的Firebase功能,但它只涉及数据库中的更改(写入,删除,创建)

我还研究了控制台中可访问的规则系统,但除非我弄错了,否则无法回答我的需要。

有没有人有办法满足这种需求? 提前谢谢大家的帮助。

0 个答案:

没有答案