Ogólne sprawdzone metody konfigurowania projektów Firebase

Na tej stronie znajdziesz ogólne, podstawowe sprawdzone metody konfigurowania projektów Firebase i rejestrowania aplikacji w projekcie, aby zapewnić przejrzysty proces tworzenia z wykorzystaniem różnych środowisk. Gdy zapoznasz się ze sprawdzonymi metodami opisanymi na tej stronie, przeczytaj nasze ogólne wytyczne 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 wszystkie 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 Firebase zarejestrowane w tym samym projekcie w Firebase mają dostęp do tych samych zasobów i usług udostępnionych w projekcie. 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 Storage i Cloud 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.

Gdzie w tej hierarchii znajduje się projekt Google Cloud?

Jednym z aspektów hierarchii projektów w Firebase, którego nie widać na diagramie powyżej, jest relacja z projektem Google Cloud. Projekt w Firebase to w rzeczywistości Google Cloud projekt, w którym włączono dodatkowe specyficzne dla Firebase konfiguracje i usługi. Pamiętaj, że wszystkie aplikacje zarejestrowane w tym samym projekcie Firebase mają też dostęp do tych samych Google Cloud zasobów i usług, too.

Więcej informacji o relacji między Firebase a Google Cloud znajdziesz w artykule Projekty 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 tej samej aplikacji na różnych platformach. 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 wersja bezpłatna i płatna tej samej aplikacji w tym samym projekcie.

  • Jeśli masz wiele wariantów kompilacji, które są oparte na stanie wydania (a nie na wspólnej aktywności lub dostępie użytkowników, jak w powyższym przykładzie), zarejestruj każdy wariant w osobnym projekcie w Firebase. Przykładem jest kompilacja debugowania i kompilacja do publikacji – zarejestruj każdą z nich w osobnym projekcie w Firebase.

    • Kompilacje oparte na stanie wydania nie powinny korzystać z tych samych zasobów Firebase, ponieważ grozi to zanieczyszczeniem danych produkcyjnych danymi debugowania lub nawet ich zastąpieniem.

    • 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ą korzystać z tych samych danych i zasobów nieprodukcyjnych.

Unikanie środowiska wielu najemców

Środowisko wielu najemców może prowadzić do poważnych problemów z konfiguracją i kwestiami dotyczącymi prywatności danych, w tym do niezamierzonych problemów z agregacją danych analitycznych, współdzieleniem uwierzytelniania, zbyt złożonymi strukturami bazy danych i trudnościami z regułami bezpieczeństwa.

Ogólnie rzecz biorąc, jeśli zestaw aplikacji nie korzysta z tych samych danych i konfiguracji, zdecydowanie rozważ zarejestrowanie każdej aplikacji 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 niezależnie oznaczona aplikacja nie powinna (ze względu na prywatność) udostępniać danych innym aplikacjom.

Dalsze kroki