É possível acionar as funções em resposta à criação e exclusão de contas de usuários do Firebase. Por exemplo, você pode enviar um e-mail de apresentação para um usuário que acabou de criar uma conta no seu app. Os exemplos nesta página são baseados em uma amostra que faz exatamente isso: envia e-mails de apresentação e de despedida após a criação e exclusão de contas.
Para mais exemplos de casos de uso, consulte O que posso fazer com o Cloud Functions?.
Acionar uma função na criação do usuário
É possível criar uma função que será acionada quando um usuário do Firebase for
criado usando o
manipulador de eventos
functions.auth.user().onCreate()
:
exports.sendWelcomeEmail = functions.auth.user().onCreate((user) => { // ... });
As contas Firebase acionam eventos de criação de usuários para Cloud Functions quando:
- um usuário criar uma conta de e-mail e uma senha;
- um usuário fizer login pela primeira vez com um provedor de identidade federado;
- o desenvolvedor criar uma conta usando o SDK Admin;
- um usuário fizer login em uma sessão de autenticação anônima pela primeira vez.
Um evento Cloud Functions não é ativado quando um usuário faz login pela primeira vez usando um token personalizado.
Acessar os atributos do usuário
Com os dados do usuário retornados para sua função, você pode
acessar a lista de atributos dele disponíveis no objeto
UserRecord
recém-criado. Por exemplo, é possível ver o e-mail e o nome de exibição do usuário conforme mostrado abaixo:
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 de um usuário
Além de acionar uma função na criação do usuário, você pode
responder a eventos de exclusão de usuários. Use o
manipulador de eventos
functions.auth.user().onDelete()
conforme mostrado:
exports.sendByeEmail = functions.auth.user().onDelete((user) => { // ... });
Acionar funções de bloqueio
Se você fez upgrade para o Firebase Authentication with Identity Platform, é possível estender o Firebase Authentication usando o bloqueio do Cloud Functions.
As funções de bloqueio permitem que você execute um código personalizado que modifica o resultado de um usuário se registrando ou fazendo login no app. Por exemplo, é possível impedir que alguém faça a autenticação caso não atenda a determinados critérios ou atualizar as informações de um usuário antes de retornar esses dados ao app cliente.