Firebase Authentication 触发器

您可以触发函数来响应 Firebase 用户帐号的创建和删除事件。例如,如果用户刚在您的应用中创建了帐号,您可以向其发送欢迎电子邮件。参考此页面上的示例 - 在创建和删除帐号时发送欢迎和告别电子邮件。

如需查看更多使用场景示例,请参阅“Cloud Functions 有哪些用途?”

在创建用户时触发函数

您可以使用 functions.auth.user().onCreate() 事件处理脚本创建一个会在创建 Firebase 用户时触发的函数:

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

在以下情况下,Firebase 帐号将为 Cloud Functions 函数触发用户创建事件:

  • 用户创建了电子邮件帐号和密码。
  • 用户首次通过联合身份提供方登录。
  • 开发者使用 Firebase Admin SDK 创建了一个帐号。
  • 用户首次登录到新的匿名身份验证会话。

用户首次使用自定义令牌登录时,系统不会触发 Cloud Functions 事件。

访问用户属性

通过返回给函数的用户数据,您可以访问新建用户的 UserRecord 对象中提供的用户属性列表。例如,您可以获取用户的电子邮件地址和显示名,如下所示:

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

在删除用户时触发函数

与在创建用户时触发函数一样,您也可以在删除用户时触发函数。请使用 functions.auth.user().onDelete() 事件处理脚本,如下所示:

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

触发屏蔽函数

如果您已升级到 Firebase Authentication with Identity Platform,则可以使用 Cloud Functions 屏蔽函数来扩展 Firebase Authentication。

通过屏蔽函数,您可以执行自定义代码,以修改用户注册或登录应用的结果。例如,您可以禁止不符合特定标准的用户通过身份验证,或者首先对用户的信息进行更新,然后再将此信息返回到您的客户端应用。