只有拥有密钥值时,我才拥有公共访问权限的服务器列表。
基本上如果用户有对象密钥,那么他可以检索完整的子对象。但不应允许他访问对象列表。
对象示例
{
"servers": { // list of server
// list should not be access directly - no anonymous access
"key1": { // this object can be access anonymously, if user knows the key
"name": "linux"
//...
},
"key2": {
"name": "ubuntu"
}
}
}
如何在firebase中为上述对象制定此类安全规则?
答案 0 :(得分:0)
简单:
{
"rules": {
".read": false,
"servers": {
"$serverid": {
".read": true
}
}
}
}
由于root无法读取,因此/servers
也无法读取,只有在您拥有/servers/$serverid
后,读取操作才会生效。