Was ist eine Instanz-ID?

Wichtige Features

Neben der Bereitstellung eindeutiger IDs für die Authentifizierung kann die Instanz-ID auch Sicherheitstokens zur Verwendung mit anderen Diensten generieren. Weitere Funktionen:

Sicherheitstokens generieren

Die Instanz-ID bietet eine einfache API zum Generieren von Sicherheitstokens, die Dritten den Zugriff auf die serverseitig verwalteten Ressourcen Ihrer App erlauben.

App-Authentizität überprüfen

Übergeben Sie Instanz-ID-Tokens an Ihren Server und prüfen Sie mit dem Instanz-ID-Dienst den Paketnamen der App und ob er eine gültige Signatur hat. Durch das Überprüfen von Tokens mit der Instanz-ID von Cloud Service lassen sich bekannte Anwendungen leichter identifizieren. Konfigurieren Sie Ihren Server so, dass diese Tokens gespeichert werden, damit die Prüfung nur einmal erforderlich ist, um die Kosten und die redundante Umlaufkommunikation zu reduzieren. Bei Sicherheitsbedenken kann Ihre Anwendung Tokens oder die Instanz-ID selbst löschen und neue generieren. Darüber hinaus initiiert der Instanz-ID-Server die Aktualisierung von Tokens oder der Instanz-ID, wenn Programmfehler oder Sicherheitsprobleme erkannt werden.

Prüfen, ob das App-Gerät aktiv ist

Der Instanz-ID-Server teilt Ihnen mit, wann das Gerät, auf dem Ihre App installiert ist, zuletzt verwendet wurde. Entscheiden Sie, ob Sie die Daten aus Ihrer App behalten oder eine Push-Nachricht senden möchten, um Ihre Nutzer noch einmal anzusprechen.

Apps identifizieren und verfolgen

Die Instanz-ID ist für alle Anwendungsinstanzen weltweit eindeutig, sodass Ihre Datenbank sie zum eindeutigen Identifizieren und Verfolgen von Anwendungsinstanzen verwenden kann. Ihr serverseitiger Code kann über den Cloud-Dienst der Instanz-ID prüfen, ob eine Instanz-ID echt ist und mit der ID der ursprünglichen Anwendung übereinstimmt, die auf Ihrem Server registriert wurde. Aus Datenschutzgründen kann Ihre Anwendung eine Instanz-ID löschen, damit sie mit keinem Verlauf in der Datenbank mehr verknüpft ist. Wenn Ihre Anwendung das nächste Mal eine Instanz-ID aufruft, erhält sie eine völlig neue Instanz-ID, die in keinem Zusammenhang mit der vorherigen Instanz-ID steht.

Instanz-ID-Lebenszyklus

  1. Der Instanz-ID-Dienst gibt ein InstanceID aus, wenn Ihre Anwendung online geht. Der InstanceID wird von einem öffentlichen/privaten Schlüsselpaar mit dem privaten Schlüssel, der auf dem lokalen Gerät gespeichert ist, und dem öffentlichen Schlüssel gesichert, der beim Instanz-ID-Dienst registriert ist.
  2. Ihre Anwendung kann bei Bedarf mit der Methode getID() einen neuen InstanceID anfordern. Deine Anwendung kann sie auf deinem Server speichern, wenn du einen hast, der deine Anwendung unterstützt.
  3. Ihre Anwendung kann bei Bedarf mit der getToken()-Methode Tokens vom Instanz-ID-Dienst anfordern. Wie InstanceID kann Ihre Anwendung auch Tokens auf Ihrem eigenen Server speichern. Alle Tokens, die für Ihre App ausgegeben werden, gehören zu den InstanceID der App.
  4. Tokens sind eindeutig und sicher. Ihre App oder der Instanz-ID-Dienst müssen jedoch möglicherweise Tokens aktualisieren, wenn ein Sicherheitsproblem auftritt oder ein Nutzer Ihre App während der Gerätewiederherstellung deinstalliert und neu installiert. Ihre Anwendung muss einen Listener implementieren, um auf Anfragen zur Aktualisierung von Tokens vom Instanz-ID-Dienst zu reagieren.

Clientimplementierung

Die Instanz-ID kann sowohl unter Android als auch unter iOS ausgeführt werden. Für jedes Gerät muss die entsprechende Bibliothek in Ihre Client-App eingebunden werden. Für Android sind Google Play-Dienste erforderlich. Wenn Sie Tokens generieren möchten, benötigen Sie eine von der Google Developers Console generierte Projekt-ID.

Eine ausführliche Anleitung findest du in den Implementierungsleitfäden für Android und iOS.