Déclencheurs d'authentification Firebase

Vous pouvez déclencher Cloud Functions en réponse à la création et à la suppression de comptes utilisateur Firebase. Par exemple, vous pouvez envoyer un e-mail de bienvenue à un utilisateur qui vient de créer un compte dans votre application. Les exemples sur cette page sont basés sur un exemple qui fait exactement cela : envoyer des e-mails de bienvenue et d'adieu lors de la création et de la suppression d'un compte.

Pour plus d'exemples de cas d'utilisation, consultez Que puis-je faire avec Cloud Functions ?

Déclencher une fonction à la création d'un utilisateur

Vous pouvez créer une fonction qui se déclenche lorsqu'un utilisateur Firebase est créé à l'aide du gestionnaire d'événements functions.auth.user().onCreate() :

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

Les comptes Firebase déclencheront des événements de création d'utilisateurs pour Cloud Functions lorsque :

  • Un utilisateur crée un compte de messagerie et un mot de passe.
  • Un utilisateur se connecte pour la première fois à l'aide d'un fournisseur d'identité fédérée.
  • Le développeur crée un compte à l'aide du SDK Firebase Admin.
  • Un utilisateur se connecte pour la première fois à une nouvelle session d'authentification anonyme.

Un événement Cloud Functions n'est pas déclenché lorsqu'un utilisateur se connecte pour la première fois à l'aide d'un jeton personnalisé.

Accéder aux attributs de l'utilisateur

A partir des données utilisateur renvoyées à votre fonction, vous pouvez accéder à la liste des attributs utilisateur disponibles dans l'objet UserRecord de l'utilisateur nouvellement créé. Par exemple, vous pouvez obtenir l'adresse e-mail et le nom d'affichage de l'utilisateur comme indiqué :

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

Déclencher une fonction lors de la suppression d'un utilisateur

Tout comme vous pouvez déclencher une fonction lors de la création d'un utilisateur, vous pouvez répondre aux événements de suppression d'un utilisateur. Utilisez le gestionnaire d'événements functions.auth.user().onDelete() comme indiqué :

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