Erste Schritte bei der Verwendung von App Check mit einem benutzerdefinierten Anbieter für Web-Apps

Auf dieser Seite erfahren Sie, wie Sie App Check in einer Webanwendung mithilfe Ihres benutzerdefinierten App Check-Anbieters aktivieren. Wenn Sie App Check aktivieren, können nur Ihre Apps auf die Firebase-Ressourcen Ihres Projekts zugreifen.

Wenn Sie App Check mit einem der integrierten Anbieter verwenden möchten, lesen Sie die Dokumentation zu App Check mit reCAPTCHA Enterprise.

Hinweis

1. App Check-Bibliothek zur App hinzufügen

Fügen Sie Ihrer Web-App Firebase hinzu, falls noch nicht geschehen. Importieren Sie die App Check-Bibliothek.

2. App Check-Anbieterobjekt erstellen

Erstelle ein App Check-Anbieterobjekt für deinen benutzerdefinierten Anbieter. Dieses Objekt muss eine getToken()-Methode haben, die alle Informationen erfasst, die Ihr benutzerdefinierter App Check-Anbieter als Authentifizierungsnachweis benötigt, und sie im Austausch gegen ein App Check-Token an Ihren Token-Akquisitionsdienst sendet. Das App Check SDK kümmert sich um das Token-Caching. Daher solltest du in deiner getToken()-Implementierung immer ein neues Token abrufen.

Web

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

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

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

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

Nachdem die App Check-Bibliothek in Ihrer App installiert ist, können Sie sie bereitstellen.

Die aktualisierte Client-App sendet dann mit jeder Anfrage an Firebase App Check-Token. Für Firebase-Produkte müssen die Token jedoch erst dann gültig sein, wenn Sie die Erzwingung im Bereich App Check der Firebase Console aktivieren.

Messwerte überwachen und Erzwingung aktivieren

Bevor Sie die Erzwingung aktivieren, sollten Sie jedoch prüfen, ob dies die Nutzung für Ihre bestehenden rechtmäßigen Nutzer nicht beeinträchtigt. Wenn Sie jedoch eine verdächtige Nutzung Ihrer App-Ressourcen feststellen, sollten Sie die Erzwingung früher aktivieren.

Bei der Entscheidung können Sie sich App Check Messwerte für die von Ihnen verwendeten Dienste ansehen:

App Check-Erzwingung aktivieren

Wenn Sie wissen, wie sich App Check auf Ihre Nutzer auswirkt, und bereit sind, fortzufahren, können Sie die Durchsetzung von App Check aktivieren:

App Check in Debug-Umgebungen verwenden

Wenn Sie Ihre Anwendung für App Check registriert haben und sie in einer Umgebung ausführen möchten, die von App Check normalerweise nicht als gültig eingestuft wird, z. B. lokal während der Entwicklung oder in einer Umgebung für kontinuierliche Integration (CI), können Sie einen Debug-Build Ihrer App erstellen, der den App Check-Debuganbieter anstelle eines echten Attestierungsanbieters verwendet.

Weitere Informationen finden Sie unter App Check mit dem Debug-Anbieter in Web-Apps verwenden.