1

服务元素放在database.rules.jsonfirebase客户端使用的文件中的位置,即:

{
  "rules": {
    ".read": "auth != null",
    ".write": "auth != null",
  }
}

我假设上述内容适用于 Cloud Firestore 和实时数据库?

我有一个 Cloud Firestore 规则,我想保留在 json 文件中,以便它可以进行源代码控制和自动部署。这是firestore中显示的规则:

service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if true;
    }
    match /photos {
      allow read, write: if request.auth != null;
    }
    match /users/{user} {
        allow read: if request.auth != null;
      allow write: if request.auth.uid == user.id)
    }
  }
}

如何更新我的database.rules.json文件以开始保持同步?我是否需要在规则下添加 cloud.firestore 元素?它去哪儿了?Firestore 规则是否保存在一个完全独立的文件中?

4

2 回答 2

1

我认为您必须将这些规则放在一个名为firestore.rules.

第一组规则(即 中的规则database.rules.json)仅适用于实时数据库。

于 2018-05-15T13:20:57.457 回答
1

Firebase 实时数据库安全规则与Cloud Firestore 安全规则完全不同。您不能同时拥有两个文件,也没有自动化流程可以让它们保持同步,无论这对您意味着什么。运行时firebase init,告诉它您要同时初始化实时数据库和 Firestore,它会为规则建议不同文件的名称。

于 2018-05-15T13:31:30.937 回答