web-dev-qa-db-ja.com

コマンドラインを使用してFirebase Database Securityルールを展開するにはどうすればよいですか?

Firebaseの旧バージョンでは、rulesセクションをfirebase.jsonファイルに追加し、デプロイするたびに新しいセキュリティルールをアップロードできました。

firebase-tools v3コマンドラインツールを使用してデータベースセキュリティルールを展開するにはどうすればよいですか?

このページ は可能だと言っています:「Firebase Storageのルール」

このページ コマンドラインツールで実行できることを示唆していますが、firebase --helpおよびfirebase deploy --helpはその実行方法を示唆していないようです。 (それを見逃した場合はおpびします...)

(関連:firebase.jsonに入ることができるすべての標準ドキュメントはどこにありますか?古いFirebaseサイトで見つけましたが、新しいドキュメントで検索して見つけることができません。)

ありがとう!

31
Seth Ladd

データベースルールのみを更新する場合は、firebase deploy --only databaseを使用できます。既存のルールが上書きされます。

詳しくは Firebase CLI Reference をご覧ください

43
jpdelatorre

コマンドラインからfirebase deployまたはfirebase deploy --only databaseを使用できます(BUT最も重要:

注意してくださいunderunderfirebase.jsonformat"rules"エントリはunder "database"エントリ。

Firebaseサンプルコード

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

セキュリティルールの新しいセットを展開するには、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の内容がサーバーに送信され、ルール設定が置き換え/更新されます。

7
Seth Ladd