Erste Schritte mit App Check mit reCAPTCHA Enterprise auf Apple-Plattformen

Plattform auswählen: iOS+ Android Web Flutter


Auf dieser Seite erfahren Sie, wie Sie App Check in einer App für Apple-Plattformen mit dem reCAPTCHA Enterprise-Anbieter einrichten. App Check trägt dazu bei, dass nur Ihre App auf die Backend-Ressourcen Ihres Projekts zugreifen kann. Weitere InformationenApp Check

Für App Check sind auf dem Score basierende reCAPTCHA-Schlüssel erforderlich, die für Nutzer nicht sichtbar sind. Das bedeutet, dass der reCAPTCHA Enterprise-Anbieter Nutzer zu keinem Zeitpunkt auffordert, eine Aufgabe zu lösen.

Wenn für Ihren Anwendungsfall reCAPTCHA Enterprise-Funktionen erforderlich sind, die nicht von App Check implementiert werden, oder wenn Sie App Check mit Ihrem eigenen benutzerdefinierten Anbieter verwenden möchten, lesen Sie den Abschnitt Benutzerdefinierten App Check-Anbieter implementieren.

1. Das Firebase-Projekt einrichten

  1. Falls noch nicht geschehen, fügen Sie Ihrem Apple-Projekt Firebase hinzu.

  2. Rufen Sie in derGoogle CloudConsole die Seite Fraud Defense auf und gehen Sie für den reCAPTCHA Enterprise-Anbieter so vor:

    1. Achten Sie darauf, dass Sie sich im richtigen Projekt befinden (siehe Projektauswahl oben auf dem Bildschirm).

    2. Aktivieren Sie bei entsprechender Aufforderung die reCAPTCHA Enterprise API.

    3. Erstellen Sie einen Schlüssel vom Typ iOS und geben Sie die Paket-ID Ihrer App an (z. B. com.example.my_app).

      • Achten Sie darauf, dass Sie dieselbe Paket-ID eingeben, die Sie beim Erstellen Ihrer Firebase-Apple-App in Ihrem Firebase-Projekt angegeben haben. Beim Wert der Set-ID wird zwischen Groß- und Kleinschreibung unterschieden.

      • Bei App Check kann jede Paket-ID nur einem einzelnen reCAPTCHA-Schlüssel entsprechen.

      Eine detaillierte Anleitung finden Sie unter Schlüssel für reCAPTCHA-basierte Scores erstellen.

    4. Notieren Sie sich diesen Schlüssel. Sie müssen sie dem Registrierungsablauf in der Firebase-Konsole hinzufügen.

  3. Rufen Sie in der Firebase-Konsole Sicherheit > App Check auf.

  4. Registrieren Sie auf dem Tab Apps Ihre Apple-Plattform-Apps für die Verwendung von App Check mit dem Anbieter reCAPTCHA Enterprise. Sie müssen den Schlüssel angeben, den Sie in der Google Cloud-Konsole erhalten haben.

  5. Optional: Legen Sie die Gültigkeitsdauer (Time To Live, TTL) für das Token fest.

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

    • Sicherheit: Kürzere TTLs bieten mehr Sicherheit, da sie das Zeitfenster verringern, in dem ein durchgesickertes oder abgefangenes Token von einem Angreifer missbraucht werden kann.
    • Leistung: Bei kürzeren TTLs wird die Attestierung in Ihrer App häufiger durchgeführt. Da der Prozess zur App-Attestierung die Latenz von Netzwerkanfragen jedes Mal erhöht, wenn er ausgeführt wird, kann sich eine kurze TTL auf die Leistung Ihrer App auswirken.
    • Kontingent und Kosten: Kürzere TTLs und häufige erneute Attestierungen verbrauchen Ihr Kontingent schneller und können bei kostenpflichtigen Diensten zu höheren Kosten führen. Weitere Informationen finden Sie unter Kontingente und Limits.

    Die Standard-TTL von 1 Stunde ist für die meisten Apps angemessen. Die App Check-Bibliothek aktualisiert Tokens etwa nach der Hälfte der TTL-Dauer.

  6. Optional: Erweiterte Einstellungen konfigurieren

  7. Klicken Sie auf Speichern.

(Optional) Erweiterte Einstellungen konfigurieren

Wenn ein Nutzer Ihre App öffnet, bewertet reCAPTCHA Enterprise das Risiko der Nutzerinteraktion unter dem Schlüssel und gibt eine Punktzahl zwischen 0,0 und 1,0 in Schritten von 0,1 zurück.

  • Ein Wert von 0,0 bedeutet, dass die Interaktion ein hohes Risiko darstellt und betrügerisch sein kann.
  • Ein Wert von 1,0 bedeutet, dass die Interaktion ein geringes Risiko darstellt und sehr wahrscheinlich legitim ist.

