Verwenden Sie App Check mit dem Debug-Anbieter in Web-Apps

Wenn Sie Ihre App nach der Registrierung für App Check in einer Umgebung ausführen möchten, die App Check normalerweise nicht als gültig einstufen würde, z. B. lokal während der Entwicklung oder in einer Continuous Integration (CI)-Umgebung, können Sie diese erstellen ein Debugbuild Ihrer App, der den App Check-Debuganbieter anstelle eines echten Nachweisanbieters verwendet.

Verwenden Sie den Debug-Anbieter auf localhost

Gehen Sie wie folgt vor, um den Debug-Anbieter zu verwenden, während Sie Ihre App von localhost (z. B. während der Entwicklung):

  1. Aktivieren Sie in Ihrem Debug-Build den Debug-Modus, indem Sie self.FIREBASE_APPCHECK_DEBUG_TOKEN auf „ true “ setzen, bevor Sie App Check initialisieren. Zum Beispiel:

    Web version 9

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    initializeAppCheck(app, { /* App Check options */ });
    

    Web version 8

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    firebase.appCheck().activate(/* site key or provider */);
    
  2. Besuchen Sie Ihre Web-App lokal und öffnen Sie das Entwicklertool des Browsers. In der Debug-Konsole sehen Sie ein Debug-Token:

    AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will
    need to safelist it in the Firebase console for it to work.
  3. Wählen Sie im Abschnitt „ App-Prüfung “ der Firebase-Konsole im Überlaufmenü Ihrer App Debug-Token verwalten aus. Registrieren Sie dann das Debug-Token, das Sie im vorherigen Schritt angemeldet haben.

    Screenshot des Menüelements Manage Debug Tokens

Nachdem Sie das Token registriert haben, akzeptieren die Firebase-Back-End-Dienste es als gültig.

Da dieses Token den Zugriff auf Ihre Firebase-Ressourcen ohne ein gültiges Gerät ermöglicht, ist es wichtig, dass Sie es privat halten. Übertragen Sie es nicht in ein öffentliches Repository, und wenn ein registriertes Token jemals kompromittiert wird, widerrufen Sie es sofort in der Firebase-Konsole.

Dieses Token wird lokal in Ihrem Browser gespeichert und immer dann verwendet, wenn Sie Ihre App im selben Browser auf demselben Computer verwenden. Wenn Sie das Token in einem anderen Browser oder auf einem anderen Computer verwenden möchten, setzen self.FIREBASE_APPCHECK_DEBUG_TOKEN auf die Token-Zeichenfolge anstelle von true .

Verwenden Sie den Debug-Provider in einer CI-Umgebung

Gehen Sie wie folgt vor, um den Debug-Anbieter in einer Umgebung mit kontinuierlicher Integration (CI) zu verwenden:

  1. Wählen Sie im Abschnitt „ App-Prüfung “ der Firebase-Konsole im Überlaufmenü Ihrer App Debug-Token verwalten aus. Erstellen Sie dann ein neues Debug-Token. Sie benötigen das Token im nächsten Schritt.

    Da dieses Token den Zugriff auf Ihre Firebase-Ressourcen ohne ein gültiges Gerät ermöglicht, ist es wichtig, dass Sie es privat halten. Übertragen Sie es nicht in ein öffentliches Repository, und wenn ein registriertes Token jemals kompromittiert wird, widerrufen Sie es sofort in der Firebase-Konsole.

    Screenshot des Menüelements Manage Debug Tokens

  2. Fügen Sie das soeben erstellte Debug-Token dem sicheren Schlüsselspeicher Ihres CI-Systems hinzu (z. B. die verschlüsselten Geheimnisse von GitHub Actions oder die verschlüsselten Variablen von Travis CI).

  3. Konfigurieren Sie ggf. Ihr CI-System so, dass Ihr Debug-Token in der CI-Umgebung als Umgebungsvariable verfügbar ist. Benennen Sie die Variable etwa so wie APP_CHECK_DEBUG_TOKEN_FROM_CI .

  4. Aktivieren Sie in Ihrem Debug-Build den Debug-Modus, indem self.FIREBASE_APPCHECK_DEBUG_TOKEN auf den Wert der Debug-Token-Umgebungsvariable setzen, bevor Sie App Check importieren. Zum Beispiel:

    Web version 9

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI;
    initializeAppCheck(app, { /* App Check options */ });
    

    Web version 8

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI;
    firebase.appCheck().activate(/* site key or provider */);
    

Wenn Ihre App in einer CI-Umgebung ausgeführt wird, akzeptieren die Firebase-Back-End-Dienste das gesendete Token als gültig.