Beginnen Sie mit der Verwendung von App Check mit Play Integrity auf Android

Auf dieser Seite erfahren Sie, wie Sie App Check in einer Android-App mithilfe des integrierten Play Integrity-Anbieters aktivieren. Wenn Sie App Check aktivieren, stellen Sie sicher, dass nur Ihre App auf die Firebase-Ressourcen Ihres Projekts zugreifen kann. Sehen Sie sich eine Übersicht über diese Funktion an.

Derzeit unterstützt der integrierte Play Integrity-Anbieter nur Android-Apps, die von Google Play vertrieben werden. Informationen zur Verwendung der Off-Play-Funktionen von Play Integrity oder zur Verwendung von App Check mit Ihrem eigenen benutzerdefinierten Anbieter finden Sie unter Implementieren eines benutzerdefinierten App Check-Anbieters .

1. Richten Sie Ihr Firebase-Projekt ein

  1. Fügen Sie Firebase zu Ihrem Android-Projekt hinzu, falls Sie dies noch nicht getan haben.

  2. Aktivieren Sie die Play Integrity API:

    1. Wählen Sie in der Google Play Console Ihre App aus oder fügen Sie sie hinzu, falls Sie dies noch nicht getan haben.

    2. Klicken Sie im Abschnitt „Release“ auf App-Integrität .

    3. Gehen Sie zum Abschnitt „Play Integrity API“ der Seite, klicken Sie auf „Cloud-Projekt verknüpfen“ und wählen Sie dann Ihr Firebase-Projekt aus der Liste der Google Cloud-Projekte aus. Das hier ausgewählte Projekt muss dasselbe Firebase-Projekt sein wie das, in dem Sie Ihre App registrieren (siehe nächster Schritt).

  3. Registrieren Sie Ihre Apps für die Verwendung von App Check beim Play Integrity-Anbieter im Abschnitt „App Check“ der Firebase-Konsole. Sie müssen den SHA-256-Fingerabdruck des Signaturzertifikats Ihrer App bereitstellen .

    Normalerweise müssen Sie alle Apps Ihres Projekts registrieren, denn sobald Sie die Durchsetzung für ein Firebase-Produkt aktivieren, können nur registrierte Apps auf die Backend-Ressourcen des Produkts zugreifen.

  4. Optional : Legen Sie in den App-Registrierungseinstellungen eine benutzerdefinierte Gültigkeitsdauer (Time-to-Live, TTL) für vom Anbieter ausgestellte App-Check-Token fest. Sie können die TTL auf einen beliebigen Wert zwischen 30 Minuten und 7 Tagen einstellen. Beachten Sie beim Ändern dieses Werts die folgenden Kompromisse:

    • Sicherheit: Kürzere TTLs bieten eine höhere Sicherheit, da sie das Zeitfenster verkleinern, in dem ein durchgesickertes oder abgefangenes Token von einem Angreifer missbraucht werden kann.
    • Leistung: Kürzere TTLs bedeuten, dass Ihre App häufiger eine Bescheinigung durchführt. Da der App-Bestätigungsprozess bei jeder Ausführung die Latenz von Netzwerkanfragen erhöht, kann sich eine kurze TTL auf die Leistung Ihrer App auswirken.
    • Kontingent und Kosten: Kürzere TTLs und häufige erneute Bestätigungen erschöpfen Ihr Kontingent schneller und kosten bei kostenpflichtigen Diensten möglicherweise mehr. Siehe Kontingente und Limits .

    Die Standard-TTL von 1 Stunde ist für die meisten Apps angemessen. Beachten Sie, dass die App Check-Bibliothek Token mit etwa der Hälfte der TTL-Dauer aktualisiert.

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

Fügen Sie in Ihrer Modul-Gradle-Datei (auf App-Ebene) (normalerweise <project>/<app-module>/build.gradle.kts oder <project>/<app-module>/build.gradle ) die Abhängigkeit für die App-Prüfung hinzu Bibliothek für Android. Wir empfehlen die Verwendung der Firebase Android BoM zur Steuerung der Bibliotheksversionierung.

dependencies {
    // Import the BoM for the Firebase platform
    implementation(platform("com.google.firebase:firebase-bom:32.8.0"))

    // Add the dependencies for the App Check libraries
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-appcheck-playintegrity")
}

Durch die Verwendung der Firebase Android BoM verwendet Ihre App immer kompatible Versionen der Firebase Android-Bibliotheken.

(Alternative) Fügen Sie Firebase-Bibliotheksabhängigkeiten hinzu , ohne die Stückliste zu verwenden

Wenn Sie die Firebase-Stückliste nicht verwenden möchten, müssen Sie jede Firebase-Bibliotheksversion in ihrer Abhängigkeitszeile angeben.

Beachten Sie: Wenn Sie mehrere Firebase-Bibliotheken in Ihrer App verwenden, empfehlen wir dringend, die BoM zum Verwalten der Bibliotheksversionen zu verwenden, um sicherzustellen, dass alle Versionen kompatibel sind.

dependencies {
    // Add the dependencies for the App Check libraries
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-appcheck-playintegrity:17.1.2")
}
Suchen Sie nach einem Kotlin-spezifischen Bibliotheksmodul? Ab Oktober 2023 (Firebase BoM 32.5.0) können sich sowohl Kotlin- als auch Java-Entwickler auf das Hauptbibliotheksmodul verlassen (Einzelheiten finden Sie in den FAQ zu dieser Initiative ).

3. App-Check initialisieren

Fügen Sie Ihrer App den folgenden Initialisierungscode hinzu, damit sie ausgeführt wird, bevor Sie andere Firebase-SDKs verwenden:

Kotlin+KTX

Firebase.initialize(context = this)
Firebase.appCheck.installAppCheckProviderFactory(
    PlayIntegrityAppCheckProviderFactory.getInstance(),
)

Java

FirebaseApp.initializeApp(/*context=*/ this);
FirebaseAppCheck firebaseAppCheck = FirebaseAppCheck.getInstance();
firebaseAppCheck.installAppCheckProviderFactory(
        PlayIntegrityAppCheckProviderFactory.getInstance());

Nächste Schritte

Sobald die App Check-Bibliothek in Ihrer App installiert ist, beginnen Sie mit der Verteilung der aktualisierten App an Ihre Benutzer.

Die aktualisierte Client-App beginnt mit dem Senden von App Check-Tokens zusammen mit jeder Anfrage an Firebase. Für Firebase-Produkte müssen die Token jedoch erst gültig sein, wenn Sie die Durchsetzung im Abschnitt „App Check“ der Firebase-Konsole aktivieren.

Überwachen Sie Metriken und aktivieren Sie die Durchsetzung

Bevor Sie die Durchsetzung aktivieren, sollten Sie jedoch sicherstellen, dass Ihre vorhandenen legitimen Benutzer dadurch nicht beeinträchtigt werden. Wenn Sie jedoch feststellen, dass Ihre App-Ressourcen verdächtig genutzt werden, sollten Sie die Durchsetzung möglicherweise früher aktivieren.

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

Aktivieren Sie die Durchsetzung der App-Prüfung

Wenn Sie verstehen, wie sich App Check auf Ihre Benutzer auswirkt, und Sie bereit sind, fortzufahren, können Sie die Durchsetzung 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. in einem Emulator während der Entwicklung oder in einer CI-Umgebung (Continuous Integration), können Sie dies tun Erstellen Sie einen Debug-Build Ihrer App, der den App Check-Debug-Anbieter anstelle eines echten Nachweisanbieters verwendet.

Weitere Informationen finden Sie unter „App Check mit dem Debug-Anbieter auf Android verwenden “.