【发布时间】:2018-02-26 17:01:48
【问题描述】:
我是 firebase 新手,我正在构建一个小型 SPA。 我可以设置如下安全规则。 (只有经过身份验证的用户才能读取或写入自己的项目。)
{
"rules": {
"users":{
"$uid":{
".read": "$uid === auth.uid",
".write": "$uid === auth.uid"
}
}
}
}
这很好,但是当我登录我的应用程序时,检查源代码并尝试在 项目表单 中添加隐藏的额外对象,firebase 仍然接受它。
在此屏幕截图中,blablab、blablabla 等对象是从 Chrome 的检查工具中添加的。
因为数据结构必须是这样的
users-->userId-->projects-->unquieKey-->project_title
但是我添加之后,db结构就乱了。
我想知道如何防止有人发送额外的数据或垃圾邮件对象?
【问题讨论】:
-
登录后您可以发送数据,因为您是经过身份验证的用户
-
这是否意味着每个用户(经过身份验证的)都可以向数据库发送垃圾邮件数据?我认为将有一个很好的选择来保护它。也许,我还不知道。
-
看看this answer关于验证你的firebase规则中的数据结构。
标签: firebase firebase-realtime-database firebase-security