修复“[Firebase] 您的 Cloud Firestore 数据库具有不安全的规则”

时间:2021-03-02 12:55:45

标签: firebase google-cloud-firestore shopify firebase-security shopify-app

在完成我的应用程序的开发后,我意识到我保留了不安全的规则,因为这是我使用 Firestore 的第一个主要项目,我必须解决一些问题,我更改了规则以允许我使用它。当我去关闭它时,整个应用程序停止工作,因为它只能通过这些规则访问它。我在这里阅读了很多回复,我知道这个问题之前已经被问过很多次了,但我真的被卡住了,不知道如何继续。

目前不需要注册,因为它在 shopify 应用程序上 - 商店所有者必须登录才能使用它,因此数据库有一个区域,例如 /users/,其中每个条目都是商店名称并保存其相关数据(因此人们不需要帐户即可使用它)。 Retool 上还有一个外部门户,可以编辑数据库中的所有这些记录 - 我认为这会使事情复杂化,因为我觉得需要两套规则。

我目前的规则:

// Allow read/write access to all users under any conditions
// Warning: **NEVER** use this rule set in production; it allows
// anyone to overwrite your entire database.
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if true;
    }
  }
}

我现在知道店主可以擦除或窃取其他店主的数据,并且到目前为止已经设置了每日备份,但还没有解决这个问题。我想知道我是否可以将数据库设置为允许商店所有者仍然读/写他们的部分,但也允许使用与 db 交互的 Retool 门户访问的人。

我不知道如何进行,任何帮助将不胜感激。我看到一些关于限制用户使用额外的服务器 REST api 层的说法,但不知道我将如何实现这一点以及是否必须更改规则。

0 个答案:

没有答案