Vérification du numéro de téléphone Firebase
Firebase Phone Number Verification (Firebase PNV) est une méthode rapide et sécurisée pour valider les numéros de téléphone des utilisateurs. Contrairement à la validation par SMS, qui nécessite que les utilisateurs reçoivent et saisissent un code à partir d'un message texte, Firebase PNV permet d'obtenir le numéro de téléphone de la carte SIM de l'appareil directement auprès de l'opérateur connecté en un seul geste. Cela réduit les frictions pour l'utilisateur, améliore la fiabilité en ne dépendant pas de la réception des messages SMS et élimine les vecteurs d'utilisation abusive couramment exploités lors de l'utilisation des SMS.
Capacités clés
| Les opérateurs sont la source de référence | Avec Firebase PNV, Google obtient le numéro de téléphone validé de la carte SIM directement auprès de l'opérateur, ce qui vous permet de savoir quel numéro est actuellement utilisé sur l'appareil exécutant votre application. Les codes secrets à usage unique par SMS peuvent uniquement vous indiquer si l'utilisateur a accès au numéro de téléphone. |
| Utiliser de manière autonome ou avec un fournisseur d'identité | Vous pouvez utiliser Firebase PNV seul comme méthode de validation de numéro de téléphone facile à intégrer et fiable, ou l'utiliser comme méthode de connexion avec Firebase Authentication ou votre propre système d'authentification. |
| Utiliser automatiquement les transporteurs disponibles | Vous pouvez utiliser le SDK Firebase PNV pour détecter la compatibilité et revenir à une autre méthode, comme les SMS, lorsque Firebase PNV n'est pas encore pris en charge sur l'appareil. Firebase PNV sera progressivement disponible pour les opérateurs du monde entier. À mesure que de nouveaux opérateurs seront disponibles, vous pourrez les utiliser automatiquement sans apporter de modifications supplémentaires à votre application. Pour obtenir la liste des opérateurs participants, consultez Prise en charge des opérateurs. |
| Éliminer les attaques d'hameçonnage par SMS | Étant donné que Firebase PNV n'envoie aucun SMS pour valider un numéro de téléphone, les utilisateurs ne s'attendent pas à recevoir de messages de votre application avec des mots de passe à usage unique, qui peuvent être utilisés lors d'attaques de piratage de compte. |
Fonctionnement
Lorsque vous demandez à valider un numéro de téléphone, Firebase PNV :
Vérifie que l'appareil et l'opérateur mobile de l'utilisateur sont compatibles.
Obtient le consentement de l'utilisateur pour partager son numéro de téléphone avec votre application.
Fonctionne avec l'opérateur mobile attribué à la carte SIM pour obtenir le numéro de téléphone validé.
Renvoie à votre application un jeton signé contenant le numéro de téléphone validé, généralement dans un délai de 1 à 3 secondes après l'accord de l'utilisateur.
Après avoir vérifié la signature de ce jeton, votre application dispose désormais du numéro de téléphone validé de l'utilisateur. Vous pouvez également utiliser ce jeton dans un flux de connexion basé sur un numéro de téléphone, par exemple en utilisant Firebase Authentication ou votre propre backend d'authentification.
Chemin d'accès de l'exécution
| Configurer votre projet Firebase | Dans la console Firebase, suivez les étapes d'intégration pour activer la facturation et l'API Firebase Phone Number Verification pour votre projet Firebase. | |
| Installer et initialiser le SDK | Installez le SDK Firebase PNV pour la plate-forme de votre application. Le SDK exige que la validation de la marque OAuth ait été effectuée. | |
| Concevoir un écran d'explication | (Recommandé) Avant de déclencher l'UI de consentement formel de l'utilisateur, expliquez-lui qu'il doit sélectionner une carte SIM pour récupérer le numéro, et que cette méthode est plus rapide et plus sécurisée que les OTP par SMS. Cela permettra de limiter la confusion et de former les utilisateurs au nouveau processus de validation du numéro de téléphone. | |
| Vérifier la compatibilité de l'appareil et de l'opérateur | (Recommandé) Au lancement de votre application, utilisez le SDK Firebase PNV pour vérifier que l'appareil et son opérateur mobile sont compatibles avec Firebase PNV. Si elle est compatible, affichez l'écran explicatif et demandez le consentement. Si ce n'est pas le cas, utilisez votre ancienne méthode de validation du numéro de téléphone, comme les SMS. | |
| Demander le numéro de téléphone validé | Utilisez le SDK Firebase PNV pour demander le numéro de téléphone validé de l'appareil à l'opérateur mobile. Cela déclenche le consentement de l'utilisateur, que votre écran explicatif l'aide à fournir. | |
| Valider le jeton de réponse | Dans la réponse du service Firebase PNV, vous obtenez un jeton signé que vous pouvez envoyer au backend de votre application. Sur le backend, validez la signature du jeton. Si la signature est valide, le jeton contient le numéro de téléphone validé de l'appareil. |
Étapes suivantes
- Firebase PNV est un service payant qui entraîne un coût par validation. Consultez la page des tarifs pour plus d'informations.
- Consultez le guide Premiers pas sur Android pour découvrir comment utiliser Firebase PNV dans une application Android.