Auf dieser Seite wird beschrieben, wie Sie App Check in einer iOS-App aktivieren. Damit sorgen Sie dafür, dass nur Ihre App im Namen Ihres Projekts auf die OAuth 2.0-Endpunkte von Google zugreifen kann. Übersicht über diese Funktion
App Check nutzt App Attest, um zu prüfen, ob OAuth 2.0-Anfragen von Ihrer echten Anwendung stammen. App Check verwendet App Attest nicht, um Betrugsrisiken zu analysieren.
Hinweis
Sie benötigen Xcode 12.5 oder höher.
Binde Google Log-in mithilfe der Google Log-in-Bibliothek in deine iOS-App ein.
1. Projekt einrichten
Sie benötigen ein Firebase-Projekt, um App Check mit Google Log-in verwenden zu können.
Wenn Ihre App bereits Firebase nutzt, verwenden Sie dasselbe Projekt.
Wenn Ihre Anwendung Google Log-in, aber nicht Firebase verwendet, haben Sie bereits ein Google Cloud-Projekt. Fügen Sie Firebase Ihrem Google Cloud-Projekt hinzu, indem Sie es beim Erstellen eines neuen Projekts in der Firebase Console auswählen.
Siehe auch: Beziehung zwischen Firebase-Projekten und Google Cloud
Fügen Sie Ihrem Firebase-Projekt über die Seite Projekteinstellungen der Firebase Console Ihre iOS-Apps hinzu, falls noch nicht geschehen.
Registrieren Sie Ihre Apps im Abschnitt App Check der Firebase Console für die Verwendung von App Check beim App Attest-Anbieter.
Prüfen Sie, ob alle OAuth-Clients Ihres Projekts mit einer Anwendung verknüpft sind.
Wenn Sie die Verknüpfung von Clients aufgehoben haben, wird auf der Seite App Check im Abschnitt Google Identity for iOS die folgende Meldung angezeigt: Sie haben n die Verknüpfung der OAuth-Clients aufgehoben, für die eine zusätzliche Einrichtung erforderlich ist.
Wenn Sie außerdem einige OAuth-Clients gelöscht haben, nachdem Sie sie in App Check eingerichtet haben, wird die Meldung Es wurden n-Überschreibungen ohne passenden OAuth-Client angezeigt. Sie können diese Überschreibungen bedenkenlos bereinigen.
Sie können nicht verknüpfte Clients mit einer vorhandenen oder neuen Anwendung auf der Seite OAuth-Clients der Firebase Console verknüpfen.
2. Der App die Beta-Bibliothek für Google Log-in hinzufügen
Legen Sie in Ihrem Xcode-Projekt die Google Log-in-Abhängigkeit auf Version
7.1.0-fac-beta-1.1.0
fest:SPM
Legen Sie die Abhängigkeitsregel von
googlesignin-ios
auf die genaue Version fest:7.1.0-fac-beta-1.1.0
.CocoaPods
Aktualisieren Sie Ihr
Podfile
:source 'https://github.com/CocoaPods/Specs.git' source 'https://github.com/firebase/SpecsDev.git' target 'YourAppName' do use_frameworks! pod 'GoogleSignIn', :git => 'https://github.com/google/GoogleSignIn-iOS.git', :tag => '7.1.0-fac-beta-1.1.0' pod 'GoogleSignInSwiftSupport' # If you use SwiftUI. end
Führen Sie dann
pod install
aus und öffnen Sie die erstellte Datei.xcworkspace
.Fügen Sie Ihrer App in Xcode die Funktion App Attest hinzu.
Legen Sie in der Datei
.entitlements
Ihres Projekts die App Attest-Umgebung aufproduction
fest.
3. App Check initialisieren
Rufen Sie in der Methode didFinishLaunchingWithOptions
des App-Delegaten GIDSignIn.sharedInstance.configure(completion:)
auf. Sie sollten diese Methode so früh wie möglich im Lebenszyklus Ihrer App aufrufen, um die vom Nutzer wahrgenommene Latenz zu minimieren.
import SwiftUI
import GoogleSignIn
class AppDelegate: NSObject, UIApplicationDelegate {
func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil
) -> Bool {
#if targetEnvironment(simulator)
// Configure for debugging.
// See: https://developers.google.com/identity/sign-in/ios/appcheck/debug-provider
#else
GIDSignIn.sharedInstance.configure { error in
if let error {
print("Error configuring `GIDSignIn` for Firebase App Check: \(error)")
}
}
#endif
return true
}
}
@main
struct YourAppNameApp: App {
@UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate
// ...
}
Nächste Schritte
Sobald die App Check-Bibliothek in Ihrer App installiert ist, können Sie die aktualisierte App an Ihre Nutzer verteilen.
Die aktualisierte Client-App sendet dann zusammen mit jeder Anfrage App Check-Tokens an die Authentifizierungsendpunkte von Google. Die Endpunkte müssen jedoch erst gültig sein, wenn Sie die Erzwingung im Bereich „App Check“ der Firebase Console aktivieren.
Messwerte überwachen
Bevor Sie die Erzwingung aktivieren, sollten Sie jedoch dafür sorgen, dass Ihre bestehenden rechtmäßigen Nutzer dadurch nicht beeinträchtigt werden. Wenn Sie jedoch eine verdächtige Nutzung Ihrer App-Ressourcen feststellen, sollten Sie die Erzwingung früher aktivieren.
Als Entscheidungshilfe können Sie sich die App Check-Messwerte für Google Log-in ansehen.
App Check-Erzwingung aktivieren
Wenn Sie wissen, wie sich App Check auf Ihre Nutzer auswirkt, und Sie fortfahren können, können Sie die App Check-Erzwingung aktivieren.
App Check in Debug-Umgebungen verwenden
Wenn Sie Ihre Anwendung nach der Registrierung für App Check in einer Umgebung ausführen möchten, die von App Check normalerweise nicht als gültig eingestuft werden würde, z. B. in einem Simulator während der Entwicklung, oder in einer CI-Umgebung (Continuous Integration) können Sie einen Debug-Build Ihrer Anwendung erstellen, der den App Check-Fehlerbehebungsanbieter anstelle von App Attest verwendet.
Weitere Informationen finden Sie unter App Check mit dem Anbieter für die Fehlerbehebung verwenden.