這項提示可協助 AI 助理 (例如 Google Antigravity) 為應用程式生成及調整 Firebase Security Rules。您可以使用提示草擬常見用途的 Security Rules,例如授予使用者專屬存取權、實作角色式權限,以及驗證資料。
這項提示詞的重點是生成以下內容的 Security Rules:
- Cloud Firestore:根據應用程式邏輯保護集合和文件。
- Cloud Storage for Firebase:驗證儲存檔案的存取權限。
使用這項提示,可協助您從一開始就建立強大的資安態勢,但部署至正式環境前,請務必徹底測試 Security Rules。如要進一步瞭解如何測試 Security Rules,請參閱「開始使用 Firebase Security Rules:測試 Security Rules」。
必要條件
- 熟悉 Firebase Security Rules 最佳做法。
- 如要執行 Firebase Security Rules 的單元測試並使用 Firebase Local Emulator Suite,請安裝 Node.js 和 Firebase CLI。如需完整操作說明,請參閱「安裝、設定及整合 Firebase Local Emulator Suite」。
- 建議:如果尚未安裝,請安裝 Antigravity。下列操作說明將介紹如何啟用及使用 Firebase 代理程式技能和 MCP 伺服器,產生 Security Rules。如要使用其他 AI 程式設計代理,可以將 Cloud Firestore 或 Cloud Storage for Firebase 的提示詞從
firebase-tools存放區複製並貼到所選的 AI 程式設計代理。 - Firebase 代理技能和 MCP 伺服器會搭配運作,存取生成及驗證 Firebase Security Rules 的提示,並協助測試及部署 Security Rules。使用這些工具生成 Firebase Security Rules 前,請先安裝 Firebase MCP 伺服器。
限制
我們正在積極改善這項功能,因此這份限制清單可能會有所變動。請經常回來查看最新消息。
提示詞旨在為 Cloud Firestore 和 Cloud Storage for Firebase 生成Firebase Security Rules。目前無法生成Firebase Realtime Database的Security Rules。
從伺服器或其他後端環境存取資料庫或 bucket 時 (例如使用 Firebase Admin SDK 時),不會呼叫 Firebase Security Rules。如果您使用 Admin SDK,則必須在後端程式碼中管理授權和資料驗證。
Firebase 控制台中的 Gemini in Firebase 無法生成 Firebase Security Rules,即使使用這則提示也一樣。請改用可存取程式碼集的其他 AI 助理,例如 Antigravity (本頁會說明)。
使用提示詞
使用 Firebase MCP 伺服器和 Firebase 代理技能,搭配相容的 AI 助理 (例如 Antigravity) 生成 Security Rules 和測試時,即可使用這項功能。這些工具會分析原始碼,協助找出 Cloud Firestore 和 Cloud Storage 的資料結構定義和存取模式。這些指令會根據最小權限原則草擬 Security Rules,並透過反覆的「攻擊」模擬嘗試找出安全漏洞。為協助完成最終驗證,他們使用 @firebase/rules-unit-testing 提供起始單元測試套件,讓您使用 Firebase Local Emulator Suite 在本機驗證安全性邏輯。
使用這些工具需要三個步驟,本節將說明這些步驟:
步驟 1:生成 Security Rules 和測試
設定及執行工具:
啟用 Firebase 代理技能:
啟動 AI 助理 (例如,在終端機中執行
agy,或開啟桌面應用程式)。在專案根目錄中,根據 AI 程式設計代理與 MCP 提示的互動方式,要求代理為 Cloud Firestore 或 Cloud Storage 生成 Security Rules:
如果是使用自然語言的程式設計代理 (例如 Antigravity),請使用自然語言提示代理。
為Cloud Firestore產生Security Rules:
Generate Firestore security rules for this project, then run the unit tests.代理會在上層目錄中建立
firestore.rules檔案和新的security_rules_test_firestore目錄,其中包含 Node.js 專案,並針對生成的 Security Rules 進行單元測試。為Cloud Storage for Firebase產生Security Rules:
Generate Cloud Storage security rules for this project, then run the unit tests.代理會在上層目錄中建立
storage.rules檔案和新的security_rules_test_storage目錄,其中包含 Node.js 專案,並針對生成的 Security Rules 進行單元測試。
如果程式設計代理支援斜線指令 (例如 Claude Code),請使用下列指令。
為Cloud Firestore產生Security Rules:
/firestore:generate_security_rules為Cloud Storage for Firebase產生Security Rules:
/storage:generate_security_rules
對於不支援 MCP 提示詞整合的程式設計代理,您可以從
firebase-tools存放區複製原始提示詞範本,然後貼到代理的對話中。- 生成 Security Rules Cloud Firestore:從 Cloud Firestore複製提示。
- 生成Cloud Storage for Firebase的Security Rules:複製Cloud Storage for Firebase中的提示。
步驟 2:查看 Security Rules 驗證和測試結果
請確認 AI 程式設計代理已完成下列事項。工具執行完畢後,系統會產生摘要。
語法驗證:產生 Security Rules 後,AI 程式碼編寫代理程式會使用 Firebase MCP 伺服器的
firebase_validate_security_rules指令,自動驗證語法。單元測試:驗證語法後,AI 程式設計代理會嘗試使用 Firebase Local Emulator Suite 執行生成的單元測試。
如果測試未自動執行,請在另一個終端機中啟動 Firebase Local Emulator Suite,然後使用下列其中一個選項執行測試:
選項 1:指示 AI 助理執行測試:
Firebase Emulator Suite is running in a separate terminal. Please execute the tests.方法 2:按照
rules_test或storage_rules_test目錄中README.md檔案的指示,手動執行測試。
步驟 3:將 Security Rules 部署至 Firebase 專案
如果對產生的 Security Rules 結果感到滿意,請使用下列 Firebase CLI 指令,將 Security Rules 部署至 Firebase 專案:
Cloud Firestore
firebase deploy --only firestore:rulesCloud Storage for Firebase
firebase deploy --only storage