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 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 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. Achten Sie darauf, die App Check-Bibliothek zu importieren.

2. App Check-Anbieterobjekt erstellen

Erstellen Sie ein App Check-Anbieterobjekt für Ihren benutzerdefinierten Anbieter. Dieses Objekt muss eine getToken()-Methode haben, die alle Informationen erfasst, die Ihr benutzerdefinierter App Check-Anbieter als Authentizitätsnachweis benötigt, und sie an Ihren Token-Abrufdienst sendet, um ein App Check-Token zu erhalten. Das App Check SDK übernimmt das Zwischenspeichern von Tokens. Rufen Sie daher in Ihrer Implementierung von getToken() immer ein neues Token ab.

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 wurde, stellen Sie sie bereit.

Die aktualisierte Client-App sendet App Check-Tokens zusammen mit jeder Anfrage an Firebase. Bei Firebase-Produkten müssen die Tokens jedoch erst gültig sein, wenn Sie die Erzwingung im Bereich App Check der Firebase Console aktivieren.

Messwerte im Blick behalten und Erzwingung aktivieren

Bevor Sie die Erzwingung aktivieren, sollten Sie jedoch sicherstellen, dass dadurch keine bestehenden legitimen Nutzer beeinträchtigt werden. Wenn Sie jedoch 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-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 Sie bereit sind, fortzufahren, können Sie die Erzwingung von App Check aktivieren:

App Check in Debugging-Umgebungen verwenden

Wenn Sie Ihre App nach der Registrierung für App Check in einer Umgebung ausführen möchten, die 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 anstelle eines echten Attestierungsanbieters den App Check-Debug-Anbieter verwendet.App Check

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