Firebase realtime database 如何配置Firebase relatime数据库规则?
我们收到Firebase关于实时数据库有不安全规则的警告电子邮件。这是真的,但我正在努力改变它们。我们的应用程序大约有两个应用程序,在乘客和司机之间具有聊天功能 这是我们存储在数据库中的内容: 目前我们有:Firebase realtime database 如何配置Firebase relatime数据库规则?,firebase-realtime-database,firebase-security,Firebase Realtime Database,Firebase Security,我们收到Firebase关于实时数据库有不安全规则的警告电子邮件。这是真的,但我正在努力改变它们。我们的应用程序大约有两个应用程序,在乘客和司机之间具有聊天功能 这是我们存储在数据库中的内容: 目前我们有: { "rules": { ".read": true, ".write": true } } 如果数据库读或写请求中提供了driverId/passengerId,则应授予访问权限。 非常感谢您的帮助
{
"rules": {
".read": true,
".write": true
}
}
如果数据库读或写请求中提供了driverId/passengerId,则应授予访问权限。
非常感谢您的帮助。您的规则允许任何人在任何地方读写任何东西。您应该使用身份验证(以便能够通过规则中用户的UID识别用户),构建数据库,以便具有不同访问逻辑的信息存储在不同的路径中,然后编写规则以强制执行您的访问逻辑。我只有有关Firebase规则的基本信息。我希望我下面的规则能帮助你,或者至少能给你一些关于如何处理你的情况的想法。 因此,基本上对于读写请求,我们将检查您的数据是否包含
passengerId
的driverId
字段:
{
"rules": {
"chats": {
".read": data.hasChildren([‘driverId’, ‘passengerId’]) === "true"
".write": newData.hasChildren([‘driverId’, ‘passengerId’]) === "true"
}
}
}
这里,newData
对应于传入数据,data
对应于数据库中已经存在的数据
有关安全规则,可以在Firebase的官方文档中找到更多帮助。我想这个问题没有解决方案了吧?任何Firebase专家都可以,所以??我认为你们应该使用身份验证部分。有可能重新设计项目的工作流程吗?实际上,这不起作用。我尝试了以下规则,但它们给出了权限错误:{“规则”:{“$chat”:{“$trip”:{“$text”:{.read”:“data.haschilds(['driverId',passengerId'])==true”,“.write”:“newData.haschilds(['driverId',passengerId'])==true}}