Se usó la API de Cloud Translation para traducir esta página.
Switch to English

Personaliza el flujo de autenticación con funciones asíncronas

En este documento, se muestra cómo extender la autenticación de Identity Platform mediante Cloud Functions asíncronas.

Las funciones asíncronas te permiten activar tareas que no generan bloqueos en respuesta a la creación y eliminación de usuarios. Son útiles para iniciar operaciones de larga duración o realizar tareas auxiliares, como enviar un correo electrónico de bienvenida.

Para modificar directamente el resultado de una operación de autenticación, consulta Extiende la autenticación con funciones de bloqueo.

Antes de comenzar

Crea una app con Identity Platform. Consulta la Guía de inicio rápido para aprender a hacerlo.

Crea una función asíncrona

Para crear e implementar una función asíncrona, sigue los pasos que se indican en Primeros pasos: Escribe, prueba e implementa tus primeras funciones.

Responde a la creación de un usuario

El evento onCreate se activa cada vez que se crea una cuenta de usuario. Esto incluye sesiones y cuentas anónimas creadas con el SDK de Admin. La función no se activa cuando un usuario accede por primera vez con un token personalizado.

En el siguiente ejemplo, se muestra cómo registrar un controlador para onCreate:

Node.js

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

Responde a la eliminación de un usuario

El evento onDelete se activa cada vez que se borra una cuenta de usuario. En el siguiente ejemplo, se muestra cómo registrar un controlador para onDelete:

Node.js

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

Obtén información del usuario

Los eventos onCreate y onDelete proporcionan objetos User y EventContext que contienen información sobre el usuario creado o borrado. Por ejemplo:

Node.js

exports.myFunction = functions.auth.user().onCreate((user, context) => {
  const email = user.email; // The email of the user.
  const displayName = user.displayName; // The display name of the user.
});

Consulta las referencias de las API de UserRecord y EventContext para ver una lista de los campos disponibles.

Próximos pasos