Questa pagina fornisce best practice generali di alto livello per la configurazione di Firebase progetti e registrare le tue app con un progetto, in modo da avere flusso di lavoro di sviluppo utilizzano ambienti distinti. Una volta che avrai acquisito familiarità con le best practice consulta la nostra linee guida generali sulla sicurezza.
Informazioni sulla gerarchia dei progetti Firebase
Questo diagramma mostra la gerarchia di base di un progetto Firebase. Ecco i principali relazioni:
Un progetto Firebase è come un contenitore per tutte le tue app e per eventuali risorse e servizi di cui è stato eseguito il provisioning per il progetto.
In un progetto Firebase possono essere registrate una o più app Firebase (ad esempio, entrambe le versioni di un'app per iOS e Android o entrambe le versioni senza costi e versioni a pagamento di un'app).
Tutte le app Firebase registrate nello stesso progetto Firebase condividono e hanno l'accesso a tutte le risorse e gli stessi servizi di cui è stato eseguito il provisioning per il progetto. Ecco alcuni esempi:
Tutte le app Firebase registrate nello stesso progetto Firebase condividono lo stesso di backend, come Firebase Hosting, Authentication, Realtime Database, Cloud Firestore, Cloud Storage e Cloud Functions.
Tutte le app Firebase registrate nello stesso progetto Firebase sono associate con la stessa proprietà Google Analytics, dove ogni app Firebase è un e uno stream di dati separato in quella proprietà.
Dove si inserisce un progetto Google Cloud in questa gerarchia?
Un aspetto della gerarchia dei progetti Firebase che non è mostrato nel diagramma sopra è la relazione con un progetto Google Cloud. Un progetto Firebase è in realtà solo un progetto Google Cloud con ulteriori specifici per Firebase configurazioni e servizi abilitati. Tieni presente che tutte le app registrate nello stesso progetto Firebase condividono anche hanno anche accesso agli stessi servizi e risorse di Google Cloud.
Scopri di più sulla relazione tra Firebase e Google Cloud in Informazioni sui progetti Firebase
Registrazione delle varianti dell'app con i progetti Firebase
Ecco alcuni suggerimenti importanti per registrare le varianti dell'app con un progetto Firebase:
Assicurati che tutte le app registrate in un progetto Firebase siano varianti della piattaforma della stessa applicazione dal punto di vista dell'utente finale. Registra il sistema operativo iOS, Versioni Android e web della stessa app o dello stesso gioco con lo stesso Firebase progetto.
Se hai più varianti di build che potrebbero condividere le stesse risorse Firebase, registra le varianti con lo stesso progetto Firebase. Alcune esempi sono un blog e un'app web nello stesso progetto o entrambe le applicazioni le versioni a pagamento della stessa app nello stesso progetto.
Se hai più varianti di build basate sullo stato di rilascio (anziché sull'attività o sull'accesso comuni degli utenti finali, come sopra), registra ogni variazione con un progetto Firebase separato. Un esempio è la build di debug rispetto alla build di release: registra ciascuna di queste build nel proprio progetto Firebase.
Le build basate sullo stato della release non devono condividere le stesse risorse Firebase perché rischia di inquinare i dati di debug o di eseguirne l'override e i dati di Google Cloud.
Le varianti platform di ciascuna di queste varianti della build devono essere nel valore stesso progetto Firebase. Ad esempio, registra sia iOS che Android eseguire il debug delle build in uno "dev" progetto Firebase perché possono interagire gli stessi dati e risorse non di produzione.
Evita l'architettura multi-tenancy
L'architettura multitenancy può comportare seri problemi di configurazione e privacy dei dati, ad esempio problemi imprevisti con l'aggregazione delle analisi, l'autenticazione condivisa, strutture di database troppo complesse e difficoltà con le regole di sicurezza.
In genere, se un insieme di app non condivide gli stessi dati e le stesse configurazioni, ti consigliamo vivamente di registrare ogni app con un progetto Firebase diverso.
Ad esempio, se sviluppi un'applicazione etichetta bianca, ciascuna in modo indipendente l'app etichettata deve avere un proprio progetto Firebase e le app iOS e Android di quell'etichetta devono trovarsi nello stesso progetto Firebase. Ciascuna l'app etichettata in modo indipendente non deve (per motivi di privacy) condividere dati con altri.
Passaggi successivi
Consulta le linee guida generali sulla sicurezza per diversi ambienti. Devi assicurarti che ogni ambiente e i suoi i dati sono protetti.