【发布时间】:2019-01-18 00:51:21
【问题描述】:
我正在尝试为我的 Firebase 实时数据库设置规则,但我不知道它们为什么不起作用。这是数据顶部的样子:
假设我想允许用户读取他们的用户名与该数据中的名称字段匹配的数据。我认为这样的事情会起作用
{
"rules": {
"lauri_laurela" :{
"$requestid" :{
".read" : "data.child('name').val() == auth.token.name",
}
}
}
}
不幸的是,这对我不起作用。为了学习,我什至尝试过这个
{
"rules": {
"lauri_laurela" :{
"$requestid" :{
".read" : "data.child('name').exists()",
}
}
}
}
甚至
{
"rules": {
"lauri_laurela" :{
"$requestid" :{
".read" : true,
}
}
}
}
这是怎么做到的
{
"rules": {
"lauri_laurela" :{
".read" : true,
}
}
}
【问题讨论】:
-
为什么不用用户 UID 而不是用户名?
-
我计划稍后通过对 Andre 进行更改来使系统更加安全。但现在我的问题是,我什至无法让规则雇佣制发挥作用。
-
我建议立即使用 UID。我个人认为在安全规则中使用起来要容易得多,并且使用 uid 的示例更多
-
另外请附上您用来测试这些规则的代码。
-
我在问题中添加了另外 2 个规则代码。问题是由于某种原因我的通配符标记不起作用,但我需要帮助找出原因。
标签: firebase firebase-realtime-database firebase-security