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 za pomocą SMS-ów, 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 SMS-ów, i eliminuje wektory nadużyć powszechnie wykorzystywane podczas korzystania z SMS-ów.
Najważniejsze funkcje
| Operatorzy są źródłem wiarygodnych danych | 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 z Twoją aplikacją. Jednorazowe kody dostępu SMS mogą tylko poinformować, czy użytkownik ma dostęp do numeru telefonu. |
| Używaj 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 w ramach Firebase Authentication lub własnego systemu uwierzytelniania. |
| Automatyczne korzystanie z usług dostępnych operatorów | Możesz użyć pakietu SDK Firebase PNV, aby wykryć zgodność i wrócić do innej metody, takiej jak SMS, gdy Firebase PNV nie jest jeszcze obsługiwana na urządzeniu. Firebase PNV będzie stopniowo udostępniana operatorom na całym świecie. Gdy pojawią się nowi operatorzy, możesz automatycznie korzystać z ich usług bez wprowadzania dodatkowych zmian w aplikacji. Listę uczestniczących operatorów znajdziesz w sekcji Obsługa operatorów. |
| Eliminowanie ataków phishingowych za pomocą SMS-ów | Ponieważ Firebase PNV nie wysyła żadnych SMS-ów w celu weryfikacji numeru telefonu, więc użytkownicy nie mogą zostać ofiarami phishingu w celu uzyskania jednorazowych kodów dostępu, które mogą być używane w atakach na przejęcie konta. |
Jak to działa?
Gdy wyślesz prośbę o weryfikację numeru telefonu, Firebase PNV:
Sprawdza, czy urządzenie użytkownika i operator komórkowy są obsługiwane.
Uzyskuje zgodę użytkownika na udostępnienie jego numeru telefonu Twojej aplikacji.
Współpracuje z operatorem komórkowym przypisanym do karty SIM, aby uzyskać zweryfikowany numer telefonu.
Zwraca do Twojej 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 Twoja aplikacja ma zweryfikowany numer telefonu użytkownika. Możesz też użyć tego tokena w ramach procesu logowania na podstawie numeru telefonu, np. za pomocą Firebase Authentication lub własnego backendu uwierzytelniania.
Ścieżka implementacji
| Skonfiguruj projekt w Firebase | W konsoli Firebase wykonaj czynności wprowadzające, aby włączyć płatności i interfejs API Firebase Phone Number Verification w projekcie w Firebase. | |
| Zainstaluj pakiet SDK i zainicjuj go | Zainstaluj pakiet SDK Firebase PNV na platformie aplikacji. Pakiet SDK wymaga, aby weryfikacja marki OAuth została zakończona. | |
| Zaprojektuj ekran z wyjaśnieniem | (Zalecane) Zanim wyświetlisz oficjalny interfejs zgody użytkownika, wyjaśnij, że musi on wybrać kartę SIM, aby pobrać numer, oraz że jest to szybsze i bezpieczniejsze niż jednorazowe kody dostępu SMS. Zmniejszy to zamieszanie i nauczy użytkowników na nowy proces weryfikacji numeru telefonu. | |
| Sprawdź zgodność urządzenia i operatora | (Zalecane) Gdy aplikacja się uruchomi, użyj pakietu SDK Firebase PNV, aby sprawdzić, czy urządzenie i jego operator komórkowy są zgodne z Firebase PNV. Jeśli są zgodne, wyświetl ekran z wyjaśnieniem i poproś o zgodę. Jeśli nie są zgodne, użyj starszej metody weryfikacji numeru telefonu, np. SMS-a. | |
| Poproś o zweryfikowany numer telefonu | Użyj pakietu SDK Firebase PNV, aby poprosić operatora komórkowego o zweryfikowany numer telefonu urządzenia. Spowoduje to wyświetlenie prośby o zgodę użytkownika, do której przygotuje go ekran z wyjaśnieniem. | |
| Zweryfikuj token odpowiedzi | W odpowiedzi z usługi Firebase PNV otrzymasz podpisany token, który możesz wysłać do backendu aplikacji. W backendzie zweryfikuj podpis tokena. Jeśli podpis jest prawidłowy, token zawiera zweryfikowany numer telefonu urządzenia. |
Dalsze kroki
- Aby dowiedzieć się, jak test Firebase PNV w aplikacji na Androida w trybie testowym bez karty SIM, zapoznaj się z przewodnikiem Rozpoczęcie pracy na Androidzie.
- Wypróbuj ćwiczenie w Codelabs, które krok po kroku przeprowadzi Cię przez proces integracji Firebase PNV z aplikacją na Androida.