Validation du numéro de téléphone Firebase

Firebase Phone Number Verification (Firebase PNV) est une méthode plus rapide et plus sécurisée pour valider les numéros de téléphone. Contrairement à la validation par SMS, qui nécessite que les utilisateurs reçoivent et saisissent un code à partir d'un message texte, Firebase PNV fonctionne en obtenant le numéro de téléphone attribué à 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 remise des messages SMS et élimine les vecteurs d'abus 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 indique le numéro qui s'affiche actuellement sur l'appareil exécutant votre application. Les OTP par SMS ne peuvent vous indiquer que 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 vous pouvez l'utiliser comme méthode de connexion avec Firebase Authentication ou votre propre système d'authentification.
Utiliser automatiquement les opérateurs disponibles Vous pouvez utiliser le Firebase PNV SDK pour détecter la compatibilité et revenir à une autre méthode, comme les SMS, lorsque Firebase PNV n'est pas encore compatible avec 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 avoir à apporter de modifications supplémentaires à votre application. Pour obtenir la liste des opérateurs participants, consultez la page Compatibilité avec les opérateurs.
Éliminer les attaques par 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 peuvent pas être victimes d'hameçonnage pour obtenir des mots de passe à usage unique, qui peuvent être utilisés lors d'attaques de piratage de compte.

Fonctionnement

Lorsque vous envoyez une demande de validation de numéro de téléphone, Firebase PNV :

  1. vérifie que l'appareil et l'opérateur mobile de l'utilisateur sont compatibles ;

  2. obtient le consentement de l'utilisateur pour partager son numéro de téléphone avec votre application ;

  3. fonctionne avec l'opérateur mobile attribué à la carte SIM pour obtenir le numéro de téléphone validé ;

  4. renvoie à votre application un jeton signé contenant le numéro de téléphone validé, généralement entre 1 et 3 secondes après le consentement de l'utilisateur.

Après avoir validé 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 le cadre d'un flux de connexion basé sur un numéro de téléphone, par exemple à l'aide de Firebase Authentication ou de votre propre backend d'authentification.

Chemin d'accès de l'exécution

Configurer votre projet Firebase Dans la Firebase console, suivez les étapes d'intégration pour activer la facturation et l'API Firebase Phone Number Verification pour votre projet Firebase.
Installer le SDK et l'initialiser Installez le Firebase PNV SDK pour la plate-forme de votre application. Le SDK nécessite que la validation de la marque OAuth ait été effectuée.
Concevoir un écran explicatif (Recommandé) Avant de déclencher l'interface utilisateur 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 réduira la confusion et formera les utilisateurs au nouveau flux 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 Firebase PNV SDK pour vérifier que l'appareil et son opérateur mobile sont compatibles avec Firebase PNV. S'ils sont compatibles, affichez l'écran explicatif et demandez le consentement. Dans le cas contraire, 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 à compléter.
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

  • Consultez le guide Premiers pas sur Android pour découvrir comment tester Firebase PNV dans une application Android à l'aide du mode de test sans carte SIM.