Na tej stronie znajdziesz ogólne, ogólne sprawdzone metody konfigurowania projektów Firebase i rejestrowania w nich aplikacji, aby mieć jasny przepływ pracy w przypadku tworzenia aplikacji, który wykorzystuje odrębne środowiska. Gdy zapoznasz się ze sprawdzonymi metodami opisanymi na tej stronie, przeczytaj ogólne wskazówki dotyczące bezpieczeństwa.
Hierarchia projektów Firebase
Ten diagram przedstawia podstawową hierarchię projektu Firebase. Oto najważniejsze relacje:
Projekt Firebase to kontener na wszystkie aplikacje oraz zasoby i usługi udostępnione w ramach projektu.
W projekcie Firebase może być zarejestrowanych co najmniej 1 aplikacja Firebase (np. wersja na iOS i Androida lub bezpłatna i płatna wersja aplikacji).
Wszystkie aplikacje Firebase zarejestrowane w tym samym projekcie Firebase mają dostęp do tych samych zasobów i usług udostępnionych dla tego projektu. Oto przykłady:
Wszystkie aplikacje Firebase zarejestrowane w tym samym projekcie Firebase korzystają z tych samych backendów: Firebase Hosting, Authentication, Realtime Database, Cloud Firestore, Cloud Storage i Cloud Functions.
Wszystkie aplikacje Firebase zarejestrowane w tym samym projekcie Firebase są powiązane z tą samą usługą w Google Analytics, a każda aplikacja Firebase to osobny strumień danych w tej usłudze.
Gdzie w tej hierarchii mieści się projekt Google Cloud?
Jednym z elementów hierarchii projektu Firebase, który nie jest widoczny na diagramie powyżej, jest relacja z projektem Google Cloud. Projekt Firebase to tak naprawdę projekt Google Cloud z dodatkowymi konfiguracjami i usługami specyficznymi dla Firebase. Pamiętaj, że wszystkie aplikacje zarejestrowane w tym samym projekcie Firebase udostępniają i mają dostęp do tych samych zasobów i usług Google Cloud.
Więcej informacji o związku Firebase z Google Cloud znajdziesz w artykule Informacje o projektach Firebase.
Rejestrowanie wariantów aplikacji w projektach Firebase
Oto kilka ważnych wskazówek dotyczących rejestrowania wariantów aplikacji w projekcie Firebase:
Upewnij się, że wszystkie aplikacje zarejestrowane w projekcie Firebase są wariantami tej samej aplikacji z perspektywy użytkownika. Zarejestruj wersje na iOS, Androida i internet tej samej aplikacji lub gry w tym samym projekcie Firebase.
Jeśli masz kilka wersji kompilacji, które mogą dzielić te same zasoby Firebase, zarejestruj je w tym samym projekcie Firebase. Przykłady: blog i aplikacja internetowa w tym samym projekcie lub obie wersje (bezpłatna i płatna) tej samej aplikacji w tym samym projekcie.
Jeśli masz wiele wersji kompilacji, które różnią się stanem wydania (a nie typową aktywnością użytkownika lub dostępem, jak w przypadku powyżej), zarejestruj każdą wersję w oddzielnym projekcie Firebase. Przykładem jest kompilacja debugowania i kompilacja wersji – zarejestruj każdą z nich w oddzielnym projekcie Firebase.
Wersje kompilacji oparte na stanie wersji nie powinny udostępniać tych samych zasobów Firebase, ponieważ może to spowodować zanieczyszczenie lub nawet zastąpienie danych produkcyjnych danymi debugowania.
Wersje dla poszczególnych platform z tych wariantów kompilacji powinny znajdować się w tym samym projekcie Firebase. Na przykład zarejestruj wersje debugowania na iOS i Androida w „rozwijanym” projekcie Firebase, ponieważ obie mogą korzystać z tych samych nieprodukcyjnych danych i zasobów.
Unikanie środowiska wielu najemców
Wielodzierżalność może prowadzić do poważnych problemów z konfiguracją i prywatnością danych, w tym niezamierzonych problemów z agregacją danych, udostępnioną uwierzytelnianiem, zbyt skomplikowanymi strukturami baz danych i problemami z zasadami bezpieczeństwa.
Ogólnie jeśli zestaw aplikacji nie udostępnia tych samych danych i konfiguracji, warto zarejestrować każdą aplikację w oddzielnym projekcie Firebase.
Jeśli na przykład opracowujesz aplikację na potrzeby marki własnej, każda aplikacja z osobną etykietą powinna mieć własny projekt Firebase, a wersje na iOS i Androida tej samej etykiety powinny znajdować się w tym samym projekcie Firebase. Każda aplikacja z oświadczeniem dotyczącym prywatności nie powinna (ze względów związanych z prywatnością) udostępniać danych innym aplikacjom.
Dalsze kroki
Zapoznaj się z ogólnymi wytycznymi dotyczącymi bezpieczeństwa w różnych środowiskach. Chcesz mieć pewność, że każde środowisko i powiązane z nim dane są bezpieczne.
Przejrzyj listę kontrolną przed wdrożeniem Firebase.