Che cos'è l'ID istanza?

Funzionalità principali

Oltre a fornire ID univoci per l'autenticazione, l'ID istanza può generare token di sicurezza da utilizzare con altri servizi. Tra le altre funzionalità figurano:

Genera token di sicurezza

L'ID istanza fornisce un'API semplice per generare token di sicurezza che autorizzano terze parti ad accedere alle risorse gestite lato server della tua app.

Verificare l'autenticità dell'app

Passa i token ID istanza al server e utilizza il servizio ID istanza per verificare il nome del pacchetto dell'app e controllare se ha una firma valida. La verifica dei token con il servizio Cloud ID istanza consente di identificare le app note. Per ridurre i costi e le comunicazioni di andata e ritorno ridondanti, configura il tuo server per archiviare questi token in modo che il controllo sia necessario solo una volta. In caso di problemi di sicurezza, l'app può eliminare i token o l'ID istanza stesso e generarne di nuovi. Inoltre, il server ID istanza avvia l'aggiornamento del token o dell'ID istanza se rileva bug o problemi di sicurezza.

Conferma che il dispositivo dell'app è attivo

Il server dell'ID istanza può dirti quando è stato utilizzato l'ultima volta il dispositivo su cui è installata la tua app. Utilizzalo per decidere se conservare i dati della tua app o inviare un messaggio push per coinvolgere nuovamente gli utenti.

Identifica e monitora le app

L'ID istanza è univoco in tutte le istanze di app a livello mondiale, quindi il tuo database può utilizzarlo per identificare e monitorare in modo univoco le istanze di app. Il codice lato server può verificare, tramite il servizio cloud ID istanza, che un ID istanza sia autentico e corrisponda all'app originale registrata sul server. Per motivi di privacy, la tua app può eliminare un ID istanza in modo che non sia più associata ad alcuna cronologia nel database. La prossima volta che l'app chiama l'ID istanza, riceverà un ID istanza completamente nuovo senza relazione con quello precedente.

Ciclo di vita dell'ID istanza

  1. Il servizio ID istanza emette un InstanceID quando la tua app diventa online. InstanceID è supportato da una coppia di chiavi pubblica/privata con la chiave privata archiviata sul dispositivo locale e la chiave pubblica registrata nel servizio ID istanza.
  2. La tua app può richiedere un nuovo InstanceID quando necessario utilizzando il metodo getID(). L'app può archiviarla sul tuo server se ne hai uno che supporta la tua app.
  3. La tua app può richiedere token al servizio ID istanza in base alle esigenze utilizzando il metodo getToken() e, come InstanceID, l'app può anche archiviare i token sul tuo server. Tutti i token emessi per la tua app appartengono al InstanceID dell'app.
  4. I token sono univoci e sicuri, ma la tua app o il servizio ID istanza potrebbe dover aggiornare i token in caso di problemi di sicurezza o quando un utente disinstalla e reinstalla l'app durante il ripristino del dispositivo. L'app deve implementare un listener per rispondere alle richieste di aggiornamento dei token dal servizio ID istanza.

Implementazione client

L'ID istanza viene eseguito sia su Android che su iOS. Per ognuna di queste è necessario includere la libreria appropriata nell'app client. Android richiede Google Play Services. Se intendi generare token, devi disporre di un ID progetto generato da Google Developers Console.

Per istruzioni dettagliate, consulta le guide all'implementazione per Android e iOS.