พรอมต์นี้ช่วยให้ผู้ช่วย 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แนวทางปฏิบัติแนะนำ
- หากต้องการเรียกใช้ Unit Test สำหรับ 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 MCP ก่อนใช้เครื่องมือเหล่านี้เพื่อสร้าง Firebase Security Rules
ข้อจำกัด
เรากำลังปรับปรุงประสบการณ์การใช้งานนี้อย่างต่อเนื่อง ดังนั้นรายการข้อจำกัดนี้จึงอาจมีการเปลี่ยนแปลง โปรดกลับมาดูข้อมูลอัปเดตบ่อยๆ
พรอมต์นี้ออกแบบมาเพื่อสร้าง Firebase Security Rules สำหรับ Cloud Firestore และ Cloud Storage for Firebase แต่ยังไม่สามารถสร้าง Security Rules สำหรับ Firebase Realtime Database ได้
Firebase Security Rules จะไม่ถูกเรียกใช้เมื่อเข้าถึงฐานข้อมูลหรือบัคเก็ตจากเซิร์ฟเวอร์ หรือสภาพแวดล้อมแบ็กเอนด์อื่นๆ เช่น เมื่อใช้ Firebase Admin SDK หาก ใช้ Admin SDK คุณมีหน้าที่รับผิดชอบในการจัดการการให้สิทธิ์ และการตรวจสอบข้อมูลในโค้ดแบ็กเอนด์
Gemini ใน Firebase ภายในคอนโซล Firebase ไม่สามารถสร้าง Firebase Security Rules ได้ แม้ว่าจะใช้พรอมต์นี้ก็ตาม ให้ใช้ผู้ช่วย AI อื่นที่มีสิทธิ์เข้าถึง ฐานของโค้ดแทน เช่น Antigravity (ซึ่งอธิบายไว้ในหน้านี้)
ใช้พรอมต์
ความสามารถนี้พร้อมใช้งานเมื่อใช้
เซิร์ฟเวอร์ Firebase MCP และ
ทักษะเอเจนต์ Firebase กับ
ผู้ช่วย AI ที่เข้ากันได้ (เช่น Antigravity) เพื่อสร้างSecurity Rules และ
การทดสอบ เครื่องมือเหล่านี้
จะวิเคราะห์ซอร์สโค้ดเพื่อช่วยระบุสคีมาข้อมูลและรูปแบบการเข้าถึงสำหรับ
Cloud Firestore และ Cloud Storage โดยออกแบบมาเพื่อร่างSecurity Rules
ตามหลักการให้สิทธิ์ขั้นต่ำที่สุด และพยายามค้นหา
ช่องโหว่ผ่านการจำลองการ "โจมตี" แบบวนซ้ำ เครื่องมือเหล่านี้มีชุดโปรแกรมทดสอบ Unit Test เริ่มต้นโดยใช้
@firebase/rules-unit-testing เพื่อช่วยในการตรวจสอบขั้นสุดท้าย
ซึ่งช่วยให้คุณตรวจสอบตรรกะความปลอดภัยในเครื่องได้โดยใช้ Firebase Local Emulator Suite
การใช้เครื่องมือเหล่านี้ต้องทำ 3 ขั้นตอน ซึ่งอธิบายไว้ในส่วนนี้
ขั้นตอนที่ 1: สร้าง Security Rules และการทดสอบ
ตั้งค่าและเรียกใช้เครื่องมือโดยทำดังนี้
เปิดใช้ทักษะเอเจนต์ Firebase
Google Antigravity: โปรดดู วิธีการตั้งค่า เพื่อติดตั้งปลั๊กอิน Firebase จาก Antigravity Marketplace นอกจากนี้ คุณยังติดตั้งทักษะในระดับโปรเจ็กต์ได้โดยเรียกใช้คำสั่งต่อไปนี้
npx skills add firebase/agent-skills --agent=antigravityเอเจนต์การเขียนโค้ดด้วย AI อื่นๆ: ทำตามวิธีการสำหรับ ทักษะเอเจนต์ และ เซิร์ฟเวอร์ MCP
เริ่มผู้ช่วย AI (เช่น เรียกใช้
agyในเทอร์มินัลสำหรับ CLI หรือเปิดแอปพลิเคชันบนเดสก์ท็อป)จากรูทของโปรเจ็กต์ ให้ขอให้เอเจนต์สร้าง Security Rules สำหรับ Cloud Firestore หรือ Cloud Storage โดยอิงตามวิธีที่เอเจนต์การเขียนโค้ดด้วย AI โต้ตอบกับพรอมต์ MCP:
สำหรับเอเจนต์การเขียนโค้ดที่ใช้ภาษาธรรมชาติ (เช่น Antigravity), ให้พรอมต์เอเจนต์โดยใช้ภาษาธรรมชาติ
สร้าง Security Rules สำหรับ Cloud Firestore:
Generate Firestore security rules for this project, then run the unit tests.ในไดเรกทอรีระดับบน เอเจนต์จะสร้างไฟล์
firestore.rulesและไดเรกทอรีsecurity_rules_test_firestoreใหม่ที่มี โปรเจ็กต์ Node.js พร้อม Unit Test สำหรับ Security Rules ที่สร้างขึ้นสร้าง Security Rules สำหรับ Cloud Storage for Firebase:
Generate Cloud Storage security rules for this project, then run the unit tests.ในไดเรกทอรีระดับบน เอเจนต์จะสร้างไฟล์
storage.rulesและไดเรกทอรีsecurity_rules_test_storageใหม่ที่มีโปรเจ็กต์ Node.js พร้อม Unit Test สำหรับ Security Rules ที่สร้างขึ้น
สำหรับเอเจนต์การเขียนโค้ดที่รองรับคำสั่งเครื่องหมายทับ (เช่น Claude Code) ให้ใช้คำสั่งต่อไปนี้
สร้าง Security Rules สำหรับ Cloud Firestore:
/firestore:generate_security_rulesสร้าง Security Rules สำหรับ Cloud Storage for Firebase:
/storage:generate_security_rules
สำหรับเอเจนต์การเขียนโค้ดที่ไม่รองรับการผสานรวมพรอมต์ MCP คุณสามารถ คัดลอกเทมเพลตพรอมต์ดิบจากที่เก็บ
firebase-toolsแล้ว วางลงในแชทของเอเจนต์- สร้าง Security Rules สำหรับ Cloud Firestore: คัดลอกพรอมต์จาก Cloud Firestore
- สร้าง Security Rules สำหรับ Cloud Storage for Firebase: คัดลอก พรอมต์จาก Cloud Storage for Firebase
ขั้นตอนที่ 2: ตรวจสอบ Security Rules การตรวจสอบและผลการทดสอบ
ตรวจสอบว่าเอเจนต์การเขียนโค้ดด้วย AI ได้ดำเนินการต่อไปนี้ คุณควรได้รับสรุปที่สร้างขึ้นหลังจากที่เครื่องมือทำงาน
การตรวจสอบไวยากรณ์: หลังจากสร้าง Security Rules แล้ว เอเจนต์การเขียนโค้ดด้วย AI จะตรวจสอบไวยากรณ์โดยอัตโนมัติโดยใช้คำสั่ง
firebase_validate_security_rulesจากเซิร์ฟเวอร์ Firebase MCPUnit Test: หลังจากตรวจสอบไวยากรณ์แล้ว เอเจนต์การเขียนโค้ดด้วย AI จะพยายาม เรียกใช้ Unit Test ที่สร้างขึ้นโดยใช้ Firebase Local Emulator Suite
หากการทดสอบไม่ทำงานโดยอัตโนมัติ เริ่ม Firebase Local Emulator Suite ในเทอร์มินัลแยกต่างหาก จากนั้นใช้ตัวเลือกใดตัวเลือกหนึ่งต่อไปนี้เพื่อเรียกใช้การทดสอบ:
ตัวเลือกที่ 1: สั่งให้ผู้ช่วย AI เรียกใช้การทดสอบ
Firebase Emulator Suite is running in a separate terminal. Please execute the tests.ตัวเลือกที่ 2: เรียกใช้การทดสอบด้วยตนเองโดยทำตามวิธีการในไฟล์
README.mdในไดเรกทอรีrules_testหรือstorage_rules_test
ขั้นตอนที่ 3: ติดตั้งใช้งาน Security Rules ในโปรเจ็กต์ Firebase
เมื่อพอใจกับผลลัพธ์ของ Security Rules ที่สร้างขึ้นแล้ว ให้ใช้ คำสั่ง CLI Firebase ต่อไปนี้เพื่อติดตั้งใช้งาน Security Rules ใน โปรเจ็กต์ Firebase
Cloud Firestore
firebase deploy --only firestore:rulesCloud Storage for Firebase
firebase deploy --only storage