Verificação de número de telefone do Firebase
A Firebase Phone Number Verification (Firebase PNV) é um método rápido e seguro para verificar os números de telefone dos usuários. Ao contrário da verificação por SMS, que exige que os usuários recebam e insiram um código de uma mensagem de texto, o Firebase PNV funciona recebendo o número de telefone do chip no dispositivo diretamente da operadora conectada com um único toque. Isso reduz o atrito para o usuário, melhora a confiabilidade por não depender da entrega de mensagens SMS e elimina vetores de abuso comumente explorados ao usar SMS.
Principais recursos
| As transportadoras são a fonte da verdade | Com o Firebase PNV, o Google recebe o número de telefone verificado do chip diretamente da operadora, informando qual número está no dispositivo executando seu app no momento. As OTPs por SMS só informam se o usuário tem acesso ao número de telefone. |
| Usar de forma independente ou com um provedor de identidade | Você pode usar o Firebase PNV sozinho como um método fácil de integrar e confiável de verificação de número de telefone ou como um método de login com o Firebase Authentication ou seu próprio sistema de autenticação. |
| Usar automaticamente as transportadoras disponíveis | Use o SDK Firebase PNV para detectar a compatibilidade e voltar para outro método, como SMS, quando o Firebase PNV ainda não for compatível com o dispositivo. O Firebase PNV vai estar disponível gradualmente para transportadoras em todo o mundo. À medida que novas operadoras ficam disponíveis, você pode usá-las automaticamente sem fazer outras mudanças no app. Consulte Suporte a operadoras para ver uma lista das operadoras participantes. |
| Eliminar ataques de phishing por SMS | Como o Firebase PNV não envia mensagens SMS para verificar um número de telefone, os usuários não esperam receber mensagens do seu app com senhas únicas, que podem ser usadas em ataques de sequestro de conta. |
Como funciona?
Quando você faz uma solicitação de verificação de número de telefone, Firebase PNV:
Verifica se o dispositivo e a operadora de celular do usuário são compatíveis.
Recebe o consentimento do usuário para compartilhar o número de telefone com seu app.
Funciona com a operadora de celular atribuída ao chip para obter o número de telefone verificado.
Retorna ao seu app um token assinado que contém o número de telefone verificado, geralmente em 1 a 3 segundos após o consentimento do usuário.
Depois de verificar a assinatura desse token, seu app terá o número de telefone verificado do usuário. Você também pode usar esse token como parte de um fluxo de login baseado em número de telefone, por exemplo, usando Firebase Authentication ou seu próprio back-end de autenticação.
.Caminho de implementação
| Configurar seu projeto do Firebase | No console do Firebase, conclua as etapas de integração para ativar o faturamento e a API Firebase Phone Number Verification no projeto do Firebase. | |
| Instalar e inicializar o SDK | Instale o SDK Firebase PNV para a plataforma do seu app. O SDK exige que a verificação da marca OAuth tenha sido concluída. | |
| Criar uma tela de explicação | (Recomendado) Antes de acionar a interface formal de consentimento do usuário, explique que ele precisa selecionar um SIM para buscar o número e como isso é mais rápido e seguro do que senhas únicas por SMS. Isso vai reduzir a confusão e treinar os usuários no novo fluxo de verificação de número de telefone. | |
| Verificar a compatibilidade do dispositivo e da operadora | (Recomendado) Quando o app for iniciado, use o SDK do Firebase PNV para verificar se o dispositivo e a operadora de celular são compatíveis com Firebase PNV. Se for compatível, mostre a tela de explicação e peça consentimento. Se não for, use seu método legado de verificação de número de telefone, como SMS. | |
| Solicitar o número de telefone verificado | Use o SDK Firebase PNV para solicitar o número de telefone verificado do dispositivo à operadora de celular. Isso aciona o consentimento do usuário, que a tela explicativa ajuda a preparar para a conclusão. | |
| Verificar o token de resposta | Na resposta do serviço Firebase PNV, você recebe um token assinado, que pode ser enviado para o back-end do app. No back-end, verifique a assinatura do token. Se a assinatura for válida, o token vai conter o número de telefone verificado do dispositivo. |
Próximas etapas
- O Firebase PNV é um serviço faturado que gera um custo por verificação. Consulte a página de Preços para mais detalhes.
- Consulte o guia Começar no Android para saber como usar Firebase PNV em um app Android.