Verifica del numero di telefono di Firebase

Firebase Phone Number Verification (Firebase PNV) è un metodo più rapido e sicuro per verificare i numeri di telefono. A differenza della verifica basata su SMS, che richiede agli utenti di ricevere e inserire un codice da un messaggio di testo, Firebase PNV funziona ottenendo il numero di telefono assegnato alla SIM nel dispositivo direttamente dall'operatore connesso con un solo tocco. In questo modo, si riducono gli attriti per l'utente, si migliora l'affidabilità non dipendendo dalla consegna dei messaggi SMS e si eliminano i vettori di abuso comunemente sfruttati quando si utilizzano gli SMS.

Funzionalità chiave

Gli operatori sono la fonte attendibile Con Firebase PNV, Google ottiene il numero di telefono verificato per la SIM direttamente dall'operatore, indicandoti il numero presente sul dispositivo su cui è in esecuzione la tua app in questo momento. Gli OTP via SMS possono solo indicare se l'utente ha accesso al numero di telefono.
Utilizzare autonomamente o con un provider di identità Puoi utilizzare Firebase PNV da solo come metodo di verifica del numero di telefono facile da integrare e affidabile oppure puoi utilizzarlo come metodo di accesso con Firebase Authentication o il tuo sistema di autenticazione.
Utilizzare automaticamente i corrieri disponibili Puoi utilizzare l'SDK Firebase PNV per rilevare la compatibilità e passare a un altro metodo, ad esempio gli SMS, quando Firebase PNV non è ancora supportato sul dispositivo. Firebase PNV sarà disponibile gradualmente per gli operatori in tutto il mondo. Man mano che diventano disponibili nuovi operatori, puoi utilizzarli automaticamente senza ulteriori modifiche alla tua app. Consulta Supporto degli operatori per un elenco degli operatori partecipanti.
Eliminare gli attacchi di phishing via SMS Poiché Firebase PNV non invia messaggi SMS per verificare un numero di telefono, gli utenti non possono essere vittime di phishing per ottenere passcode monouso, che possono essere utilizzati negli attacchi di compromissione dell'account.

Come funziona?

Quando invii una richiesta di verifica del numero di telefono, Firebase PNV:

  1. Verifica che il dispositivo e l'operatore di telefonia mobile dell'utente siano supportati.

  2. Ottiene il consenso dell'utente a condividere il suo numero di telefono con la tua app.

  3. Collabora con l'operatore di telefonia mobile assegnato alla SIM per ottenere il numero di telefono verificato.

  4. Restituisce alla tua app un token firmato contenente il numero di telefono verificato, in genere entro 1-3 secondi dal consenso dell'utente.

Dopo aver verificato la firma di questo token, la tua app ora dispone del numero di telefono verificato dell'utente. Puoi utilizzare questo token anche nell'ambito di un flusso di accesso basato sul numero di telefono, ad esempio utilizzando Firebase Authentication o il tuo backend di autenticazione.

Percorso di implementazione

Configura il progetto Firebase Nella console Firebase, completa i passaggi di onboarding per abilitare la fatturazione e l'API Firebase Phone Number Verification per il tuo progetto Firebase.
Installa l'SDK e inizializzalo Installa l'SDK Firebase PNV per la piattaforma della tua app. L'SDK richiede che la verifica del brand OAuth sia stata completata correttamente.
Progettare una schermata esplicativa (Consigliato) Prima di attivare l'interfaccia utente per il consenso dell'utente formale, spiega che deve selezionare una SIM per recuperare il numero e che questa procedura è più veloce e più sicura rispetto agli OTP via SMS. In questo modo si riduce la confusione e si istruiscono gli utenti sul nuovo flusso di verifica del numero di telefono.
Controllare la compatibilità del dispositivo e dell'operatore (Consigliato) All'avvio dell'app, utilizza l'SDK Firebase PNV per verificare che il dispositivo e il suo operatore di telefonia mobile siano compatibili con Firebase PNV. Se è compatibile, mostra la schermata esplicativa e chiedi il consenso. In caso contrario, utilizza il metodo precedente di verifica del numero di telefono, ad esempio tramite SMS.
Richiedere il numero di telefono verificato Utilizza l'SDK Firebase PNV per richiedere il numero di telefono verificato del dispositivo all'operatore di telefonia mobile. In questo modo viene attivato il consenso dell'utente, che la schermata esplicativa aiuta a preparare per il completamento.
Verifica il token di risposta Nella risposta del servizio Firebase PNV, ricevi un token firmato che puoi inviare al backend della tua app. Nel backend, verifica la firma del token. Se la firma è valida, il token contiene il numero di telefono verificato del dispositivo.

Passaggi successivi

  • Consulta la guida Guida introduttiva ad Android per scoprire come testare Firebase PNV in un'app per Android utilizzando la modalità di test senza SIM.