Auf dieser Seite erfahren Sie, wie Sie App Check in einer Unity-App mithilfe Ihres benutzerdefinierten App Check-Anbieters aktivieren. Wenn Sie App Check aktivieren, stellen Sie sicher, dass nur Ihre App auf die Firebase-Ressourcen Ihres Projekts zugreifen kann.
Wenn Sie App Check mit den Standardanbietern verwenden möchten, finden Sie weitere Informationen unter Aktivieren von App Check mit Standardanbietern in Unity .
Bevor Sie beginnen
Fügen Sie Firebase zu Ihrem Unity-Projekt hinzu, falls Sie dies noch nicht getan haben.
Implementieren Sie die serverseitige Logik Ihres benutzerdefinierten App Check-Anbieters .
1. Fügen Sie die App Check-Bibliothek zu Ihrer App hinzu
Fügen Sie die App Check-Bibliothek in Ihre Abhängigkeiten ein und befolgen Sie dabei die Einrichtungsanweisungen für App Check.
2. Implementieren Sie die App Check-Schnittstellen
Zunächst müssen Sie Klassen erstellen, die die Schnittstellen IAppCheckProvider
und IAppCheckProviderFactory
implementieren.
Ihre AppCheckProvider
Klasse muss über eine GetTokenAsync()
Methode verfügen, die alle Informationen sammelt, die Ihr benutzerdefinierter App Check-Anbieter als Authentizitätsnachweis benötigt, und diese im Austausch gegen ein App Check-Token an Ihren Token-Erwerbsdienst sendet. Das App Check SDK übernimmt das Token-Caching. Besorgen Sie sich daher immer ein neues Token in Ihrer Implementierung von GetTokenAsync()
.
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, 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:
- Überwachen Sie App Check-Anfragemetriken für Echtzeitdatenbank, Cloud Firestore, Cloud Storage und Authentifizierung (Beta).
- Überwachen Sie App Check-Anfragemetriken für Cloud Functions .
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:
- Aktivieren Sie die App Check-Erzwingung für Echtzeitdatenbank, Cloud Firestore, Cloud Storage und Authentifizierung (Beta).
- Aktivieren Sie die App Check-Erzwingung für Cloud Functions .
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.
Siehe Verwenden von App Check mit dem Debug-Anbieter in Unity .