Die Instanz-ID stellt eine eindeutige ID pro Instanz Ihrer Anwendungen bereit. Sie können die Instanz-ID für Android-Apps und iOS-Apps sowie für Chrome-Apps/-Erweiterungen implementieren.
Wichtige Features
Die Instanz-ID kann nicht nur eindeutige IDs für die Authentifizierung angeben, sondern auch Sicherheitstokens für die Verwendung mit anderen Diensten 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 Instanz-ID-Tokens an Ihren Server an und prüfen Sie mithilfe des Instanz-ID-Dienstes, ob der Paketname der Anwendung eine gültige Signatur hat. Das Prüfen von Tokens mit dem Cloud-Dienst „Instanz-ID“ hilft dabei, bekannte Anwendungen zu identifizieren. Konfigurieren Sie Ihren Server so, dass er diese Tokens so speichert, dass die Überprüfung nur einmal erforderlich ist, um Kosten und redundante Umläufe zu reduzieren. Bei einem Sicherheitsvorfall kann die Anwendung „deleteTokens“ oder die Instanz-ID selbst erstellen und neue Tokens generieren. Darüber hinaus initiiert der Instanz-ID-Server das Token oder die Aktualisierung der Instanz-ID, wenn es Programmfehler oder Sicherheitsprobleme erkennt.
Prüfen, ob das App-Gerät aktiv ist
- Der Instanz-ID-Server informiert Sie darüber, wann das Gerät, auf dem Ihre App installiert ist, zuletzt verwendet wurde. So können Sie entscheiden, 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 App-Instanzen eindeutig zu identifizieren und zu verfolgen. Mit dem serverseitigen Code kann über den Instanz-ID-Clouddienst geprüft werden, ob eine Instanz-ID echt und mit der ursprünglichen Anwendung identisch ist, die sich bei Ihrem Server registriert hat. Aus Datenschutzgründen kann Ihre Anwendung eine Instanz-ID löschen, damit sie nicht mehr mit einem Verlauf in der Datenbank verknüpft ist. Wenn Ihre Anwendung das nächste Mal eine Instanz-ID aufruft, erhält sie eine ganz neue Instanz-ID, die nichts mit der vorherigen ID zu tun hat.
Instanz-ID-Lebenszyklus
- Der Instanz-ID-Dienst gibt einen
InstanceID
aus, wenn Ihre Anwendung online ist.InstanceID
wird von einem öffentlichen/privaten Schlüsselpaar mit dem auf dem lokalen Gerät gespeicherten privaten und dem öffentlichen Instanz-ID-Dienst gesichert. - Ihre App kann bei Bedarf mit der Methode
getID()
eine neueInstanceID
anfordern. Ihre Anwendung kann sie auf Ihrem Server speichern, wenn Sie einen haben, der Ihre Anwendung unterstützt. - Die Anwendung kann Tokens nach Bedarf über den Instanz-ID-Dienst mit der Methode
getToken()
anfordern. Außerdem kann Ihre Anwendung wieInstanceID
Tokens auch auf Ihrem eigenen Server speichern. Alle an Ihre Anwendung ausgestellten Tokens gehören zumInstanceID
der Anwendung. - Tokens sind eindeutig und sicher, aber Ihre App oder der Instanz-ID-Dienst müssen möglicherweise Tokens aktualisieren, wenn ein Sicherheitsproblem auftritt oder ein Nutzer Ihre App während der Gerätewiederherstellung deinstalliert und neu installiert. Ihre App muss einen Listener implementieren, um auf Anfragen zur Tokenaktualisierung des Instanz-ID-Dienstes zu reagieren.
Clientimplementierung
Die Instanz-ID wird sowohl unter Android als auch unter iOS ausgeführt. Sie müssen in Ihrer Client-App die entsprechende Bibliothek 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 wurde.
Eine ausführliche Anleitung finden Sie in den Implementierungsanleitungen für Android und iOS.