Catch up on highlights from Firebase at Google I/O 2023. Learn more

Beginnen Sie mit der Verwendung von App Check mit einem benutzerdefinierten Anbieter für Web-Apps

Auf dieser Seite erfahren Sie, wie Sie App Check in einer Web-App mit Ihrem benutzerdefinierten App Check-Anbieter aktivieren. Wenn Sie App Check aktivieren, tragen Sie dazu bei, dass nur Ihre App auf die Firebase-Ressourcen Ihres Projekts zugreifen kann.

Wenn Sie App Check mit einem der integrierten Anbieter verwenden möchten, lesen Sie die Dokumentation für App Check mit reCAPTCHA v3 und App Check mit reCAPTCHA Enterprise .

Bevor Sie beginnen

1. Fügen Sie Ihrer App die App Check-Bibliothek hinzu

Fügen Sie Ihrer Web-App Firebase hinzu, falls Sie dies noch nicht getan haben. Stellen Sie sicher, dass Sie die App Check-Bibliothek importieren.

2. Erstellen Sie das App Check-Anbieterobjekt

Erstellen Sie ein App Check-Anbieterobjekt für Ihren benutzerdefinierten Anbieter. Dieses Objekt muss über eine getToken() Methode verfügen, die alle Informationen sammelt, die Ihr benutzerdefinierter App-Check-Anbieter als Echtheitsnachweis benötigt, und sie im Austausch gegen ein App-Check-Token an Ihren Token-Erfassungsdienst sendet. Das App Check SDK übernimmt das Token-Caching, also erhalten Sie immer ein neues Token in Ihrer Implementierung von getToken() .

Web version 9

import { CustomProvider } from "firebase/app-check";

const appCheckCustomProvider = new CustomProvider({
  getToken: () => {
    return new Promise((resolve, _reject) => {
      // TODO: Logic to exchange proof of authenticity for an App Check token and
      // expiration time.

      // ...

      const appCheckToken = {
        token: tokenFromServer,
        expireTimeMillis: expirationFromServer * 1000
      };

      resolve(appCheckToken);
    });
  }
});

Web version 8

const appCheckCustomProvider = {
  getToken: () => {
    return new Promise((resolve, _reject) => {
      // TODO: Logic to exchange proof of authenticity for an App Check token and
      // expiration time.

      // ...

      const appCheckToken = {
        token: tokenFromServer,
        expireTimeMillis: expirationFromServer * 1000
      };

      resolve(appCheckToken);
    });
  }
};

3. App-Check initialisieren

Fügen Sie Ihrer Anwendung den folgenden Initialisierungscode hinzu, bevor Sie auf Firebase-Dienste zugreifen:

Web version 9

import { initializeApp } from "firebase/app";
import { initializeAppCheck } from "firebase/app-check";

const app = initializeApp({
  // Your firebase configuration object
});

const appCheck = initializeAppCheck(app, {
  provider: appCheckCustomProvider,

  // Optional argument. If true, the SDK automatically refreshes App Check
  // tokens as needed.
  isTokenAutoRefreshEnabled: true    
});

Web version 8

firebase.initializeApp({
  // Your firebase configuration object
});

const appCheck = firebase.appCheck();
appCheck.activate(
  appCheckCustomProvider,

  // Optional argument. If true, the SDK automatically refreshes App Check
  // tokens as needed.
  true);

Nächste Schritte

Sobald die App Check-Bibliothek in Ihrer App installiert ist, stellen Sie sie bereit.

Die aktualisierte Client-App beginnt mit dem Senden von App-Check-Tokens zusammen mit jeder Anfrage, die sie an Firebase sendet, aber Firebase-Produkte verlangen nicht, dass die Tokens gültig sind, bis Sie die Erzwingung im Abschnitt „App-Check“ der Firebase-Konsole aktivieren.

Überwachen Sie Metriken und aktivieren Sie die Durchsetzung

Bevor Sie die Erzwingung aktivieren, sollten Sie jedoch sicherstellen, dass dadurch Ihre vorhandenen legitimen Benutzer nicht gestört werden. Wenn Sie andererseits eine verdächtige Nutzung Ihrer App-Ressourcen feststellen, sollten Sie die Erzwingung möglicherweise früher aktivieren.

Um diese Entscheidung zu treffen, können Sie sich die App Check-Metriken für die von Ihnen verwendeten Dienste ansehen:

App-Check-Erzwingung aktivieren

Wenn Sie verstehen, wie sich App Check auf Ihre Benutzer auswirkt, und Sie fortfahren möchten, können Sie die Erzwingung von App Check aktivieren:

Verwenden Sie App Check in Debug-Umgebungen

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.

Siehe Verwenden von App Check mit dem Debug-Anbieter in Web-Apps .