【问题标题】:How do I deploy Firebase Database Security rules using the command line?如何使用命令行部署 Firebase 数据库安全规则?
【发布时间】:2016-11-11 14:33:18
【问题描述】:

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

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

This page 说有可能:“Firebase 存储规则”

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

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

谢谢!

【问题讨论】:

    标签: firebase firebase-realtime-database firebase-security firebase-tools


    【解决方案1】:

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

    firebase deploy --only firestore:rules
    

    【讨论】:

      【解决方案2】:

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

      请注意下面 firebase.json 格式"rules" 条目 "database" 条目下。

      取自Firebase Sample code.

      {
        "database": {
          "rules": "database-rules.json"
        },
        "hosting": {
          "public": "./",
          "ignore": [
            "firebase.json",
            "database-rules.json",
          ]
        }
      }
      

      【讨论】:

        【解决方案3】:

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

        您可以查看Firebase CLI Reference 了解更多信息

        【讨论】:

        • 如果使用 Firestore:firebase deploy --only firestore
        【解决方案4】:

        要部署一组新的安全规则,请将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 的内容发送到服务器,替换/更新任何规则配置。

        【讨论】:

        • 这个语法对我不起作用,请在此处查看我的答案
        • 是的,@LiorK 似乎有正确、最新的方式来指定数据库规则文件。
        猜你喜欢
        • 2016-09-16
        • 2018-08-05
        • 2020-08-08
        • 2018-12-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-15
        相关资源
        最近更新 更多