Catch up on everthing we announced at this year's Firebase Summit. Learn more

Zacznij korzystać z reguł zabezpieczeń Firebase

Reguły zabezpieczeń Firebase zapewniają solidną, w pełni konfigurowalną ochronę danych w Cloud Firestore, Bazie danych czasu rzeczywistego 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.

Poznaj język reguł zabezpieczeń Firebase

Zanim zaczniesz pisać reguły, warto poświęcić trochę czasu na zapoznanie się z konkretnym językiem reguł zabezpieczeń Firebase dla używanych produktów Firebase. Baza danych czasu rzeczywistego wykorzystuje składnię podobną do JavaScript i strukturę JSON dla swoich reguł.

Zacznij od nauki składni rdzenia języka Rules Firebase zabezpieczeń .

Skonfiguruj uwierzytelnianie

Jeśli nie zostało to już zrobione, dodać uwierzytelniania Firebase do swojej aplikacji . Uwierzytelnianie Firebase obsługuje wiele popularnych metod uwierzytelniania i integruje się z regułami zabezpieczeń Firebase, zapewniając wszechstronne możliwości weryfikacji.

Możesz skonfigurować dodatkowe, niestandardowe informacje uwierzytelniania dla swojej aplikacji.

Dowiedz się więcej o Firebase zasad bezpieczeństwa i uwierzytelniania Firebase .

Zdefiniuj swoje dane i struktury reguł

Zdefiniuj dane dla bezpieczeństwa

Sposób, w jaki ustrukturyzujesz swoje dane, może wpłynąć na sposób, w jaki ustrukturyzujesz i zaimplementujesz swoje reguły. Definiując struktury danych, rozważ implikacje, jakie mogą one mieć na strukturę Reguł.

Na przykład w Bazie danych czasu rzeczywistego możesz chcieć dołączyć pole określające 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.

Definiując architekturę danych i reguł, pamiętaj, w jaki sposób reguły kaskadują się lub nie, w zależności od produktu. Dzięki Bazie danych czasu rzeczywistego reguły działają od góry do dołu, przy czym płytsze reguły zastępują głębsze reguły. Jeśli reguła przyznaje uprawnienia do odczytu lub zapisu w określonej ścieżce, zapewnia również dostęp do wszystkich węzłów podrzędnych pod nią. W przeciwieństwie do Cloud Firestore i Cloud Storage reguły obowiązują tylko na określonych poziomach hierarchii danych, a Ty piszesz jawne reguły, aby kontrolować dostęp do różnych poziomów.

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ąć błędnego nadpisania aktualizacji. Jeśli nie masz pewności, czy reguły zdefiniowane lokalnie odzwierciedlają najnowsze aktualizacje, konsola Firebase zawsze wyświetla najnowszą wdrożoną wersję reguł zabezpieczeń Firebase.

Aby uzyskać dostęp do swoich przepisów z konsoli Firebase , wybierz swój projekt, a następnie w panelu nawigacyjnym po lewej stronie kliknij Aktualizacje bazy danych. Kliknij Reguły raz jesteś we właściwym wiadra bazy danych lub pamięci masowej.

Aby uzyskać dostęp do swoich przepisów z Firebase CLI, przejdź do pliku rules zauważył w swoim pliku firebase.json .

Napisz podstawowe zasady

Jak jesteś rozwija swoją aplikację i zrozumienie reguł, spróbuj Przepisy wykonawcze do rozwiązania kilka podstawowych przypadków użycia , w tym następujące:

  • Treść tylko właściciel: Ograniczanie dostępu do treści przez użytkownika.
  • Mieszane dostęp: Ograniczanie zapisu przez użytkownika, ale umożliwiają publiczny dostęp do odczytu.
  • Dostęp atrybut oparte: Ograniczanie dostępu do grupy lub rodzaju użytkownika.

Przetestuj swoje zasady

Jeśli konfigurowania reguł zabezpieczeń Firebase w konsoli Firebase, można użyć Firebase Rules Playground szybko weryfikacji zachowania. Zaleca się jednak bardziej dokładnych testów z lokalnego Emulator Suite przed wdrożeniem zmian w produkcji.

Wdrażanie reguł

Użyj konsoli Firebase lub interfejsu wiersza polecenia Firebase, aby wdrożyć swoje reguły w środowisku produkcyjnym. Wykonaj czynności opisane w zarządzaniu i wdrażają Firebase zasad bezpieczeństwa .