37

在旧版本的 Firebase 中,我们可以在文件中添加一个rules部分firebase.json,并在每次部署时上传新的安全规则。

我们如何使用firebase-toolsv3 命令行工具来部署数据库安全规则?

这个页面说它是可能的:“Firebase 存储规则”

此页面提示命令行工具可以做到这一点,但firebase --help似乎firebase deploy --help没有提示如何做到这一点?(如果错过了请见谅……)

(相关:可以进入的所有内容的规范文档在哪里firebase.json?我在旧的 Firebase 网站上找到了它,但无法通过搜索新文档找到它。)

谢谢!

4

4 回答 4

56

firebase deploy --only database如果您只想更新数据库规则,则可以使用。它将覆盖您现有的规则。

您可以查看Firebase CLI 参考以获取更多信息

于 2016-09-04T13:19:20.783 回答
30

您可以使用firebase deployfirebase deploy --only database从命令行使用,但最重要的是:

请注意以下 firebase.json 格式:该"rules"条目正在 "database"条目中。

它取自Firebase 示例代码。

{
  "database": {
    "rules": "database-rules.json"
  },
  "hosting": {
    "public": "./",
    "ignore": [
      "firebase.json",
      "database-rules.json",
    ]
  }
}
于 2016-11-27T20:00:03.007 回答
9

使用 firebase cli 部署一组新的安全规则

firebase deploy --only firestore:rules
于 2020-06-12T18:00:28.733 回答
8

要部署一组新的安全规则,请将rules顶级密钥添加到您的firebase.json.

示例firebase.json文件:

{
  "rules": "firebase_rules.json",
  "hosting": {
    "public": "doc",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ]
  }
}

firebase_rules.json是一个包含安全规则的 JSON 文件。这是一个例子:

{
  "rules": {
    ".read": false,
    ".write": false
  }
}

当您运行时firebase deploy,它会将 的内容发送firebase_rules.json到服务器,替换/更新任何规则配置。

于 2016-07-08T23:18:45.007 回答