Firebase Security Rules, Cloud Firestore, Realtime Database ve Cloud Storage'deki verileriniz için güçlü ve tamamen özelleştirilebilir koruma sağlar. Security Rules ile çalışmaya başlamak, verilerinizi güvenceye almak ve uygulamanızı kötü niyetli kullanıcılardan korumak için bu kılavuzdaki adımları uygulayabilirsiniz.
Yapay zeka desteği için yapay zeka istemi
Yapay zeka desteği için aşağıdaki istemi yapay zeka kodlama aracınıza (Android Studio'daki Gemini, Antigravity, Claude Code, Codex ve Cursor gibi) kopyalayın. İstemi özelleştirebilir ve temsilcinizle birlikte yineleme yapabilirsiniz. Ayrıntılı yükleme bilgileri için Firebase aracı becerileri sayfasını ziyaret edin.
Help me use Firebase in my app.
1. Make sure that **Firebase agent skills** are installed and updated. For Claude Code, Codex, or Cursor agents, help me install the Firebase plugin. For other agents, run `npx skills add firebase/agent-skills`. Always try to use **Firebase agent skills** for Firebase-related tasks.
2. Help me write, validate, and deploy Firebase Security Rules to protect my app's data.
Firebase Security Rules dilini anlama
Kural yazmaya başlamadan önce, kullandığınız Firebase ürünleriyle ilgili Firebase Security Rules dilini incelemek için biraz zaman ayırmanız faydalı olur.
Realtime Database,
Security Rules için JavaScript benzeri bir söz dizimi ve JSON yapısı kullanır. Alternatif olarak, Cloud Firestore ve Cloud Storage, tanımlanmış bir yolda erişim koşulu belirleyen match ve allow ifadelerine dayanan Common Expression Language'in (CEL) üst kümesini kullanır.
Firebase Security Rules dili hakkında daha fazla bilgi edinin.
Authentication ayarlarını yapın
Henüz yapmadıysanız kullanıcılarınızı Firebase Authentication ile tanımlayın. Firebase Authentication, birçok yaygın kimlik doğrulama yöntemini destekler ve kapsamlı doğrulama özellikleri sağlamak için Firebase Security Rules ile entegre olur.
Uygulamanız için ek ve özel kimlik doğrulama bilgileri ayarlayabilirsiniz.
Firebase Security Rules ve Firebase Authentication hakkında daha fazla bilgi edinin.
Veri ve kural yapılarınızı tanımlama
Verilerinizi yapılandırma şekliniz, kurallarınızı yapılandırma ve uygulama şeklinizi etkileyebilir. Veri yapılarınızı tanımlarken bunların Security Rules yapınız üzerindeki olası etkilerini göz önünde bulundurun.
Örneğin, Cloud Firestore içinde her kullanıcı için belirli bir rolü belirten bir alan eklemek isteyebilirsiniz. Ardından, kurallarınız bu alanı okuyabilir ve rol tabanlı erişim vermek için kullanabilir.
Veri ve kural mimarilerinizi tanımlarken herhangi bir kuralın bir veri kümesine erişim izni vermesi durumunda Firebase Security Rules'nin de bu veri kümesine erişim izni vereceğini unutmayın. Diğer bir deyişle, veri hiyerarşinizde daha yüksek bir düzeyde erişim izni verdiyseniz erişimi bir alt yolda hassaslaştıramazsınız.
Kurallarınıza erişme
Mevcut Security Rules görüntülemek için Firebase CLI'yı veya Firebase konsolunu kullanın. Güncellemelerin yanlışlıkla üzerine yazılmasını önlemek için kurallarınızı tutarlı bir şekilde aynı yöntemi kullanarak düzenlediğinizden emin olun. Yerel olarak tanımladığınız kuralların en son güncellemeleri yansıtıp yansıtmadığından emin değilseniz Firebase konsolunda her zaman Firebase Security Rules'nızın en son dağıtılan sürümü gösterilir.
Kurallarınıza Firebase konsolundan erişmek için projenizi seçin, ardından Realtime Database, Cloud Firestore veya Storage'a gidin. Doğru veritabanı veya depolama paketi içindeyseniz Kurallar'ı tıklayın.
Kurallarınıza Firebase CLI'dan erişmek için firebase.json dosyanızda belirtilen kurallar dosyasına gidin.
Temel kurallar yazma
Uygulamanızı geliştirirken ve Security Rules'ı anlamaya çalışırken aşağıdaki kullanım alanları da dahil olmak üzere birkaç temel güvenlik kuralı uygulayın:
- Yalnızca içerik sahibi: İçeriğe erişimi kullanıcıya göre kısıtlayın.
- Karma erişim: Kullanıcıya göre yazma erişimini kısıtlayın ancak herkese açık okuma erişimine izin verin.
- Özellik tabanlı erişim: Bir grup veya kullanıcı türüne erişimi kısıtlayın.
Kurallarınızı test etme
Uygulamanızın davranışını tam olarak doğrulamak ve Firebase Security Rules
yapılandırmalarınızı doğrulamak için Firebase Emulator'ı kullanarak yerel ortamda birim testlerini çalıştırın ve otomatikleştirin.
Firebase Security Rules'nızı Firebase konsolunda ayarlıyorsanız davranışı hızlıca doğrulamak için Firebase Kuralları Simülatörü'nü kullanabilirsiniz. Ancak değişikliklerinizi üretime dağıtmadan önce Firebase Emulator ile daha kapsamlı bir test yapmanızı öneririz.
Kuralları dağıtma
Kurallarınızı üretime dağıtmak için Firebase konsolunu veya Firebase KSA'yı kullanın. Firebase Security Rules'ı yönetme ve dağıtma başlıklı makaledeki adımları uygulayın.