我有一个像这样的数据库树
users
-UID
--items
---all the data
我想在UID下添加诸如shared:another-UID之类的内容,并允许其他UID读取和写入项下的所有内容。
例如:
users
-UID
--shared:different_UID
--items
---all the data
我当前的规则是这样的
{
"rules": {
"users": {
"$uid": {
".read": "auth != null && auth.uid == $uid",
".write": "auth != null && auth.uid == $uid"
}
}
}
}
我如何更改规则以允许这样做?
答案 0 :(得分:0)
在这种情况下,您的规则将变为:
{
"rules": {
"users": {
"$uid": {
".read": "auth != null && (auth.uid == $uid || data.child('shared').val() === auth.uid)",
".write": "auth != null && (auth.uid == $uid || data.child('shared').val() === auth.uid)"
}
}
}
}
也就是说,如果密钥与用户ID相同,或者用户ID存储在数据下的shared
属性中,则用户可以读取/写入此数据。