0
我的應用程序允許任何人寫一封新消息(消息不能更新或刪除),該消息應該只對經過驗證的用戶可見。經過身份驗證的用戶可以編輯數據(其中包括標記等重要事項等)。將應用視爲私人建議框(任何人都可以提交建議,但只有管理員可以查看提交的建議)。我使用的火力地堡模擬器和下面的失敗,但它不應該:設置規則,允許未經身份驗證的用戶只在Firebase數據庫中寫入新數據
火力地堡模擬器
- 寫
- 地點:消息/
- 驗證:假
數據(JSON)
「{key:」value「 }
火力地堡的數據庫規則
{
"rules": {
"messages": {
"$message": {
".read": "auth !== null",
".write": "!data.exists() || auth !== null",
},
},
"users": {
".read": "auth !== null",
".write": "auth !== null"
}
}
}
您分享的規則乍看起來很正確:對於任何非管理用戶,應該拒絕寫入'/ messages'。你可以發佈模擬器屏幕截圖包含相同的信息? –
@FrankvanPuffelen我添加了一個截圖,所以這個問題可能會有益於未來的人。下面的答案解決了我的問題。謝謝! – blahblahblah