Estenda a autenticação do Firebase com Cloud Functions

Você pode acionar funções em resposta à criação e exclusão de contas de usuário do Firebase. Por exemplo, você pode enviar um e-mail de boas-vindas a um usuário que acabou de criar uma conta no seu aplicativo. Os exemplos nesta página são baseados em um exemplo que faz exatamente isso: envia e-mails de boas-vindas e de despedida após a criação e exclusão da conta.

Para ver mais exemplos de casos de uso, consulte O que posso fazer com o Cloud Functions? .

Acione uma função na criação do usuário

Você pode criar uma função que é acionada quando um usuário do Firebase é criado usando o manipulador de eventos functions.auth.user().onCreate() :

exports.sendWelcomeEmail = functions.auth.user().onCreate((user) => {
  // ...
});

As contas do Firebase acionarão eventos de criação de usuários para Cloud Functions quando:

  • Um usuário cria uma conta de e-mail e uma senha.
  • Um usuário entra pela primeira vez usando um provedor de identidade federado.
  • O desenvolvedor cria uma conta usando o SDK Admin do Firebase.
  • Um usuário entra em uma nova sessão de autenticação anônima pela primeira vez.

Um evento do Cloud Functions não é acionado quando um usuário faz login pela primeira vez usando um token personalizado.

Acessar atributos do usuário

A partir dos dados do usuário retornados para sua função, você pode acessar a lista de atributos do usuário disponíveis no objeto UserRecord do usuário recém-criado. Por exemplo, você pode obter o e-mail e o nome de exibição do usuário conforme mostrado:

const email = user.email; // The email of the user.
const displayName = user.displayName; // The display name of the user.

Acionar uma função na exclusão do usuário

Assim como você pode acionar uma função na criação de um usuário, você pode responder a eventos de exclusão de usuário. Use o manipulador de eventos functions.auth.user().onDelete() conforme mostrado:

exports.sendByeEmail = functions.auth.user().onDelete((user) => {
  // ...
});

Funções de bloqueio de gatilho

Se você tiver atualizado para o Firebase Authentication com Identity Platform, poderá estender o Firebase Authentication usando o bloqueio do Cloud Functions .

As funções de bloqueio permitem executar código personalizado que modifica o resultado do registro ou login de um usuário em seu aplicativo. Por exemplo, você pode impedir que um usuário se autentique se ele não atender a determinados critérios ou atualizar as informações de um usuário antes de devolvê-las ao seu aplicativo cliente.