Was ist die Instanz-ID?

Die Instanz-ID stellt eine eindeutige ID pro Instanz Ihrer Anwendungen bereit. Sie können die Instanz-ID für Android- und iOS-Apps sowie für Chrome-Apps/-Erweiterungen implementieren.

Wichtige Features

Die Instanz-ID kann nicht nur eindeutige IDs für die Authentifizierung bereitstellen, sondern auch Sicherheitstokens für andere Dienste generieren. Weitere Funktionen:

Sicherheitstokens generieren

Die Instanz-ID bietet eine einfache API zum Generieren von Sicherheitstokens, mit denen Dritte Zugriff auf die serverseitig verwalteten Ressourcen Ihrer App erhalten. Verwenden Sie diese Tokens jetzt, um Push-Nachrichten für Ihre Anwendungen über Google Cloud Messaging zu autorisieren.

App-Authentizität prüfen

Passen Sie die Instanz-ID-Tokens an Ihren Server an und prüfen Sie mithilfe des Instanz-ID-Dienstes, ob der App-Paketname gültig ist. Durch das Verifizieren von Tokens mit dem Instanz-ID-Clouddienst können bekannte Anwendungen identifiziert werden. Zur Kostensenkung und redundanten Kommunikation können Sie den Server so konfigurieren, dass die Tokens nur einmal gespeichert werden. Bei einem Sicherheitsvorfall kann Ihre Anwendung „deleteTokens“ (Instanz-ID) selbst erstellen und neue generieren. Außerdem initiiert der Instanz-ID-Server die Aktualisierung von Tokens oder Instanzen-IDs, wenn sie Programmfehler oder Sicherheitsprobleme erkennt.

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

Der Instanz-ID-Server kann Ihnen mitteilen, wann das Gerät, auf dem Ihre App installiert ist, zuletzt genutzt wurde. Damit entscheiden Sie, ob Sie Daten aus Ihrer App behalten oder eine Push-Nachricht senden, um Nutzer noch einmal anzusprechen.

Apps erkennen und erfassen

Die Instanz-ID ist für alle Anwendungsinstanzen auf der ganzen Welt eindeutig, sodass Ihre Datenbank sie verwenden kann, um Anwendungsinstanzen eindeutig zu identifizieren und zu verfolgen. Mit dem serverseitigen Code kann über den Cloud-Dienst „Instanz-ID“ geprüft werden, ob eine Instanz-ID echt und mit der ID der ursprünglichen Anwendung identisch ist, die sich bei Ihrem Server registriert hat. Zum Schutz Ihrer Daten kann Ihre App eine Instanz-ID löschen, sodass sie nicht mehr mit einem Verlauf in der Datenbank verknüpft ist. Beim nächsten Aufruf der Instanz-ID durch die Anwendung wird eine völlig neue Instanz-ID abgerufen, die keinen Bezug zur vorherigen hat.

Instanz-ID-Lebenszyklus

  1. Der Instanz-ID-Dienst gibt einen InstanceID aus, wenn Ihre Anwendung online geht. InstanceID wird durch ein öffentliches/privates Schlüsselpaar mit dem privaten Schlüssel gesichert, der auf dem lokalen Gerät gespeichert ist, und mit dem öffentlichen Schlüssel, der beim Instanz-ID-Dienst registriert ist.
  2. Ihre App kann bei Bedarf mit der Methode getID() eine neue InstanceID anfordern. Ihre App kann sie auf Ihrem Server speichern, wenn Sie einen haben, der Ihre App unterstützt.
  3. Die Anwendung kann bei Bedarf mit der Methode getToken() Tokens vom Instanz-ID-Dienst anfordern. Wie InstanceID kann auch die Anwendung Tokens auf Ihrem eigenen Server speichern. Alle an Ihre App ausgestellten Tokens gehören der App InstanceID.
  4. Tokens sind eindeutig und sicher, aber Ihre App oder der Instanz-ID-Dienst müssen möglicherweise Tokens aktualisieren, wenn ein Sicherheitsproblem vorliegt oder ein Nutzer Ihre App während der Gerätewiederherstellung deinstalliert und neu installiert. Ihre Anwendung muss einen Listener implementieren, der auf Anfragen zur Tokenaktualisierung des Instanz-ID-Dienstes antwortet.

Instanz-ID-Lebenszyklus

Clientimplementierung

Instanz-ID wird sowohl unter Android als auch unter iOS ausgeführt. Für jeden davon musst du die entsprechende Bibliothek in deiner Client-App angeben. Für Android sind Google Play-Dienste erforderlich. Wenn Sie Tokens generieren möchten, benötigen Sie eine Projekt-ID, die von der Google Developers Console generiert wird.

Eine ausführliche Anleitung finden Sie in den Implementierungsanleitungen für Android und iOS.