Ogólne sprawdzone metody konfigurowania projektów Firebase

Na tej stronie znajdziesz ogólne, podstawowe sprawdzone metody konfigurowania projektów Firebase i rejestrowania w nich aplikacji, aby zapewnić sobie przejrzysty proces tworzenia, który korzysta z różnych środowisk. Gdy zapoznasz się ze sprawdzonymi metodami na tej stronie, przeczytaj nasze ogólne wskazówki dotyczące bezpieczeństwa.

Hierarchia projektów Firebase

Diagram przedstawiający podstawową hierarchię projektu w Firebase, w tym projekt, zarejestrowane w nim aplikacje oraz udostępnione zasoby i usługi Ten diagram przedstawia podstawową hierarchię projektu w Firebase. Oto najważniejsze relacje:

  • Projekt w Firebase jest jak kontener na wszystkie Twoje aplikacje oraz zasoby i usługi udostępnione w projekcie.

  • Projekt w Firebase może mieć zarejestrowaną co najmniej 1 aplikację w Firebase (np. wersję aplikacji na iOS i Androida lub wersję bezpłatną i płatną).

  • Wszystkie aplikacje w Firebase zarejestrowane w tym samym projekcie w Firebase współdzielą wszystkie zasoby i usługi udostępnione w projekcie oraz mają do nich dostęp. Oto przykłady:

    • Wszystkie aplikacje w Firebase zarejestrowane w tym samym projekcie w Firebase korzystają z tych samych backendów, takich jak Firebase Hosting, Authentication, Realtime Database, Cloud Firestore, Cloud StorageCloud Functions.

    • Wszystkie aplikacje w Firebase zarejestrowane w tym samym projekcie w Firebase są powiązane z tą samą usługą w Google Analytics, w której każda aplikacja w Firebase jest osobnym strumieniem danych w tej usłudze.

Gdzie w tej hierarchii znajduje się projekt Google Cloud?

Jednym z aspektów hierarchii projektu w Firebase, który nie jest widoczny na powyższym diagramie, jest relacja z projektem Google Cloud. Projekt Firebase to w zasadzie Google Cloudprojekt, w którym włączono dodatkowe konfiguracje i usługi Firebase. Pamiętaj, że wszystkie aplikacje zarejestrowane w tym samym projekcie w Firebase mają też dostęp do tych samych Google Cloud zasobów i usług.

Więcej informacji o związku między Firebase a 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ą z perspektywy użytkownika wariantami platformowymi tej samej aplikacji. Zarejestruj wersje tej samej aplikacji lub gry na iOS, Androida i w internecie w tym samym projekcie Firebase.

  • Jeśli masz wiele wariantów kompilacji, które mogą korzystać z tych samych zasobów Firebase, zarejestruj je w tym samym projekcie w Firebase. Przykłady to blog i aplikacja internetowa w tym samym projekcie lub bezpłatna i płatna wersja tej samej aplikacji w tym samym projekcie.

  • Jeśli masz wiele wariantów kompilacji zależnych od stanu wydania (a nie od typowej aktywności użytkowników lub dostępu, jak w przypadku powyższych przykładów), zarejestruj każdy wariant w osobnym projekcie Firebase. Przykładem może być kompilacja debugowania i kompilacja do publikacji – zarejestruj każdą z nich w osobnym projekcie w Firebase.

    • Wersje oparte na stanie wydania nie powinny współdzielić tych samych zasobów Firebase, ponieważ grozi to zanieczyszczeniem lub nawet zastąpieniem danych produkcyjnych danymi debugowania.

    • Warianty platformy każdego z tych wariantów kompilacji powinny znajdować się w tym samym projekcie w Firebase. Na przykład zarejestruj kompilacje do debugowania na iOS i Androida w projekcie w Firebase „dev”, ponieważ obie mogą wchodzić w interakcje z tymi samymi danymi i zasobami nieprodukcyjnymi.

Unikanie środowiska wielu najemców

Wielodostępność może prowadzić do poważnych problemów z konfiguracją i kwestii dotyczących prywatności danych, w tym do niezamierzonych problemów z agregacją danych analitycznych, współdzielonym uwierzytelnianiem, zbyt złożonymi strukturami baz danych i trudnościami z zasadami bezpieczeństwa.

Ogólnie rzecz biorąc, jeśli zestaw aplikacji nie korzysta z tych samych danych i konfiguracji, warto zarejestrować każdą aplikację w innym projekcie w Firebase.

Jeśli na przykład tworzysz aplikację typu white label, każda niezależnie oznaczona aplikacja powinna mieć własny projekt w Firebase, a wersje na iOS i Androida powinny znajdować się w tym samym projekcie w Firebase. Każda aplikacja z niezależną etykietą nie powinna (ze względu na prywatność) udostępniać danych innym aplikacjom.

Dalsze kroki