Szybko weryfikuj reguły bezpieczeństwa Firebase

Aby szybko przetestować zaktualizowane reguły bezpieczeństwa Firebase w konsoli Firebase, skorzystaj z Placu zabaw dla reguł.

Plac zabaw z regułami to wygodne narzędzie do odkrywania nowych zachowań lub szybkiego sprawdzania zasad podczas ich pisania. Wyświetla komunikat potwierdzający, że dostęp został dozwolony lub zabroniony zgodnie z parametrami ustawionymi dla symulacji.

Skorzystaj z placu zabaw z zasadami

  1. Otwórz konsolę Firebase i wybierz swój projekt.
  2. Następnie w nawigacji produktu wykonaj jedną z następujących czynności:
    • Wybierz opcję Baza danych czasu rzeczywistego , Cloud Firestore lub Pamięć masowa , a następnie kliknij Zasady , aby przejść do edytora reguł.
  3. Po wprowadzeniu zmian kliknij w edytorze Rules Playground .
  4. W ustawieniach placu zabaw wybierz opcje dla swojego testu, w tym:
    • Testowanie odczytów lub zapisów.
    • Określona lokalizacja w bazie danych lub zasobniku pamięci jako ścieżka.
    • Typ uwierzytelnienia — nieuwierzytelniony, uwierzytelniony użytkownik anonimowy lub określony identyfikator użytkownika.
    • Dane specyficzne dla dokumentu, do których konkretnie odwołują się reguły (na przykład, jeśli reguły wymagają obecności określonego pola przed zezwoleniem na zapis).
  5. Kliknij Uruchom i poszukaj wyników na banerze nad edytorem.

Przykładowy scenariusz placu zabaw z zasadami

Przetestuj zachowanie Plac zabaw z regułami, korzystając z następującego przykładowego scenariusza i podstawowych zasad.

Cloud 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
      }
    }
  }

Baza danych czasu rzeczywistego

 // 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"
       }
     }
   }
 }
 

Magazyn w chmurze

// 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;
    }
  }
}
  • W edytorze reguł dodaj regułę podaną powyżej.

  • Wybierz opcję Pobierz z menu rozwijanego Typ symulacji i wprowadź prawidłową ścieżkę w polu Lokalizacja .

  • Włącz opcję Uwierzytelnianie i wybierz typ uwierzytelniania z menu rozwijanego Dostawca .

  • Wprowadź szczegóły identyfikatora użytkownika i kliknij Uruchom .

Wyniki symulacji pojawiają się w górnej części edytora. W zależności od wprowadzonych danych identyfikatora użytkownika powinien zostać wyświetlony baner potwierdzający pomyślne zezwolenie lub odmowę odczytu.