Zacznij korzystać z reguł zabezpieczeń Firebase

Reguły bezpieczeństwa Firebase zapewniają solidną, w pełni konfigurowalną ochronę Twoich danych w Cloud Firestore, Realtime Database i Cloud Storage. Możesz łatwo rozpocząć korzystanie z Reguł, wykonując czynności opisane w tym przewodniku, zabezpieczając swoje dane i chroniąc aplikację przed złośliwymi użytkownikami.

Zrozumieć język Reguł bezpieczeństwa Firebase

Zanim zaczniesz pisać reguły, warto poświęcić trochę czasu na przejrzenie konkretnego języka Reguł bezpieczeństwa Firebase dla używanych produktów Firebase. Baza danych czasu rzeczywistego wykorzystuje składnię podobną do JavaScript i strukturę JSON dla swoich reguł. Alternatywnie, Cloud Firestore i Cloud Storage wykorzystują nadzbiór języka Common Expression Language (CEL), który opiera się na instrukcjach match i allow , które ustawiają warunek dostępu w zdefiniowanej ścieżce.

Dowiedz się więcej o języku Firebase Security Rules .

Skonfiguruj uwierzytelnianie

Jeśli jeszcze tego nie zrobiłeś, zidentyfikuj swoich użytkowników za pomocą Firebase Authentication . Uwierzytelnianie Firebase obsługuje wiele popularnych metod uwierzytelniania i integruje się z Regułami bezpieczeństwa Firebase, aby zapewnić wszechstronne możliwości weryfikacji.

Możesz skonfigurować dodatkowe, niestandardowe informacje uwierzytelniające dla swojej aplikacji.

Dowiedz się więcej o Regułach bezpieczeństwa Firebase i Uwierzytelnianiu Firebase .

Zdefiniuj swoje struktury danych i reguł

Sposób, w jaki ustrukturyzujesz swoje dane, może wpłynąć na sposób ustrukturyzowania i wdrożenia reguł. Podczas definiowania struktur danych należy wziąć pod uwagę wpływ, jaki mogą one mieć na strukturę reguł.

Na przykład w Cloud Firestore możesz chcieć dołączyć pole, które określa określoną rolę dla każdego użytkownika. Następnie Twoje reguły mogą odczytywać to pole i używać go do przyznawania dostępu opartego na rolach.

Podczas definiowania architektury danych i reguł należy pamiętać, że jeśli jakakolwiek reguła zapewnia dostęp do zbioru danych, reguły bezpieczeństwa Firebase zapewniają dostęp do tego zbioru danych. Innymi słowy, nie można zawęzić dostępu w ścieżce podrzędnej, jeśli przyznano dostęp na wyższym poziomie w hierarchii danych.

Uzyskaj dostęp do swoich zasad

Aby wyświetlić istniejące reguły, użyj interfejsu wiersza polecenia Firebase lub konsoli Firebase. Upewnij się, że edytujesz swoje reguły przy użyciu tej samej metody, konsekwentnie, aby uniknąć omyłkowego nadpisania aktualizacji. Jeśli nie masz pewności, czy Twoje reguły zdefiniowane lokalnie odzwierciedlają najnowsze aktualizacje, konsola Firebase zawsze pokazuje najnowszą wdrożoną wersję Reguł bezpieczeństwa Firebase.

Aby uzyskać dostęp do reguł z konsoli Firebase , wybierz swój projekt, a następnie przejdź do opcji Baza danych czasu rzeczywistego , Cloud Firestore lub Storage . Kliknij Reguły , gdy znajdziesz się we właściwej bazie danych lub zasobniku pamięci.

Aby uzyskać dostęp do swoich reguł z Firebase CLI, przejdź do pliku reguł zapisanego w pliku firebase.json .

Napisz podstawowe zasady

Tworząc aplikację i zapoznając się z Regułami, spróbuj wdrożyć kilka podstawowych Reguł bezpieczeństwa , w tym następujące przypadki użycia:

  • Tylko właściciel treści: ogranicz dostęp do treści dla użytkownika.
  • Dostęp mieszany: ogranicz dostęp użytkownika do zapisu, ale zezwól na publiczny dostęp do odczytu.
  • Dostęp oparty na atrybutach: Ogranicz dostęp do grupy lub typu użytkownika.

Przetestuj swoje zasady

Aby w pełni zweryfikować zachowanie aplikacji i zweryfikować reguły bezpieczeństwa Firebase
konfiguracje, użyj emulatora Firebase do uruchamiania i automatyzacji testów jednostkowych w środowisku lokalnym.

Jeśli konfigurujesz reguły bezpieczeństwa Firebase w konsoli Firebase, możesz użyć Symulatora reguł Firebase , aby szybko zweryfikować zachowanie. Zalecamy jednak dokładniejsze przetestowanie za pomocą emulatora Firebase przed wdrożeniem zmian w środowisku produkcyjnym.

Zasady wdrażania

Użyj konsoli Firebase lub Firebase CLI, aby wdrożyć swoje reguły w środowisku produkcyjnym. Wykonaj czynności opisane w artykule Zarządzanie i wdrażanie reguł bezpieczeństwa Firebase .