【发布时间】:2016-09-03 15:45:35
【问题描述】:
正如标题所示,我想将数据库不同部分的访问权限授予不同的用户。我只在谷歌官方文档中找到了以下内容:
{
"rules": {
"users": {
"$uid": {
".write": "$uid === auth.uid"
}
}
}
}
我想要做的是访问数据库中任意命名的节点。例如,我想让多个用户访问同一个节点,这种方法不起作用。我尝试了以下方法:
{
"rules": {
"users": {
"myNode": {
".write": "auth.uid === 1EAwd9b6d9YloPlLpf0tpyztKR12"
}
}
}
}
但它似乎不起作用。
提前感谢您的帮助!
【问题讨论】:
-
您需要将字符串值放在引号中。另外:如果您希望规则特定于当前用户,请使用
auth.uid。所以:".write": "auth.uid === '1EAwd9b6d9YloPlLpf0tpyztKR12'"。我强烈建议您端到端阅读 Firebase 数据库安全指南,因为它包含更多信息:firebase.google.com/docs/database/security -
@FrankvanPuffelen 我只是通过实验发现了这一点,但无论如何谢谢!另外:我阅读了 Firebase 数据库安全指南,但没有找到解决问题的方法
-
@FrankvanPuffelen 您指出的“$uid”错误只是stackoverflow 问题中的错字。在我的原始代码中,我使用了 ''auth.uid"
标签: firebase firebase-realtime-database firebase-authentication firebase-security