Was ist eine Instanz-ID?

Wichtige Features

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

Sicherheitstokens generieren

Die Instance ID bietet eine einfache API zum Generieren von Sicherheitstokens, die Drittanbieter zum Zugriff auf die serverseitig verwalteten Ressourcen Ihrer App autorisieren.

Authentizität der App prüfen

Reichen Sie Instanz-ID-Tokens an Ihren Server weiter und verwenden Sie den Instanz-ID-Dienst, um den Namen des App-Pakets zu überprüfen und zu prüfen, ob es eine gültige Signatur hat. Wenn Sie Tokens mit dem Instanz-ID-Cloud-Dienst überprüfen, können Sie bekannte Apps leichter identifizieren. Um Kosten und redundante Kommunikation zu vermeiden, konfigurieren Sie Ihren Server so, dass diese Tokens gespeichert werden, damit die Überprüfung nur einmal erforderlich ist. Bei Sicherheitsbedenken kann Ihre App Tokens oder die Instanz-ID selbst löschen und neue generieren. Außerdem initiiert der Instance ID-Server das Aktualisieren des Tokens oder der Instance ID, wenn Fehler oder Sicherheitsprobleme erkannt werden.

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-Nachricht senden möchten, um Nutzer wieder anzusprechen.

Apps identifizieren und verfolgen

Die Instanz-ID ist für alle App-Instanzen weltweit eindeutig. So können Sie App-Instanzen in Ihrer Datenbank eindeutig identifizieren und verfolgen. Ihr serverseitiger Code kann über den Instanz-ID-Cloud-Dienst prüfen, ob eine Instanz-ID echt ist und mit der ursprünglichen App übereinstimmt, die bei Ihrem Server registriert wurde. Aus Datenschutzgründen kann Ihre App eine Instanz-ID löschen, sodass sie nicht mehr mit einem Verlauf in der Datenbank verknüpft ist. Wenn Ihre App die Instanz-ID das nächste Mal aufruft, erhält sie eine völlig neue Instanz-ID, die in keinem Zusammenhang mit der vorherigen steht.

Lebenszyklus von Instanz-IDs

  1. Der Instance ID-Dienst gibt eine InstanceID aus, wenn Ihre App online geht. Die InstanceID wird von einem öffentlichen/privaten Schlüsselpaar unterstützt, 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() einen neuen InstanceID anfordern. Ihre App kann sie auf Ihrem Server speichern, sofern Sie einen haben, der Ihre App unterstützt.
  3. Ihre App kann nach 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 muss jedoch 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 Tokenaktualisierungsanfragen vom Instance ID-Dienst zu reagieren.

Clientimplementierung

Die Instanz-ID funktioniert sowohl auf Android- als auch auf iOS-Geräten. Für jede Plattform müssen Sie die entsprechende Bibliothek in Ihre Client-App einbinden. 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.

Detaillierte Anleitungen finden Sie in den Implementierungsleitfäden für Android und iOS.