Firebase Güvenlik Kurallarını kullanmaya başlayın

Firebase Güvenlik Kuralları, Cloud Firestore, Realtime Database ve Cloud Storage'daki verileriniz için güçlü, tamamen özelleştirilebilir koruma sağlar. Bu kılavuzdaki adımları izleyerek, verilerinizin güvenliğini sağlayıp uygulamanızı kötü niyetli kullanıcılardan koruyarak Kuralları kolayca kullanmaya başlayabilirsiniz.

Firebase Güvenlik Kuralları dilini anlama

Kural yazmaya başlamadan önce, kullanmakta olduğunuz Firebase ürünleri için belirli Firebase Güvenlik Kuralları dilini incelemek için biraz zaman ayırmanızda fayda var. Gerçek Zamanlı Veritabanı, Kuralları için JavaScript benzeri bir sözdiziminden ve JSON yapısından yararlanır. Alternatif olarak, Cloud Firestore ve Cloud Storage, match dayanan ve tanımlı bir yolda erişim için koşul oluşturan ifadelere allow veren Ortak İfade Dilinin (CEL) bir üst kümesinden yararlanır.

Firebase Güvenlik Kuralları dili hakkında daha fazla bilgi edinin.

Kimlik doğrulamayı ayarla

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 yetenekleri sağlamak için Firebase Güvenlik Kuralları ile entegre olur.

Uygulamanız için ek, özel kimlik doğrulama bilgileri ayarlayabilirsiniz.

Firebase Güvenlik Kuralları ve Firebase Kimlik Doğrulaması hakkında daha fazla bilgi edinin.

Verilerinizi ve kural yapılarınızı tanımlayın

Verilerinizi yapılandırma şekliniz, kurallarınızı yapılandırma ve uygulama şeklinizi etkileyebilir. Veri yapılarınızı tanımlarken, bunların Kural yapınız üzerindeki etkilerini göz önünde bulundurun.

Örneğin, Cloud Firestore'da her kullanıcı için belirli bir rolü gösteren bir alan dahil etmek isteyebilirsiniz. Ardından, kurallarınız bu alanı okuyabilir ve rol tabanlı erişim vermek için kullanabilir.

Verilerinizi ve kural mimarilerinizi tanımlarken, herhangi bir kuralın bir veri kümesine erişim izni vermesi durumunda, Firebase Güvenlik Kurallarının da bu veri kümesine erişim izni verdiğini unutmayın. Başka bir deyişle, veri hiyerarşinizde daha yüksek bir düzeyde erişim izni verdiyseniz, bir alt yolda erişimi iyileştiremezsiniz.

Kurallarınıza erişin

Mevcut Kurallarınızı görüntülemek için Firebase CLI'yi 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ımlanmış kurallarınızın en son güncellemeleri yansıtıp yansıtmadığından emin değilseniz, Firebase konsolu her zaman Firebase Güvenlik Kurallarınızın en son dağıtılan sürümünü gösterir.

Kurallarınıza Firebase konsolundan erişmek için projenizi seçin, ardından Realtime Database , Cloud Firestore veya Storage bölümüne gidin. Doğru veritabanına veya depolama grubuna girdikten sonra Kurallar'a tıklayın.

Kurallarınıza Firebase CLI'den erişmek için firebase.json dosyanızda belirtilen kurallar dosyasına gidin.

Temel kuralları yaz

Uygulamanızı geliştirirken ve Kuralları anlarken, aşağıdaki kullanım durumları da dahil olmak üzere birkaç temel Güvenlik Kuralını uygulamayı deneyin:

  • Yalnızca içerik sahibi: Kullanıcıya göre içeriğe erişimi kısıtlayın.
  • Karma erişim: Kullanıcıya göre yazma erişimini kısıtlayın, ancak genel okuma erişimine izin verin.
  • Nitelik tabanlı erişim: Bir grup veya kullanıcı türüyle erişimi kısıtlayın.

Kurallarınızı test edin

Uygulamanızın davranışını tam olarak doğrulamak ve Firebase Güvenlik Kurallarınızı doğrulamak için
yapılandırmalar, yerel bir ortamda birim testlerini çalıştırmak ve otomatikleştirmek için Firebase Emulator'ı kullanın.

Firebase Güvenlik Kurallarınızı Firebase konsolunda oluşturuyorsanız, davranışı hızlı bir şekilde doğrulamak için Firebase Kural Simülatörü'nü kullanabilirsiniz. Ancak, değişikliklerinizi üretime dağıtmadan önce Firebase Emulator ile daha kapsamlı testler yapmanızı öneririz.

Kuralları dağıt

Kurallarınızı üretime dağıtmak için Firebase konsolunu veya Firebase CLI'yi kullanın. Firebase Güvenlik Kurallarını yönetme ve dağıtma bölümünde belirtilen adımları izleyin.