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. İstemden yararlanarak kullanıcıya özel erişim izni verme, role dayalı izinler uygulama ve verileri doğrulama gibi yaygın kullanım alanları için Security Rules taslağı oluşturabilirsiniz.
Bu istem, şu amaçla Security Rules oluşturmaya odaklanır:
- Cloud Firestore: Uygulamanızın mantığına göre koleksiyonların ve belgelerin güvenliğini sağlayın.
- Cloud Storage for Firebase: Depolanan 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 ile ilgili en iyi uygulamalar hakkında bilgi edinin.
- Firebase Security Rules için birim testleri çalıştırmak ve Firebase Local Emulator Suite kullanmak istiyorsanız Node.js ve Firebase CLI'yı yükleyin. Talimatların tamamı için Firebase Local Emulator Suite'i yükleme, yapılandırma ve entegre etme başlıklı makaleyi inceleyin.
- Önerilen: Henüz yapmadıysanız Antigravity uygulamasını yükleyin.
Aşağıdaki talimatlarda, Security Rules oluşturmak için Firebase aracı becerilerini ve MCP sunucusunu nasıl etkinleştirip kullanacağınız açıklanmaktadır. Başka bir yapay zeka kodlama aracısı kullanmayı tercih ederseniz
firebase-toolsdeposundan Cloud Firestore veya Cloud Storage for Firebase istemini kopyalayıp seçtiğiniz yapay zeka kodlama aracısına yapıştırabilirsiniz. - Firebase aracı becerileri ve MCP sunucusu, Firebase Security Rules üreten ve doğrulayan istemlere erişmek için birlikte çalışır ve Security Rules'in test edilmesine ve dağıtılmasına yardımcı olur. Firebase Security Rules oluşturmak için bu araçları kullanmadan önce Firebase MCP sunucusunu yükleyin.
Sınırlamalar
Bu deneyimi sürekli olarak iyileştirdiğimiz için bu sınırlamalar listesi değişebilir. Güncellemeler için bu sayfayı sık sık ziyaret 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 (ör. Firebase Admin SDK kullanırken) erişildiğinde çağrılmaz. Admin SDK kullanıyorsanız arka uç kodunuzda yetkilendirme ve veri doğrulama işlemlerini yönetmek sizin sorumluluğunuzdadır.
Firebase konsolundaki Firebase ürününde Gemini, bu istemi kullansanız bile Firebase Security Rules oluşturamaz. Bunun yerine, kod tabanınıza erişimi olan alternatif bir yapay zeka asistanı (ör. bu sayfada açıklanan Antigravity) kullanın.
İstemi kullanın
Bu özellik, Security Rules ve testlerinizi oluşturmak için uyumlu bir yapay zeka asistanıyla (ör. Antigravity) Firebase MCP sunucusunu ve Firebase aracı becerilerini kullanırken kullanılabilir. Bu araçlar, Cloud Firestore ve Cloud Storage için veri şemalarını ve erişim kalıplarını belirlemenize yardımcı olmak amacıyla kaynak kodunuzu analiz eder. En az ayrıcalık ilkesine dayalı olarak Security Rules tasarlamak ve tekrarlanan "saldırı" simülasyonları aracılığıyla güvenlik açıklarını ortaya çıkarmak için tasarlanmıştır. Son doğrulama aşamasında yardımcı olmak için @firebase/rules-unit-testing kullanarak bir başlangıç birim testi paketi sağlarlar. Bu sayede güvenlik mantığınızı Firebase Local Emulator Suite kullanarak yerel olarak doğrulayabilirsiniz.
Bu araçları kullanmak için bu bölümde açıklanan üç adımı uygulamanız gerekir:
1. adım: Security Rules ve testler oluşturun
Araçları ayarlama ve çalıştırma:
Firebase aracı becerilerini etkinleştirin:
Google Antigravity: Antigravity Marketplace'ten Firebase eklentisini yüklemek için kurulum talimatlarına bakın. Becerileri proje düzeyinde yüklemek için aşağıdaki komutu da çalıştırabilirsiniz:
npx skills add firebase/agent-skills --agent=antigravityDiğer yapay zeka kodlama temsilcileri: Temsilci becerileri ve MCP sunucusu ile ilgili talimatları uygulayın.
Yapay zeka asistanınızı başlatın (örneğin, CLI için terminalinizde
agykomutunu çalıştırın veya masaüstü uygulamasını açın).Projenizin kök dizininden, yapay zeka kodlama temsilcinizin MCP istemleriyle nasıl etkileşim kurduğuna bağlı olarak temsilciden Cloud Firestore veya Cloud Storage için Security Rules oluşturmasını isteyin:
Doğal dil kullanan kodlama temsilcileri (ör. Antigravity) için temsilciye doğal dilde istem verin.
Cloud Firestore için Security Rules oluşturun:
Generate Firestore security rules for this project, then run the unit tests.Temsilci, ana dizinde bir
firestore.rulesdosyası ve oluşturulan Security Rules için birim testleri içeren bir Node.js projesinin bulunduğu 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.Temsilci, ana dizinde bir
storage.rulesdosyası ve oluşturulan Security Rules için birim testleri içeren bir Node.js projesinin bulunduğu yeni birsecurity_rules_test_storagedizini oluşturur.
Eğik çizgi komutlarını destekleyen kodlama temsilcileri (ö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 temsilcileri için, ham istem şablonunu
firebase-toolsdeposundan kopyalayıp temsilcinin sohbetine yapıştırabilirsiniz.- Cloud Firestore için Security Rules oluşturun: İstemi Cloud Firestore sayfasından kopyalayın.
- Cloud Storage for Firebase için Security Rules oluşturun: Cloud Storage for Firebase sayfasındaki istemi kopyalayın.
2. adım: Security Rules doğrulama ve test sonuçlarını inceleyin
Yapay zeka destekli kodlama temsilcinizin aşağıdakileri yaptığından emin olun. Araçlar çalıştırıldıktan sonra oluşturulan bir özet almanız gerekir.
Söz dizimi doğrulama: Security Rules oluşturulduktan sonra yapay zeka kodlama temsilciniz, Firebase MCP sunucusundaki
firebase_validate_security_ruleskomutunu kullanarak söz dizimini otomatik olarak doğrular.Birim testleri: Söz dizimi doğrulandıktan sonra yapay zeka kodlama asistanınız, Firebase Local Emulator Suite kullanarak oluşturulan birim testlerini çalıştırmayı dener.
Testler otomatik olarak çalıştırılmazsa Firebase Local Emulator Suite'i 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 testleri çalıştırması için 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ırma
3. adım: Security Rules uygulamasını Firebase projenize dağıtın
Oluşturulan Security Rules sonucundan memnun olduğunuzda aşağıdaki Firebase CLI komutlarını kullanarak Security Rules öğesini Firebase projenize dağıtın:
Cloud Firestore
firebase deploy --only firestore:rulesCloud Storage for Firebase
firebase deploy --only storage