【发布时间】:2019-07-20 01:52:51
【问题描述】:
在这样的数据库中:
{
"users": {
"simplelogin:213": {
"provider": "password",
"name": "bobtony",
"friends": {
"Andrew Lee": true,
"James Tamplin": true
}
},
"twitter:123": {
"provider": "twitter",
"name": "Andrew Lee",
"friends": {}
},
"facebook:456": {
"provider": "facebook",
"name": "James Tamplin",
"friends": {}
}
},
"messages": {
"simplelogin:213": {
"-JkpwAnieKjQVsdtPD4m" : {
"content" : "Hello World"
}
}
}
}
考虑到 bobtony 将 Andrew Lee 添加为他的朋友,Andrew Lee 如何阅读 bobtony 消息?一个类似的问题问here,但没有好的解决方案。我知道我可以有一个规则来允许阅读消息,但是“朋友”用户只是不知道阅读它们的路径。
更新:经过一段时间的思考,我得到了:
{
"users": {
"user1": {
"name": "bobtony",
"partners": {
"user2": {
"accepted": true
}
},
"customers":{
"customer1": true,
"customer2": true
// hundreds of clients
},
"orders":{
"order1": true,
"order2": true
// hundreds of orders
}
}
},
"customers": {
"customer1": {
"name" : "james"
}
}
}
那么,有这样的东西可以吗?这样我就可以遍历自己的客户和合作伙伴的客户。
【问题讨论】:
标签: firebase firebase-security