Extiende Firebase Authentication con Cloud Functions

Puedes activar una función en respuesta a la creación o la eliminación de cuentas de usuario a través de Firebase Authentication. Por ejemplo, podrías enviar un correo electrónico de bienvenida a un usuario que acaba de crear una cuenta en la app. Los ejemplos de esta página se basan en una muestra que hace exactamente eso: envía correos electrónicos de bienvenida y despedida cuando se crea o se borra una cuenta.

Para ver más ejemplos de casos de uso, consulta ¿Qué puedo hacer con Cloud Functions?

Activa una función cuando se crea un usuario

Puedes usar el controlador de eventos functions.auth.user().onCreate() para crear una función que se active cuando se cree un usuario de Firebase:

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

Las cuentas de Firebase activarán eventos de creación de usuarios para Cloud Functions en los siguientes casos:

  • Un usuario crea una cuenta de correo electrónico y una contraseña.
  • Un usuario accede por primera vez con un proveedor de identidad federada.
  • El programador crea una cuenta con el SDK de administrador de Firebase.
  • Un usuario accede a una sesión de autenticación anónima por primera vez.

Un evento Cloud Functions no se activa cuando un usuario accede por primera vez con un token personalizado.

Accede a los atributos de usuario

A partir de los datos del usuario que se muestran en tu función, puedes acceder a la lista de atributos disponible en el objeto UserRecord del usuario creado recientemente. Por ejemplo, puedes obtener el correo electrónico y el nombre para mostrar del usuario de la siguiente forma:

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

Activa una función cuando se borra un usuario

Así como puedes activar una función cuando se crea un usuario, puedes responder a los eventos de eliminación de usuarios. Usa el controlador de eventos functions.auth.user().onDelete() como se muestra a continuación:

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

Enviar comentarios sobre...

Si necesitas ayuda, visita nuestra página de asistencia.