Javascript 是否可以仅公开Firebase DB中对象的某些字段,以便使用Firebase权限进行读取访问? 让我们考虑JSON对象文字的以下结构,它可以表示FielBaseDb: { "users": { "user0": { "name": "Mike", "age": 20, "relationship": "married", "friends": [...] }, "user1": { "name": "Sarah", "age": 20, "relationship": "single", "friends": [...] }, ... } }
使用,是否可以使Javascript 是否可以仅公开Firebase DB中对象的某些字段,以便使用Firebase权限进行读取访问? 让我们考虑JSON对象文字的以下结构,它可以表示FielBaseDb: { "users": { "user0": { "name": "Mike", "age": 20, "relationship": "married", "friends": [...] }, "user1": { "name": "Sarah", "age": 20, "relationship": "single", "friends": [...] }, ... } },javascript,json,firebase,firebase-realtime-database,firebase-security,Javascript,Json,Firebase,Firebase Realtime Database,Firebase Security,使用,是否可以使姓名和年龄人人可读(通过将相应的权限设置为真),但关系状态仅对更细粒度的受众可见,例如用户朋友 我必须如何编写我的安全规则.json才能实现这一点?就我个人而言,对于您希望所有用户读取的数据和您只希望一些用户读取的数据,我有不同的路径。现在这看起来似乎很痛苦,但在继续开发应用程序时,很有可能会添加或更改用户的属性。每次这样做时,都必须添加到数据库安全规则中 也就是说,如果仍然希望使用数据库安全规则来处理权限,则可以为要保护的每个路径编写规则。例如: "rules": {
姓名
和年龄
人人可读(通过将相应的权限设置为真
),但关系
状态仅对更细粒度的受众可见,例如用户朋友
我必须如何编写我的
安全规则.json
才能实现这一点?就我个人而言,对于您希望所有用户读取的数据和您只希望一些用户读取的数据,我有不同的路径。现在这看起来似乎很痛苦,但在继续开发应用程序时,很有可能会添加或更改用户的属性。每次这样做时,都必须添加到数据库安全规则中
也就是说,如果仍然希望使用数据库安全规则来处理权限,则可以为要保护的每个路径编写规则。例如:
"rules": {
"users": {
"$user": {
"relationship": {
".read": <some condition>
}
}
}
}
“规则”:{
“用户”:{
“$user”:{
“关系”:{
“.改为”:
}
}
}
}
查看示例