Dieses Dokument enthält eine Checkliste mit Best Practices und Überlegungen, die Sie vor der Produktionseinführung einer Firebase-App beachten sollten.
Allgemeine Best Practices für die Veröffentlichung
Testen Sie alle Änderungen in der Firebase Local Emulator Suite (für unterstützte Produkte), bevor Sie sie in der Produktion bereitstellen. Gründliche Tests können helfen, kostspielige Fehler zu vermeiden.
Erzwingen Sie Firebase App Check für alle Dienste, die dies unterstützen. App Check sorgt dafür, dass nur Ihre tatsächlichen Apps auf Ihre Backend-Dienste und ‑Ressourcen zugreifen können.
Sehen Sie sich die allgemeine Sicherheitscheckliste für Firebase an.
Mit Firebase Remote Config-Rollouts können Sie neue Funktionen und Updates für Ihre App sicher und nach und nach veröffentlichen.
Wenn Sie es noch nicht getan haben, sollten Sie Firebase Crashlytics einrichten. Das ist ein schlankes Echtzeit-Crash-Meldungssystem, mit dem Sie Stabilitätsprobleme, die die Qualität Ihrer App beeinträchtigen, erfassen, priorisieren und beheben können.
Limits für Preispläne kennen und Budgetbenachrichtigungen festlegen
Achten Sie darauf, dass Sie nach der Produktionsumstellung nicht die Nutzungslimits und Kontingente erreichen, insbesondere wenn Sie den kostenlosen Spark-Tarif nutzen. Wir empfehlen Ihnen, ein Upgrade auf den Blaze-Tarif (Pay as you go) durchzuführen.
Richten Sie Budgetbenachrichtigungen für Ihr Projekt ein.
Budgetbenachrichtigungen sind keine Budgetobergrenzen. Sie erhalten eine Benachrichtigung, wenn Sie den konfigurierten Grenzwert erreichen oder überschreiten, damit Sie Maßnahmen in Ihrer App oder Ihrem Projekt ergreifen können.
Sie können erweiterte Benachrichtigungen und Aktionen einrichten, z. B. Funktionen, die die Abrechnung als Reaktion auf Benachrichtigungen deaktivieren.
Sie können die Nutzung in den produktspezifischen Dashboards oder im zentralen Dashboard „Nutzung und Abrechnung“ in der Firebase-Konsole im Blick behalten.
Best Practices für Firebase-Projekte und ‑Apps einhalten
Ganz gleich, ob Sie ein einzelner Entwickler oder ein Team in Unternehmensgröße sind, sollten Sie dafür sorgen, dass Ihre Firebase-Projekte, ‑Apps und ‑Ressourcen geschützt und gesichert sind und sich mit Änderungen in Ihrem Team weiterentwickeln können.
Denken Sie daran, dass ein Firebase-Projekt im Grunde nur ein Google Cloud-Projekt ist, für das Firebase-Dienste und ‑Konfigurationen aktiviert sind. Das bedeutet, dass viele von Google Cloud empfohlene Best Practices auch für Firebase gelten.
Verwenden Sie unterschiedliche Firebase-Projekte für Entwicklung, Tests und Produktion.
Versuchen Sie, unerwartete Zugriffe auf das Projekt zu begrenzen, das mit Ihrer Produktions-App verknüpft ist. Weitere Informationen zum Einrichten von Entwicklungsabläufen
Schützen Sie Ihre wichtigen Projekte, insbesondere das Projekt, das mit Ihrer Produktions-App verknüpft ist.
Verwenden Sie Projektsperren, um das versehentliche Löschen von Projekten zu verhindern.
Wende in der Firebase Console das Tag „Prod“ an, um deine Produktionsumgebung leichter zu identifizieren.
Falls noch nicht geschehen, sollten Sie eine Google Cloud-Organisation einrichten und Ihre Firebase-Projekte hinzufügen.
Fügen Sie Ihren Firebase-Projekten mehrere Inhaber hinzu, insbesondere wenn sich Ihr Projekt nicht in einer Google Cloud-Organisation befindet. Weitere Informationen dazu, wann und wie Sie Inhaber für ein Firebase-Projekt zuweisen
Fügen Sie Projektmitglieder (auch als „Bevollmächtigte“ bezeichnet) als Google-Gruppen hinzu, anstatt sie einzeln hinzuzufügen.
Mithilfe von Gruppen können Sie Teammitgliedern Rollen im Bulk zuweisen und verwalten, wer Zugriff auf Ihr Firebase-Projekt hat, insbesondere wenn Teammitglieder rotieren oder das Unternehmen verlassen.
Weisen Sie jedem Projektmitglied (auch als „Principal“ bezeichnet) die entsprechende Zugriffsebene auf Ihre Firebase-Projekte und ‑Ressourcen zu. Weitere Informationen finden Sie unter Projektzugriff mit Firebase IAM verwalten.
Achten Sie darauf, dass jedes zuständige Projektmitglied (auch als „Hauptverantwortlicher“ bezeichnet) seine Einstellungen so festlegt, dass es Benachrichtigungen zu bestimmten Produkten oder zum Projektstatus erhält (z. B. zu Änderungen am Abrechnungsmodell oder zu Kontingentlimits). Weitere Informationen finden Sie unter Firebase-Benachrichtigungen erhalten.
Optional können Sie auch die wichtigen Kontakte Ihres Projekts anpassen, wenn bestimmte oder zusätzliche Projektmitglieder Benachrichtigungen erhalten sollen. Das ist besonders hilfreich, damit nicht nur der Projektinhaber Benachrichtigungen zu Abrechnungs-, rechtlichen und Produktänderungen erhält.
Firebase API-Schlüssel auf die APIs beschränken, die auf der API-Zulassungsliste des Schlüssels stehen müssen. Weitere Informationen zu API-Schlüsseln finden Sie in der Sicherheitscheckliste für Firebase.
Bestimmte Dienste vorbereiten, die in Ihrer App verwendet werden
Für jedes Produkt und jeden Dienst, der in Ihrer App verwendet wird, gelten möglicherweise bestimmte Anforderungen, wenn er in der Produktion verwendet wird.
Google Analytics
Definieren Sie Zielgruppenbedingungen für Google Analytics, damit ab der Einführung Ihrer App Analysedaten erhoben werden.
Sie können den Export von Google Analytics-Daten nach BigQuery aktivieren, um Ihre Daten mit BigQuery SQL zu analysieren oder sie zur Verwendung in Ihren eigenen Tools zu exportieren.
Beschränken Sie Nutzereigenschaften auf Informationen, die für den gesamten Lebenszyklus Ihrer App relevant sind. Die Anzahl der Nutzereigenschaften, die Sie erstellen können, ist eingeschränkt und sie können nicht archiviert werden.
Prüfen Sie die Einstellungen für Google Analytics-Rollen für Ihre Google Analytics-Properties und ‑Konten. Diese Berechtigungen werden getrennt von den IAM-Berechtigungen und ‑Rollen des Firebase-Projekts verwaltet.
Prüfen Sie, ob Ihre App Store-ID und ggf. Ihre Team-ID in den Projekteinstellungen der Firebase-Konsole korrekt sind.
App Check
Achte darauf, dass deine Team-ID in den Projekteinstellungen der Firebase-Konsole korrekt ist.
Wenn Sie es noch nicht getan haben, erzwingen Sie Firebase App Check für alle Dienste, die dies unterstützen. App Check sorgt dafür, dass nur Ihre tatsächlichen Apps auf Ihre Backend-Dienste und ‑Ressourcen zugreifen können.
Authentication
Deaktivieren Sie alle Anbieter, die Sie nicht verwenden, insbesondere die anonyme Authentifizierung.
Wenn in Ihrer App „Über Google anmelden“ verwendet wird, personalisieren Sie den OAuth-Zustimmungsbildschirm.
Domain und Absender für den AuthenticationE-Mail-Versanddienst anpassen.
Wenn Sie SMS-Bestätigungsdienste von Identity Platform verwenden, erzwingen Sie Firebase App Check und konfigurieren Sie eine SMS-Regionsrichtlinie, um Ihre App vor SMS-Missbrauch zu schützen.
Implementieren Sie auf Apple-Plattformen eine Fehlerbehandlung für häufige Authentication-Fehler.
Fügen Sie in der Firebase-Konsole in den Projekteinstellungen einen Release-SHA-1-Hash für das Signaturzertifikat Ihrer App hinzu. Der SHA-1-Hash ist erforderlich, wenn Ihre App die Anmeldung per Telefonnummer oder „Über Google anmelden“ verwendet (für die eine OAuth-Clientanforderung gilt).
Fügen Sie eine Zugriffssteuerung für Ihre Domains hinzu, um eine unbefugte Nutzung zu verhindern. Gewähren Sie in der Firebase-Konsole im Abschnitt Authentication Zugriff auf Ihre Produktionsdomain. Das ist besonders wichtig, wenn Sie Produkte verwenden, die auf Firebase Security Rules basieren.
Cloud Firestore
Konfigurieren Sie Ihren Cloud Firestore Security Rules, um unbeabsichtigten Datenzugriff zu verhindern.
Verwenden Sie ProGuard für die Codekomprimierung in Ihrem Release-Build. Ohne ProGuard kann das Cloud Firestore SDK und seine Abhängigkeiten die APK-Größe erhöhen.
Cloud Messaging
Sie können den Export von Cloud Messaging-Daten nach BigQuery aktivieren, um Ihre Daten mit BigQuery SQL zu analysieren oder sie zur Verwendung in Ihren eigenen Tools zu exportieren.
Laden Sie Ihren APNs-Authentifizierungsschlüssel für Cloud Messaging in der Firebase-Konsole in Apple-Apps hoch. Wenn Sie APNS-Zertifikate verwenden, achten Sie darauf, dass Ihr Produktions-APNS-Zertifikat hochgeladen ist.
Cloud Storage
- Konfigurieren Sie Ihren Cloud Storage Security Rules, um unbeabsichtigten Datenzugriff zu verhindern.
Crashlytics
Achten Sie darauf, dass alle relevanten Projektmitglieder (auch als „Hauptverantwortliche“ bezeichnet) ihre Einstellungen so festlegen, dass sie Benachrichtigungen zu Crashlytics oder zum Projektstatus erhalten (z. B. Änderungen am Abrechnungsmodell oder Kontingentlimits). Weitere Informationen finden Sie unter Firebase-Benachrichtigungen erhalten.
Sie können den Export von Crashlytics-Daten nach BigQuery aktivieren, um Ihre Daten mit BigQuery SQL zu analysieren oder sie zur Verwendung in Ihren eigenen Tools zu exportieren.
(nur native Android- und iOS-Apps) Aktivieren Sie die KI-Unterstützung in Crashlytics, um schneller herauszufinden, warum ein Absturz aufgetreten ist und was Sie dagegen tun können.
Laden Sie die dSYM-Datei für Release-Builds zur Verwendung in Crashlytics hoch. Achten Sie darauf, dass Xcode dSYMs automatisch verarbeiten und die Dateien hochladen kann.
ProGuard-Zuordnung für Release-Builds zur Verwendung in Crashlytics hochladen. Der Upload ist über die Firebase-Befehlszeile möglich.
Verknüpfen Sie Firebase mit Google Play, um einen besseren Überblick über den Zustand Ihrer Android-App zu erhalten. So können Sie beispielsweise die Absturzberichte Ihrer App nach Google Play-Track filtern, um Ihr Dashboard besser auf bestimmte Builds auszurichten.
Für Builds, die auf Android ausgerichtet sind und IL2CPP verwenden, müssen Sie native Symbole für jeden einzelnen Build hochladen, für den Sie Symbole benötigen, unabhängig davon, ob es Code- oder Konfigurationsänderungen gab.
Dynamic Links
- Dynamic Links wird eingestellt. Wir empfehlen daher, den Dienst zu verlassen. Weitere Informationen finden Sie in den häufig gestellten Fragen zur Einstellung.
Firebase ML
Weitere Informationen finden Sie unter Firebase ML-App für die Produktion vorbereiten.
Weitere Informationen finden Sie unter Firebase ML Android-App für die Produktion vorbereiten.
Performance Monitoring
Achten Sie darauf, dass alle relevanten Projektmitglieder (auch als „Hauptverantwortliche“ bezeichnet) ihre Einstellungen so festlegen, dass sie Benachrichtigungen zu Performance Monitoring oder zum Projektstatus erhalten (z. B. Änderungen am Abrechnungsmodell oder Kontingentlimits). Weitere Informationen finden Sie unter Firebase-Benachrichtigungen erhalten.
Sie können den Export von Performance Monitoring-Daten nach BigQuery aktivieren, um Ihre Daten mit BigQuery SQL zu analysieren oder sie zur Verwendung in Ihren eigenen Tools zu exportieren.
Realtime Database
Konfigurieren Sie Ihren Realtime Database Security Rules, um unbeabsichtigten Datenzugriff zu verhindern.
Achten Sie darauf, dass Sie für eine Skalierung gerüstet sind. Realtime Database hat ein Standardkontingent, das für die meisten Anwendungen groß genug ist. Einige Apps benötigen jedoch möglicherweise zusätzliche Kapazität.
Konfigurieren Sie Ihre ProGuard-Regeln, damit sie mit der Realtime Database funktionieren.
Remote Config
- Achten Sie darauf, dass experimentelle Remote Config-Regeln keine Auswirkungen auf die Nutzer Ihrer Release-Version haben und dass in Ihrer App die richtigen Server- und In-App-Standardeinstellungen verwendet werden.