Firebase Authentication
O Firebase Authentication fornece serviços de back-end, SDKs fáceis de usar e bibliotecas de IU prontas para autenticar usuários no seu aplicativo. Ele oferece suporte à autenticação usando senhas, números de telefone, provedores de identidade federados conhecidos, como Google, Facebook e Twitter, entre outros.
O Firebase Authentication é estreitamente integrado a outros serviços do Firebase e aproveita os padrões do setor, como OAuth 2.0 e OpenID Connect, para que possa ser facilmente integrado ao seu back-end personalizado.
Principais recursos
Você pode permitir que usuários façam login no seu app do Firebase usando a FirebaseUI como uma solução de autenticação simples e completa ou o SDK do Firebase Authentication para integrar manualmente um ou vários métodos de login no seu app.
Autenticação da FirebaseUI | |
---|---|
Solução de autenticação simples |
A maneira recomendada de adicionar um sistema de login completo ao seu app. A FirebaseUI fornece uma solução de autenticação simples que lida com os fluxos de IU para fazer login dos usuários com endereços de e-mail e senhas, números de telefone e provedores de identidade federados conhecidos, incluindo o Login do Google e do Facebook. O componente FirebaseUI Auth implementa as práticas recomendadas para autenticação em dispositivos móveis e sites, o que pode maximizar a conversão de logins e inscrições no seu aplicativo. Ele também lida com casos extremos, como recuperação e vinculação de contas, que podem ser sensíveis à segurança e propensos a erros. A FirebaseUI pode ser personalizada com facilidade para se ajustar ao restante do estilo visual do seu app. Além disso, por ela ser de código aberto, você tem uma visão melhor da experiência do usuário. |
SDK do Firebase Authentication | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Autenticação baseada em e-mail e senha | Autentique os usuários com os endereços de e-mail e senhas deles. O SDK do Firebase Authentication fornece métodos para criar e gerenciar usuários que utilizam os próprios endereços de e-mail e senhas para fazer login. O Firebase Authentication também lida com o envio de e-mails de redefinição de senha. |
||||||||||
Integração do provedor de identidade federado | Autentique usuários por meio da integração com provedores de identidade federados. O SDK do Firebase Authentication fornece métodos que permitem aos usuários fazer login com as Contas do Google, Facebook, Twitter e GitHub.
|
||||||||||
Autenticação por número de telefone | Envie mensagens de SMS para os números de telefone dos usuários para autenticá-los. |
||||||||||
Integração de sistema de autenticação personalizado |
Conecte o sistema de login do seu app ao SDK do Firebase Authentication e tenha acesso ao Firebase Realtime Database e a outros serviços do Firebase. |
||||||||||
Autenticação anônima | Use recursos que exigem autenticação sem que os usuários precisem fazer login primeiro ao criar contas anônimas temporárias. Se o usuário quiser se inscrever depois, é possível fazer upgrade da conta anônima para uma normal, permitindo que o usuário possa continuar de onde parou. |
Como funciona?
Para conectar um usuário ao seu app, primeiro você precisa ter as credenciais de autenticação do usuário. Essas credenciais podem ser o endereço de e-mail e a senha do usuário ou um token do OAuth de um provedor de identidade federado. Em seguida, você passa essas credenciais para o SDK do Firebase Authentication. Nossos serviços de back-end verificarão essas credenciais e retornarão uma resposta ao cliente.
Após fazer login, você tem acesso às informações básicas do perfil do usuário e pode controlar o acesso dele aos dados armazenados em outros produtos do Firebase. É possível também usar o token de autenticação fornecido para verificar a identidade dos usuários nos seus próprios serviços de back-end.
Observação:por padrão, os usuários autenticados podem ler e gravar dados no Firebase Realtime Database e no Cloud Storage. Para controlar o acesso desses usuários, modifique as regras de segurança do Firebase Database e do Cloud Storage.
Caminhos de implementação
Usar a autenticação da FirebaseUI | ||
---|---|---|
Configurar métodos de login | Para fazer login com o endereço de e-mail e a senha ou com o número de telefone e todos os provedores de identidade federados a que você quer oferecer suporte, ative-os no Console do Firebase e conclua todas as configurações exigidas pelos provedores, como a configuração do seu URL de redirecionamento do OAuth. | |
Personalizar a IU de login | Você pode personalizar a IU de login ao definir as opções da FirebaseUI ou usar o código no GitHub deixar a experiência de login ainda mais única. | |
Usar a FirebaseUI para executar o fluxo de login | Importe a biblioteca da FirebaseUI, especifique os métodos de login a que você quer oferecer suporte e inicie o fluxo de login da FirebaseUI. |
Usar o SDK do Firebase Authentication | ||
---|---|---|
Configurar métodos de login | Para fazer login com o endereço de e-mail e a senha ou com o número de telefone e todos os provedores de identidade federados a que você quer oferecer suporte, ative-os no Console do Firebase e conclua todas as configurações exigidas pelos provedores, como a configuração do seu URL de redirecionamento do OAuth. | |
Implementar os fluxos de IU nos métodos de login | Para o login com o endereço de e-mail e a senha, implemente um fluxo que solicite aos usuários que digitem os endereços de e-mail e senhas deles. Para fazer login com o número de telefone, crie um fluxo que solicite aos usuários o número de telefone e, em seguida, o código contido na mensagem de SMS que eles receberem. Para o login federado, implemente o fluxo exigido para cada provedor. | |
Transmitir as credenciais do usuário para o SDK do Firebase Authentication | Transmita o endereço de e-mail e a senha do usuário ou o token do OAuth adquirido do provedor de identidade federado para o SDK do Firebase Authentication. |
A seguir
Saiba mais sobre os usuários em um projeto do Firebase e, em seguida, veja os guias de integração relativos aos provedores de login a que você quer oferecer suporte:
Não sabe por onde começar?