Verifica del numero di telefono 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 collegato con un solo tocco. Ciò riduce l'attrito per l'utente, migliora l'affidabilità non dipendendo dalla consegna dei messaggi SMS ed elimina i vettori di abuso comunemente sfruttati quando si utilizzano gli SMS.
Funzionalità chiave
| Gli operatori sono la fonte di verità | 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 SMS possono solo dirti 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 gli operatori 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 diventerà gradualmente disponibile per gli operatori di tutto il mondo. Man mano che diventano disponibili nuovi operatori, puoi utilizzarli automaticamente senza apportare modifiche aggiuntive alla tua app. Per un elenco degli operatori partecipanti, consulta la pagina Supporto degli operatori. |
| Eliminare gli attacchi di phishing via SMS | Poiché Firebase PNV non invia messaggi SMS per verificare un numero di telefono, quindi gli utenti non possono essere vittime di phishing per i codici di accesso monouso, che possono essere utilizzati negli attacchi di acquisizione dell'account. |
Come funziona?
Quando effettui una richiesta di verifica del numero di telefono, Firebase PNV:
Verifica che il dispositivo e l'operatore di telefonia mobile dell'utente siano supportati.
Ottiene il consenso dell'utente a condividere il suo numero di telefono con la tua app.
Collabora con l'operatore di telefonia mobile assegnato alla SIM per ottenere il numero di telefono verificato.
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 ha il numero di telefono verificato dell'utente. Puoi anche utilizzare questo token come parte di un flusso di accesso basato sul numero di telefono, ad esempio utilizzando Firebase Authentication o il tuo backend di autenticazione.
.Percorso di implementazione
| Configurare il progetto Firebase | Nella Firebase console, completa i passaggi di onboarding per abilitare la fatturazione e l'API per il tuo progetto Firebase.Firebase Phone Number Verification | |
| Installare l'SDK e inizializzarlo | 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 di consenso dell'utente formale, spiega che deve selezionare una SIM per recuperare il numero e che questa operazione è più rapida e sicura rispetto agli OTP SMS. In questo modo si ridurrà la confusione e gli utenti verranno istruiti sul nuovo flusso di verifica del numero di telefono. | |
| Verificare la compatibilità del dispositivo e dell'operatore | (Consigliato) Al lancio dell'app, utilizza l'SDK Firebase PNV per verificare che il dispositivo e il relativo operatore di telefonia mobile siano compatibili con Firebase PNV. Se è compatibile, visualizza la schermata esplicativa e richiedi il consenso. In caso contrario, utilizza il metodo legacy di verifica del numero di telefono, ad esempio gli SMS. | |
| Richiedere il numero di telefono verificato | Utilizza l'SDK Firebase PNV per richiedere all'operatore di telefonia mobile il numero di telefono verificato del dispositivo. In questo modo viene attivato il consenso dell'utente, che la schermata esplicativa aiuta a completare. | |
| Verificare 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 Iniziare a utilizzare Android per scoprire come testare Firebase PNV in un'app per Android utilizzando la modalità di test senza SIM.
- Prova il codelab, che ti guida passo passo nell'integrazione di Firebase PNV in un'app per Android.