Bu istem, yapay zeka asistanınızın (ör. Google Antigravity) uygulamanız için Firebase Security Rules oluşturmasına ve iyileştirmesine yardımcı olabilir. İstem, kullanıcıya özel erişim verme, role dayalı izinler uygulama ve verileri doğrulama gibi yaygın kullanım alanları için Security Rules taslağı oluşturmak üzere kullanılabilir.
Bu istem, aşağıdaki öğeler için Security Rules oluşturmaya odaklanır:
- Cloud Firestore: Uygulamanızın mantığına göre koleksiyonları ve dokümanları güvenli hale getirin.
- Cloud Storage for Firebase: Saklanan dosyalarınızın erişim izinlerini doğrulayın.
Bu istemi kullanmak, güçlü bir güvenlik duruşuyla başlamanıza yardımcı olabilir ancak üretime dağıtmadan önce Security Rules uygulamanızı her zaman kapsamlı bir şekilde test etmeniz gerekir. Security Rules test etme hakkında daha fazla bilgi için Firebase Security Rules'ı kullanmaya başlama: Security Rules test etme başlıklı makaleyi inceleyin.
Ön koşullar
- Firebase Security Rules En iyi uygulamalar hakkında bilgi edinin.
- Firebase Security Rules için birim testleri çalıştırmak ve Firebase Local Emulator Suite kullanmak üzere Node.js'yi ve Firebase KSA'yı yükleyin. Talimatların tamamı için Firebase Local Emulator Suite'ı yükleme, yapılandırma ve entegre etme başlıklı makaleyi inceleyin.
- Önerilen: Henüz yapmadıysanız Antigravity'ı yükleyin.
Aşağıdaki talimatlarda, Security Rules oluşturmak için Firebase aracı becerilerinin ve MCP sunucusunun nasıl etkinleştirilip kullanılacağı açıklanmaktadır. Başka bir yapay zeka kodlama aracını kullanmayı tercih ederseniz
firebase-toolsdeposundaki Cloud Firestore veya Cloud Storage for Firebase istemini kopyalayıp seçtiğiniz yapay zeka kodlama aracına yapıştırabilirsiniz. - Firebase aracısı becerileri ve MCP sunucusu, Firebase Security Rules oluşturan ve doğrulayan istemlere erişmek için birlikte çalışır. Ayrıca Security Rules'nin test edilmesi ve dağıtılmasına yardımcı olur. Firebase MCP sunucusunu yükleyin Bu araçları Firebase Security Rules oluşturmak için kullanmadan önce.
Sınırlamalar
Bu deneyimi iyileştirmek için çalışmalarımız devam ediyor. Bu nedenle, sınırlamaların listesi değişebilir. Güncellemeler için sık sık kontrol edin.
İstem, Cloud Firestore ve Cloud Storage for Firebase için Firebase Security Rules oluşturacak şekilde tasarlanmıştır. Henüz Firebase Realtime Database için Security Rules oluşturamıyor.
Firebase Security Rules, veritabanınıza veya paketinize bir sunucudan ya da başka bir arka uç ortamından erişilirken (ör. Firebase Admin SDK kullanılırken) çağrılmaz. Admin SDK kullanıyorsanız yetkilendirme ve veri doğrulama işlemlerini arka uç kodunuzda yönetmekten siz sorumlusunuz.
Firebase konsolundaki GeminiFirebase, bu istem kullanıldığında bile Firebase Security Rules oluşturamıyor. Bunun yerine, kod tabanınıza erişimi olan alternatif bir yapay zeka asistanı (ör. bu sayfada açıklanan Antigravity) kullanın.
İstemi kullanma
Bu özellik, Security Rules ve testlerinizi oluşturmak için uyumlu bir yapay zeka asistanıyla (ör. Antigravity) birlikte Firebase MCP sunucusu ve Firebase aracı becerileri kullanılırken kullanılabilir. Bu araçlar, Cloud Firestore ve Cloud Storage için veri şemalarını ve erişim kalıplarını belirlemeye yardımcı olmak üzere kaynak kodunuzu analiz eder. Bu araçlar, en az ayrıcalık ilkesine göre tasarlanmıştır Security Rules
ve yinelemeli "saldırı" simülasyonları aracılığıyla güvenlik açıklarını ortaya çıkarmaya çalışır. Son doğrulama sürecine yardımcı olmak için @firebase/rules-unit-testing kullanarak bir başlangıç birim testi paketi sağlarlar. Bu sayede, Firebase Local Emulator Suite kullanarak güvenlik mantığınızı yerel olarak doğrulayabilirsiniz.
Bu araçları kullanmak için üç adım gerekir. Bu adımlar bu bölümde açıklanmıştır:
Security Rules Doğrulama ve test sonuçlarını inceleyin.
1. adım: Security Rules ve testler oluşturun
Araçları ayarlayıp çalıştırın:
Firebase agent becerilerini etkinleştirin:
Google Antigravity: Firebase entegrasyon paketini etkinleştirmek için kurulum talimatlarına bakın. KSA'yı kullanıyorsanız aşağıdaki komutu çalıştırarak becerileri etkinleştirebilirsiniz:
npx skills add firebase/agent-skills --agent=antigravityDiğer yapay zeka kodlama aracıları: Aracı becerileri ve MCP sunucusu ile ilgili talimatları uygulayın.
Yapay zeka asistanınızı başlatın (ör. CLI için terminalinizde
agykomutunu çalıştırın veya masaüstü uygulamasını açın).Projenizin kökünden, yapay zeka kodlama aracınızın MCP istemleriyle nasıl etkileşim kurduğuna bağlı olarak, aracıdan Security Rules Cloud Firestore veya Cloud Storage için oluşturmasını isteyin:
Doğal dil kullanan kodlama aracıları (ör. Antigravity) için, aracıya doğal dil kullanarak istem girin.
Cloud Firestore için Security Rules oluşturun:
Generate Firestore security rules for this project, then run the unit tests.Üst dizinde, aracı
firestore.rulesdosyası ve oluşturulan Security Rules için birim testleri içeren bir Node.js projesi içeren yeni birsecurity_rules_test_firestoredizini oluşturur.Cloud Storage for Firebase için Security Rules oluşturun:
Generate Cloud Storage security rules for this project, then run the unit tests.Üst dizinde, aracı
storage.rulesdosyası ve oluşturulan Security Rules için birim testleri içeren bir Node.js projesi içeren yeni birsecurity_rules_test_storagedizini oluşturur.
Eğik çizgi komutlarını destekleyen kodlama aracıları (ör. Claude Code) için aşağıdaki komutları kullanın.
Cloud Firestore için Security Rules oluşturun:
/firestore:generate_security_rulesCloud Storage for Firebase için Security Rules oluşturun:
/storage:generate_security_rules
MCP istem entegrasyonunu desteklemeyen kodlama aracıları için,
firebase-toolsdeposundan ham istem şablonunu kopyalayıp aracının sohbetine yapıştırabilirsiniz.- Cloud Firestore için Security Rules oluşturma: İstemleri Cloud Firestore'dan kopyalayın.
- Cloud Storage for Firebase için Security Rules oluşturma: Cloud Storage for Firebase istemini kopyalayın.
2. adım: Security Rules doğrulama ve test sonuçlarını inceleyin
Yapay zeka kodlama aracınızın aşağıdakileri yaptığından emin olun. Araçlar çalıştırıldıktan sonra oluşturulmuş bir özet alırsınız.
Söz dizimi doğrulama: Security Rules oluşturulduktan sonra yapay zeka kodlama aracınız, Firebase MCP sunucusundan
firebase_validate_security_ruleskomutunu kullanarak söz dizimini otomatik olarak doğrular.Birim testleri: Söz dizimi doğrulandıktan sonra yapay zeka kodlama aracınız, Firebase Local Emulator Suite kullanarak oluşturulan birim testlerini çalıştırmaya çalışır.
Testler otomatik olarak çalışmıyorsa, Firebase Local Emulator Suite'ı ayrı bir terminalde başlatın, ardından testleri çalıştırmak için aşağıdaki seçeneklerden birini kullanın:
1. seçenek: Yapay zeka asistanınıza test çalıştırması talimatı verin:
Firebase Emulator Suite is running in a separate terminal. Please execute the tests.2. seçenek:
rules_testveyastorage_rules_testdizinindekiREADME.mddosyasında yer alan talimatları uygulayarak testleri manuel olarak çalıştırın.
3. adım: Security Rules'ı Firebase projenize dağıtın
Oluşturduğunuz Security Rules sonucundan memnun kaldığınızda Security Rules öğesini Firebase projenize dağıtmak için aşağıdaki Firebase KSA komutlarını kullanın:
Cloud Firestore
firebase deploy --only firestore:rulesCloud Storage for Firebase
firebase deploy --only storage