Aby szybko przetestować zaktualizowane reguły bezpieczeństwa Firebase w konsoli Firebase, skorzystaj z Placu zabaw z regułami.
Plac zabaw z regułami to wygodne narzędzie, którego można używać podczas odkrywania nowych zachowań lub szybkiego sprawdzania poprawności reguł w trakcie ich pisania. Wyświetla komunikat potwierdzający, że dostęp został dozwolony lub odrzucony zgodnie z parametrami ustawionymi dla symulacji.
Skorzystaj z Regulaminu Placu Zabaw
- Otwórz konsolę Firebase i wybierz swój projekt.
- Następnie w nawigacji produktu wykonaj jedną z następujących czynności:
- Wybierz odpowiednio Bazę danych czasu rzeczywistego , Cloud Firestore lub Magazyn , a następnie kliknij Reguły , aby przejść do edytora reguł.
- Po dokonaniu zmian kliknij opcję Plac zabaw z regułami w edytorze.
- W ustawieniach Placu zabaw z regułami wybierz opcje testu, w tym:
- Testowanie odczytu lub zapisu.
- 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 wyraźnie odwołują się Twoje reguły (na przykład, jeśli reguły wymagają obecności określonego pola przed zezwoleniem na zapis).
- Kliknij Uruchom i poszukaj wyników na banerze nad edytorem.
Przykładowy regulamin Scenariusz placu zabaw
Przetestuj zachowanie Placu zabaw z regułami, korzystając z następującego przykładowego scenariusza i podstawowych zasad.
Chmura 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 listy rozwijanej Dostawca .
Wprowadź szczegóły identyfikatora użytkownika i kliknij Uruchom .
Wyniki symulacji pojawiają się u góry edytora. W zależności od wprowadzonych danych identyfikacyjnych użytkownika powinien zostać wyświetlony baner potwierdzający, że odczyt został pomyślnie dopuszczony lub odrzucony.