Was ist eine Instanz-ID?

Wichtige Features

Neben der Bereitstellung eindeutiger IDs für die Authentifizierung kann die Instanz-ID 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 Drittanbieter autorisiert werden, auf serverseitig verwaltete Ressourcen Ihrer App zuzugreifen.

App-Authentizität bestätigen

Übergeben Sie Instanz-ID-Tokens an Ihren Server und verwenden Sie den Instanz-ID-Dienst, um den App-Paketnamen zu überprüfen und festzustellen, ob er eine gültige Signatur hat. Durch die Überprüfung von Tokens mit dem Instance ID Cloud Service können bekannte Apps identifiziert werden. Um Kosten und unnötige Roundtrip-Kommunikation zu reduzieren, konfigurieren Sie Ihren Server so, dass diese Tokens gespeichert werden, damit die Prüfung nur einmal erforderlich ist. Bei Sicherheitsbedenken kann Ihre App Tokens oder die Instance-ID selbst löschen und neue generieren. Außerdem initiiert der Instance ID-Server die Aktualisierung von Token oder Instance-IDs, wenn er Fehler oder Sicherheitsprobleme erkennt.

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

Der Instance-ID-Server kann Ihnen mitteilen, 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-Benachrichtigung senden möchten, um Nutzer wieder anzusprechen.

Apps identifizieren und verfolgen

Die
-Instanz-ID ist für alle App-Instanzen weltweit eindeutig. Ihre Datenbank kann sie also verwenden, um App-Instanzen eindeutig zu identifizieren und nachzuverfolgen. Ihr serverseitiger Code kann über den Instance ID-Clouddienst prüfen, ob eine Instance ID echt ist und mit der ID der ursprünglichen App übereinstimmt, die bei Ihrem Server registriert wurde. Aus Datenschutzgründen kann Ihre App eine Instanz-ID löschen, damit sie nicht mehr mit dem Verlauf in der Datenbank verknüpft ist. Wenn Ihre App das nächste Mal die Instanz-ID aufruft, erhält sie eine völlig neue Instanz-ID, die in keiner Beziehung zur vorherigen steht.

Lebenszyklus von Instanz-IDs

  1. Der Instance ID-Dienst gibt ein InstanceID aus, wenn Ihre App online geht. Die InstanceID wird durch ein öffentliches/privates Schlüsselpaar gesichert, wobei der private Schlüssel auf dem lokalen Gerät gespeichert und der öffentliche Schlüssel beim Instance ID-Dienst registriert ist.
  2. Ihre App kann bei Bedarf mit der Methode getID() ein neues InstanceID anfordern. Ihre App kann sie auf Ihrem Server speichern, sofern Sie einen Server haben, der Ihre App unterstützt.
  3. Ihre App kann bei Bedarf mit der Methode getToken() Tokens vom Instanz-ID-Dienst anfordern. Wie bei InstanceID kann Ihre App auch Tokens auf Ihrem eigenen Server speichern. Alle für Ihre App ausgestellten Tokens gehören zum InstanceID der App.
  4. Tokens sind eindeutig und sicher. Ihre App oder der Instance ID-Dienst müssen Tokens jedoch möglicherweise aktualisieren, wenn ein Sicherheitsproblem auftritt oder wenn ein Nutzer Ihre App während der Wiederherstellung des Geräts deinstalliert und neu installiert. Ihre App muss einen Listener implementieren, um auf Tokenaktualisierungsanfragen des Instance ID-Dienstes zu reagieren.

Clientimplementierung

Die Instanz-ID wird sowohl unter Android als auch unter iOS ausgeführt. Für jede Methode müssen Sie die entsprechende Bibliothek in Ihre Client-App einbinden. Für Android ist 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 Implementierungsleitfäden für Android und iOS.