Auf dieser Seite erfahren Sie, wie Sie App Check in einer Unity-Anwendung mithilfe Ihres benutzerdefinierten App Check-Anbieters aktivieren. Wenn Sie App Check aktivieren, können nur Ihre App und keine anderen Apps auf die Firebase-Ressourcen Ihres Projekts zugreifen.
Wenn Sie App Check mit den Standardanbietern verwenden möchten, finden Sie weitere Informationen unter App Check mit Standardanbietern in Unity aktivieren.
Hinweis
Fügen Sie Ihrem Unity-Projekt Firebase hinzu, falls Sie das noch nicht getan haben.
Implementiere die serverseitige Logik deines benutzerdefinierten App Check-Anbieters.
1. App Check-Bibliothek zur App hinzufügen
Fügen Sie die App Check-Bibliothek zu Ihren Abhängigkeiten hinzu und folgen Sie der Anleitung zur Einrichtung für App Check.
2. App Check-Schnittstellen implementieren
Zuerst müssen Sie Klassen erstellen, die die Schnittstellen IAppCheckProvider
und IAppCheckProviderFactory
implementieren.
Deine AppCheckProvider
-Klasse muss eine GetTokenAsync()
-Methode haben, die alle Informationen sammelt, die dein benutzerdefinierter App Check-Anbieter als Authentifizierungsnachweis benötigt, und sie im Austausch gegen ein App Check-Token an deinen Token-Akquisitionsdienst sendet. Das App Check SDK kümmert sich um das Token-Caching. Daher solltest du in deiner Implementierung von GetTokenAsync()
immer ein neues Token abrufen.
public class YourCustomAppCheckProvider : IAppCheckProvider {
public Task<AppCheckToken> GetTokenAsync() {
// Logic to exchange proof of authenticity for an App Check token and
// expiration time.
// ...
AppCheckToken appCheckToken = new AppCheckToken() {
Token = tokenFromAbove,
ExpireTime = DateTime.UtcNow.AddMinutes(60)
};
return Task<AppCheckToken>.FromResult(appCheckToken);
}
};
Implementieren Sie außerdem eine AppCheckProviderFactory
-Klasse, die Instanzen Ihrer AppCheckProvider
-Implementierung erstellt:
public class YourCustomAppCheckProviderFactory : IAppCheckProviderFactory {
IAppCheckProvider CreateProvider(FirebaseApp app) {
// Create and return an AppCheckProvider object.
return new YourCustomAppCheckProvider(app);
}
}
3. App Check initialisieren
Fügen Sie Ihrer App den folgenden Initialisierungscode hinzu, damit sie ausgeführt wird, bevor Sie andere Firebase SDKs verwenden:
FirebaseAppCheck.SetAppCheckProviderFactory(
new YourCustomAppCheckProviderFactory());
Nächste Schritte
Sobald die App Check-Bibliothek in Ihrer App installiert ist, können Sie die aktualisierte App für Ihre Nutzer 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 beobachten 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 möglicherweise früher aktivieren.
Bei der Entscheidung können dir App Check Messwerte für die von dir verwendeten Dienste helfen:
- App Check-Anfragemesswerte für Realtime Database, Cloud Firestore, Cloud Storage, Authentication (Beta) und Vertex AI in Firebase überwachen
- App Check-Anfragemesswerte für Cloud Functions überwachen
Erzwingung für App Check 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-Erzwungenheit aktivieren für Realtime Database, Cloud Firestore, Cloud Storage, Authentication (Beta) und Vertex AI in Firebase.
- Aktivieren Sie die App Check-Erzwingung für Cloud Functions.
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 normalerweise nicht als gültig eingestuft wird, z. B. in einem Emulator während der Entwicklung oder in einer Continuous Integration-Umgebung (CI), können Sie einen Debug-Build Ihrer Anwendung erstellen, der den Debug-Anbieter App Check anstelle eines echten Attestierungsanbieters verwendet.App Check
Weitere Informationen finden Sie unter App Check mit dem Debugging-Anbieter in Unity verwenden.