Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

Firebase Güvenlik Kuralları

Cloud Firestore, Firebase Realtime Database ve Cloud Storage'da verilerinizin güvenliğini sağlamak için esnek, genişletilebilir Firebase Güvenlik Kurallarımızı kullanın.

Firebase Güvenlik Kuralları, verileriniz ve kötü niyetli kullanıcılar arasında durur. Uygulamanızın verilerini, uygulamanızın gerektirdiği ayrıntı düzeyine kadar koruyan basit veya karmaşık kurallar yazabilirsiniz.

Firebase Güvenlik Kuralları, kullanıcılarınızın Realtime Database, Cloud Firestore ve Cloud Storage için hangi verilere erişebileceğini tanımlamak için genişletilebilir, esnek yapılandırma dillerinden yararlanır. Firebase Gerçek Zamanlı Veritabanı Kuralları, kural tanımlarında JSON'dan yararlanırken, Cloud Firestore Güvenlik Kuralları ve Cloud Storage için Firebase Güvenlik Kuralları, daha karmaşık kurallara özel yapıları barındırmak için oluşturulmuş benzersiz bir dilden yararlanır.

Uygulamanızda kullandığınız belirli Firebase ürünleri için Kuralları nasıl ayarlayacağınız ve Kural davranışının Firebase ürünlerinde nasıl farklılık gösterdiği hakkında daha fazla bilgi edinin.

Anahtar yetenekler

Esneklik Uygulamanızın yapısı ve davranışı için anlamlı olan özel kurallar yazın. Kurallar, erişimi yetkilendirmek için kendi verilerinizden yararlanmanıza izin veren dilleri kullanır.
taneciklilik Kurallarınız, ihtiyacınız olduğu kadar geniş veya dar olabilir.
Bağımsız güvenlik Kurallar uygulamanızın dışında (Firebase konsolunda veya Firebase CLI'de) tanımlandığından, istemciler güvenliğin uygulanmasından sorumlu değildir, hatalar verilerden ödün vermez ve verileriniz her zaman korunur.

Nasıl çalışırlar?

Firebase Güvenlik Kuralları, bir kalıbı veritabanı yollarıyla eşleştirerek ve ardından bu yollardaki verilere erişime izin vermek için özel koşullar uygulayarak çalışır. Firebase ürünlerindeki tüm Kurallar, yol eşleştirme bileşenine ve okuma veya yazma erişimine izin veren koşullu bir ifadeye sahiptir. Uygulamanızda kullandığınız her Firebase ürünü için Kurallar tanımlamanız gerekir.

Cloud Firestore ve Cloud Storage için Kurallar aşağıdaki söz dizimini kullanır:

service <<name>> {
  // Match the resource path.
  match <<path>> {
    // Allow the request if the following conditions are true.
    allow <<methods>> : if <<condition>>
  }
}

Gerçek Zamanlı Veritabanı için JSON tabanlı Kurallar aşağıdaki sözdizimini kullanır:

{
  "rules": {
    "<<path>>": {
    // Allow the request if the condition for each method is true.
      ".read": <<condition>>,
      ".write": <<condition>>
    }
  }
}

Kurallar olarak uygulanır OR ifadeleri, değil AND ifadeleri. Sonuç olarak, birden çok kural bir yolla eşleşirse ve eşleşen koşullardan herhangi biri erişim izni verirse, Kurallar o yoldaki verilere erişim izni verir. Bu nedenle, geniş bir kural verilere erişim izni veriyorsa, daha spesifik bir kuralla kısıtlayamazsınız. Ancak, Kurallarınızın çok fazla çakışmadığından emin olarak bu sorunu önleyebilirsiniz. Firebase Güvenlik Kuralları bayrağı, derleyici uyarıları olarak eşleşen yollarınızda çakışır.

Firebase Güvenlik Kuralları, kullanıcı tabanlı izinler vermek için Kimlik Doğrulama'dan da yararlanabilir ve ayarladığınız koşullar çok basit veya inanılmaz derecede karmaşık olabilir. Daha Kurallar öğrenin dili ve davranış Kuralların yazmaya başlamadan önce.

Uygulama yolu

Ürün SDK'larını entegre edin Set up Bulut Firestore , Bulut Depolama veya Gerçek Zamanlı Veritabanı uygulamanız için.
Firebase Güvenlik Kurallarınızı yazın Diğer konularla ilgili bilgi nasıl Kurallar çalışmaları ve bazı temel Kuralları kurmak
Firebase Güvenlik Kurallarınızı test edin Uygulamanızın davranışını test etmek ve kurallarınızı üretime dağıtmadan önce doğrulamak için Realtime Database ve Cloud Firestore öykünücülerini kullanın.
Firebase Güvenlik Kurallarınızı dağıtın Kurallarınızı üretime dağıtmak için Firebase konsolunu veya Firebase CLI'yi kullanın.

Sonraki adımlar