Weryfikacja numeru telefonu w Firebase

Firebase Phone Number Verification (Firebase PNV) to szybsza i bezpieczniejsza metoda weryfikacji numerów telefonów. W przeciwieństwie do weryfikacji opartej na SMS-ach, która wymaga od użytkowników otrzymania i wpisania kodu z wiadomości tekstowej, Firebase PNV działa poprzez pobieranie numeru telefonu przypisanego do karty SIM w urządzeniu bezpośrednio od połączonego operatora za pomocą jednego kliknięcia. Zmniejsza to trudności dla użytkownika, zwiększa niezawodność, ponieważ nie zależy od dostarczania wiadomości SMS, i eliminuje wektory nadużyć powszechnie wykorzystywane podczas korzystania z SMS-ów.

Najważniejsze funkcje

Operatorzy są wiarygodnym źródłem informacji Dzięki Firebase PNV Google uzyskuje zweryfikowany numer telefonu karty SIM bezpośrednio od operatora, informując Cię, jaki numer jest obecnie na urządzeniu, na którym działa Twoja aplikacja. Jednorazowe kody SMS mogą tylko potwierdzić, czy użytkownik ma dostęp do numeru telefonu.
Używanie samodzielnie lub z dostawcą tożsamości Możesz używać Firebase PNV samodzielnie jako łatwej do zintegrowania i niezawodnej metody weryfikacji numeru telefonu lub jako metody logowania z Firebase Authentication albo własnym systemem uwierzytelniania.
Automatyczne korzystanie z usług dostępnych przewoźników Możesz użyć pakietu Firebase PNV SDK, aby wykryć zgodność i w razie potrzeby przejść na inną metodę, np. SMS-a, gdy Firebase PNV nie jest jeszcze obsługiwany na urządzeniu. Firebase PNV będzie stopniowo udostępniana operatorom na całym świecie. Gdy pojawią się nowi przewoźnicy, możesz automatycznie korzystać z ich usług bez wprowadzania dodatkowych zmian w aplikacji. Listę uczestniczących przewoźników znajdziesz w artykule Obsługa przewoźników.
Eliminowanie ataków typu phishing z użyciem SMS-ów Firebase PNV nie wysyła SMS-ów w celu weryfikacji numeru telefonu, więc użytkownicy nie mogą zostać oszukani w celu uzyskania jednorazowych haseł, które mogą być wykorzystywane w atakach polegających na przejęciu konta.

Jak to działa?

Gdy wyślesz prośbę o weryfikację numeru telefonu, Firebase PNV:

  1. Sprawdza, czy urządzenie użytkownika i operator komórkowy są obsługiwane.

  2. Uzyskuje zgodę użytkownika na udostępnienie numeru telefonu Twojej aplikacji.

  3. Współpracuje z operatorem komórkowym przypisanym do karty SIM, aby uzyskać zweryfikowany numer telefonu.

  4. Zwraca do aplikacji podpisany token zawierający zweryfikowany numer telefonu, zwykle w ciągu 1–3 sekund od uzyskania zgody użytkownika.

Po zweryfikowaniu podpisu tego tokena aplikacja będzie mieć zweryfikowany numer telefonu użytkownika. Możesz też użyć tego tokena w procesie logowania opartym na numerze telefonu, np. za pomocą Firebase Authentication lub własnego backendu uwierzytelniania.

.

Ścieżka implementacji

Konfigurowanie projektu w Firebase W Firebasekonsoli wykonaj czynności wprowadzające, aby włączyć płatności i interfejs Firebase Phone Number Verification API w projekcie w Firebase.
Instalowanie i inicjowanie pakietu SDK Zainstaluj Firebase PNV SDK dla platformy aplikacji. Pakiet SDK wymaga, aby weryfikacja marki za pomocą OAuth została zakończona.
Projektowanie ekranu z wyjaśnieniem (Zalecane) Przed wyświetleniem interfejsu zgody użytkownika wyjaśnij, że musi on wybrać kartę SIM, aby pobrać numer, oraz że jest to szybsze i bezpieczniejsze niż jednorazowe hasła SMS. Zmniejszy to dezorientację i pozwoli użytkownikom zapoznać się z nowym procesem weryfikacji numeru telefonu.
Sprawdzanie zgodności urządzenia i operatora (Zalecane) Po uruchomieniu aplikacji użyj pakietu SDK Firebase PNV, aby sprawdzić, czy urządzenie i jego operator komórkowy są zgodne z Firebase PNV. Jeśli jest zgodna, wyświetl ekran z wyjaśnieniem i poproś o zgodę. Jeśli nie, użyj starszej metody weryfikacji numeru telefonu, np. SMS-a.
Wysyłanie prośby o zweryfikowany numer telefonu Użyj pakietu Firebase PNV SDK, aby poprosić operatora komórkowego o zweryfikowany numer telefonu urządzenia. Wymaga to uzyskania zgody użytkownika, do której przygotowuje go ekran z wyjaśnieniem.
Weryfikowanie tokena odpowiedzi W odpowiedzi z usługi Firebase PNV otrzymasz podpisany token, który możesz wysłać do backendu aplikacji. Na serwerze zweryfikuj sygnaturę tokena. Jeśli podpis jest prawidłowy, token zawiera zweryfikowany numer telefonu urządzenia.

Dalsze kroki

  • W przewodniku Rozpoczęcie pracy z Androidem znajdziesz informacje o tym, jak testować Firebase PNV w aplikacji na Androida w trybie testowym bez karty SIM.