[英]Authorize access to write and delete only if the user knows the node - Rules Firebase
我面临一个问题:我希望我的 web 程序的用户在 firebase 中写入和删除数据,前提是他知道它在哪里,我不明白必须应用什么规则。 例如,我的用户的 ID 是“785475”,我只想给他访问“/data/785475”的权限。 请问我该怎么做? 我必须使用身份验证吗?
提前致谢,祝您有美好的一天!
在 Firebase 安全规则权限级联中。 因此,在您的 model 和要求中,重要的是用户没有对/data
的读取权限,因为这意味着他们可以读取/data
及其下的所有节点。
诀窍是只授予他们访问/data
的各个子节点的权限:
{
"rules": {
"data": {
"$any": {
".write": true
}
}
}
}
使用上述节点,用户可以删除知道其键的任何现有节点,但他们无法读取(或查询)整个/data
节点以确定这些键。
要只允许他们覆盖现有数据,而不创建任何新节点,您可以执行以下操作:
{
"rules": {
"data": {
"$any": {
".write": "data.exists()"
}
}
}
}
有关此内容和其他示例的更多信息,请查看关于新数据与现有数据的 Firebase 文档。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.