Firebase Security Rules 提供完善且可完全自訂的防護機制 Cloud Firestore、Realtime Database和Cloud Storage。您可以輕鬆取得 開始使用 Rules,以確保您的 保護應用程式免受惡意使用者侵擾
瞭解Firebase Security Rules語言
開始撰寫規則前,建議您花點時間查看所用 Firebase 產品的特定 Firebase Security Rules 語言。Realtime Database 會使用類似 JavaScript 的語法和 JSON 結構來導入
Rules。或者,Cloud Firestore 和 Cloud Storage 會使用超集
依賴 match
和 allow
的一般運算語言 (CEL)
陳述式,用來在定義的路徑上設定存取條件。
進一步瞭解 Firebase Security Rules 語言。
設定「Authentication」
如果您尚未使用 Firebase Authentication 識別使用者,請先執行這項動作。 Firebase Authentication 支援多種常見的驗證方法,且已與 Firebase Security Rules,提供全面的驗證功能。
您可以為應用程式設定其他自訂驗證資訊。
進一步瞭解 Firebase Security Rules 與 Firebase Authentication。
定義資料和規則結構
您建構資料的方式可能會影響您建構和追蹤資料的 並實作規則定義資料結構時,請將 他們在 Rules 結構上可能造成的影響
舉例來說,您可能想在 Cloud Firestore 中加入一個欄位,用來表示每位使用者的特定角色。這樣一來,您的規則就能讀取並使用該欄位 授予角色型存取權
定義資料和規則架構時,請留意,如果任何 規則授予資料集存取權,Firebase Security Rules 則會授予該資料集的存取權。於 換句話說,如果您在 資料階層上限
存取規則
如要查看現有的 Rules,請使用 Firebase CLI 或 Firebase 主控台。請務必使用相同的方式編輯規則 以避免意外覆寫更新。如果您不確定 無論您在本機定義的規則是否反映最近的更新 控制台一律會顯示 Firebase Security Rules 最近部署的版本。
如要透過 Firebase 控制台存取規則,請選取 ,然後前往 Realtime Database、Cloud Firestore 或 儲存空間:連結至正確的資料庫或儲存空間後,按一下「規則」 Cloud Storage 也提供目錄同步處理功能 方便您同步處理 VM 目錄與值區
如要透過 Firebase CLI 存取規則,請前往 在 firebase.json 檔案中記下的規則。
撰寫基本規則
開發應用程式及瞭解「Rules」的過程中, 導入幾項基本安全性規則,包括以下項目 用途
- 僅限內容擁有者:限制使用者存取內容。
- 混合存取權:限制使用者的寫入權限,但允許公開讀取。
- 屬性存取權:限制特定群組或使用者類型的存取權。
測試規則
如何完整驗證應用程式行為並驗證 Firebase Security Rules
請使用 Firebase 模擬器來執行及自動執行單元設定
在本機環境中進行測試。
如果您在 Firebase 控制台中設定 Firebase Security Rules,可以使用 Firebase 規則模擬工具,可用來快速驗證行為。不過,我們 建議您先使用 Firebase Emulator 進行更徹底的測試,再部署 變更正式環境
部署規則
請使用 Firebase 控制台或 Firebase CLI 部署規則 Google 提供端對端開發平台 可將實驗階段的機器學習模型轉換至正式版環境請按照 管理及部署 Firebase Security Rules。