Firebase Güvenlik Kurallarını hızla doğrulayın

Güncellenmiş Firebase Güvenlik Kurallarınızı Firebase konsolunda hızlı bir şekilde test etmek için Kural Oyun Alanını kullanın.

Kural Oyun Alanı, yeni davranışları keşfederken veya kuralları yazarken hızla doğrularken kullanabileceğiniz kullanışlı bir araçtır. Simülasyon için ayarladığınız parametrelere göre erişime izin verildiğini veya reddedildiğini doğrulayan bir mesaj görüntüler.

Kurallar Oyun Alanını Kullanın

  1. Firebase konsolunu açın ve projenizi seçin.
  2. Ardından ürün navigasyonunda aşağıdakilerden birini yapın:
    • Uygun olanı Gerçek Zamanlı Veritabanı , Cloud Firestore veya Depolama'yı seçin ve ardından Kurallar düzenleyicisine gitmek için Kurallar'a tıklayın.
  3. Düzenlemelerinizi yaptıktan sonra düzenleyiciden Kurallar Oyun Alanı'na tıklayın.
  4. Kural Oyun Alanı ayarlarında testiniz için aşağıdakiler dahil seçenekleri belirleyin:
    • Okuma veya yazma testi.
    • Yol olarak veritabanınızdaki veya depolama grubunuzdaki belirli bir Konum .
    • Kimlik doğrulama türü — kimliği doğrulanmamış, kimliği doğrulanmış anonim kullanıcı veya belirli bir kullanıcı kimliği.
    • Kurallarınızın özel olarak referans verdiği belgeye özgü veriler (örneğin, kurallarınız, yazmaya izin verilmeden önce belirli bir alanın varlığını gerektiriyorsa).
  5. Çalıştır'a tıklayın ve düzenleyicinin üzerindeki banner'da sonuçları arayın.

Örnek Kurallar Oyun Alanı senaryosu

Kural Oyun Alanı davranışını aşağıdaki örnek senaryo ve temel kurallarla test edin.

Bulut Firestore

service cloud.firestore {
  match /databases/{database}/documents {
    // Allow only authenticated content owners access
    match /some_collection/{document} {
      allow read, write: if request.auth != null && request.auth.uid == request.resource.data.author_uid
      }
    }
  }

Gerçek Zamanlı Veritabanı

 // These rules grant access to a node matching the authenticated
 // user's ID from the Firebase auth token
 {
   "rules": {
     "users": {
       "$uid": {
         ".read": "$uid === auth.uid",
         ".write": "$uid === auth.uid"
       }
     }
   }
 }
 

Bulut depolama

// Grants a user access to a node matching their user ID
service firebase.storage {
  match /b/{bucket}/o {
    // Files look like: "user/<UID>/path/to/file.txt"
    match /user/{userId}/{allPaths=**} {
      allow read, write: if request.auth != null && request.auth.uid == userId;
    }
  }
}
  • Kural düzenleyicisinde yukarıda verilen kuralı ekleyin.

  • Simülasyon türü açılır menüsünden al'ı seçin ve Konum alanına geçerli bir yol girin.

  • Kimlik Doğrulamayı açın ve Sağlayıcı menüsünden bir kimlik doğrulama türü seçin.

  • Kullanıcı kimliği ayrıntılarını girin ve Çalıştır'a tıklayın.

Simülasyonun sonuçları editörün üst kısmında görünür. Girdiğiniz kullanıcı kimliği ayrıntılarına bağlı olarak okumaya başarıyla izin verildiğini veya reddedildiğini onaylayan bir başlık görmelisiniz.