Mit App Check können Sie einen App-Risikoschwellenwert konfigurieren, um Ihre Toleranz für dieses Risiko anzupassen.

In den meisten Anwendungsfällen wird der Standardgrenzwert von 0, 5 empfohlen. Wenn Ihr Anwendungsfall eine Anpassung erfordert, können Sie diesen Wert für jede Ihrer Apps in der Firebase-Konsole konfigurieren (Sicherheit > App Check). Wichtige Überlegungen zur Konfiguration des App-Risikoschwellenwerts finden Sie unten.

2. App Check SDK in Ihre App einbinden

Verwenden Sie Swift Package Manager (SPM), um Firebase-Abhängigkeiten zu installieren und zu verwalten. Wenn Sie Firebase bereits verwenden, muss Ihr Firebase-Paket Version 12.17.0 oder höher haben.

  1. Öffnen Sie Ihr App-Projekt in Xcode.

  2. Firebase-Bibliothek hinzufügen:

    1. Gehen Sie zu File > Add Packages.

    2. Fügen Sie bei entsprechender Aufforderung das Firebase Apple Platforms SDK-Repository hinzu:

      https://github.com/firebase/firebase-ios-sdk
      
    3. Wählen Sie die neueste SDK-Version (v12.17.0 oder höher) aus.

    4. Wählen Sie die FirebaseAppCheck-Mediathek aus.

    5. Klicken Sie auf Paket hinzufügen. Xcode löst die Abhängigkeiten auf und lädt sie herunter.

    6. Fügen Sie die Bibliothek bei Aufforderung dem App-Ziel hinzu.

  3. Fügen Sie die reCAPTCHA Enterprise-Bibliothek hinzu:

    1. Gehen Sie zurück zu File > Add Packages (Datei > Pakete hinzufügen).

    2. Fügen Sie bei entsprechender Aufforderung das reCAPTCHA Enterprise SDK-Repository hinzu:

      https://github.com/GoogleCloudPlatform/recaptcha-enterprise-mobile-sdk
      
    3. Wählen Sie die RecaptchaEnterprise-Mediathek aus.

    4. Klicken Sie auf Paket hinzufügen. Fügen Sie die Bibliothek bei Aufforderung Ihrem App-Ziel hinzu.

3. App Check initialisieren

In Ihrer App müssen Sie App Check initialisieren, bevor Sie andere Firebase-Dienste verwenden.

Erstellen Sie eine Instanz von RecaptchaProviderFactory, übergeben Sie Ihren reCAPTCHA-Schlüssel und konfigurieren Sie dann App Check, um sie zu verwenden:

let providerFactory = RecaptchaProviderFactory(siteKey: "SITE_KEY")
AppCheck.setAppCheckProviderFactory(providerFactory)

FirebaseApp.configure()

4. Messwerte im Blick behalten und Erzwingung aktivieren

Nachdem Sie App Check in Ihrer App eingerichtet haben, können Sie die aktualisierte App für Ihre Nutzer bereitstellen.

Die aktualisierte Client-App beginnt, App Check-Tokens zusammen mit jeder Anfrage zu senden, die sie an Firebase richtet. App Check blockiert jedoch erst dann Anfragen mit ungültigen Tokens, wenn App Check erzwungen wird.

Messwerte überwachen

Bevor Sie die Erzwingung aktivieren, sollten Sie prüfen, ob dadurch Ihre 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

App Check klassifiziert einige Umgebungen als ungültig, z. B. Anfragen von einem Emulator / Simulator während der Entwicklung oder von einer Continuous Integration-Umgebung (CI).

Wenn Sie Ihre App nach der Erzwingung von App Check in diesen Arten von Umgebungen ausführen möchten, müssen Sie einen Debug-Build Ihrer App erstellen, der den App Check-Debug-Anbieter anstelle eines Attestierungsanbieters für die Produktion verwendet.

Weitere Informationen finden Sie unter App Check mit dem Debugging-Anbieter auf Apple-Plattformen verwenden.

Preise

App Check erstellt in Ihrem Namen eine Bewertung, um das Antwort-Token des Nutzers jedes Mal zu validieren, wenn Ihre App das App Check-Token aktualisiert. Für jedes Assessment, das über das kostenlose Kontingent hinaus erstellt wird, fallen Kosten für Ihr Firebase-Projekt an. Weitere Informationen finden Sie unter reCAPTCHA-Preise.

Standardmäßig wird dieses Token zweimal pro Stunde aktualisiert. Wenn Sie festlegen möchten, wie oft Ihre App App Check-Tokens aktualisiert (und damit, wie oft neue Bewertungen erstellt) werden, können Sie die TTL für das Token konfigurieren.