Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

快速驗證 Firebase 安全規則

要在 Firebase 控制台中快速測試更新的 Firebase 安全規則,請使用 Rules Playground。

當您探索新行為或在編寫規則時快速驗證規則時,規則操場是一種方便的工具。它顯示一條消息,確認根據您為模擬設置的參數允許或拒絕訪問。

使用規則遊樂場

  1. 打開火力地堡控制台,並選擇您的項目。
  2. 然後,從產品導航中,執行以下操作之一:
    • 選擇實時數據庫雲計算公司的FireStore,寄存,適當,然後單擊規則導航到規則編輯器。
  3. 一旦您完成了您的編輯,在編輯器中單擊規則遊樂場
  4. 規則遊樂場設置,選擇選項,為您的測試,其中包括:
    • 測試讀取或寫入。
    • 具體位置在你的數據庫或存儲桶,為路徑。
    • 身份驗證類型 — 未經身份驗證、經過身份驗證的匿名用戶或特定用戶 ID。
    • 您的規則專門引用的特定於文檔的數據(例如,如果您的規則要求在允許寫入之前存在特定字段)。
  5. 單擊運行,並期待在編輯器上方的橫幅結果。

示例規則遊樂場場景

使用以下示例場景和基本規則測試 Rules Playground 行為。

雲防火牆

service cloud.firestore {
  match /databases/{database}/documents {
    // Allow only authenticated content owners access
    match /some_collection/{document} {
      allow read, write: if request.auth != null && request.auth.uid == request.resource.data.author_uid
      }
    }
  }

實時數據庫

 // These rules grant access to a node matching the authenticated
 // user's ID from the Firebase auth token
 {
   "rules": {
     "users": {
       "$uid": {
         ".read": "$uid === auth.uid",
         ".write": "$uid === auth.uid"
       }
     }
   }
 }
 

雲儲存

// Grants a user access to a node matching their user ID
service firebase.storage {
  match /b/{bucket}/o {
    // Files look like: "user/<UID>/path/to/file.txt"
    match /user/{userId}/{allPaths=**} {
      allow read, write: if request.auth != null && request.auth.uid == userId;
    }
  }
}
  • 在規則編輯器中,添加上面給出的規則。

  • 選擇從模擬類型下拉菜單中獲得,並在位置字段中輸入一個有效的路徑。

  • 切換上的身份驗證,並從供應商drodpdown認證類型。

  • 輸入用戶ID信息,然後點擊運行

模擬結果顯示在編輯器的頂部。根據您輸入的用戶 ID 詳細信息,您應該會看到一個橫幅,確認成功允許或拒絕讀取。