使用异步函数自定义身份验证流程
本文档介绍了如何使用异步 Cloud Run 函数扩展 Identity Platform 身份验证。
使用异步函数,您可以触发非屏蔽任务,以响应用户创建和删除操作。它们对于启动长时间运行的操作或执行辅助任务(例如发送欢迎电子邮件)非常有用。
如需直接修改身份验证操作的结果,请参阅使用屏蔽函数扩展身份验证。异步函数收到的用户对象不包含来自阻塞函数的更新。
准备工作
使用 Identity Platform 创建一个应用。如需了解具体方法,请参阅快速入门。
创建异步函数
要创建和部署异步函数,请按照开始使用:编写、测试和部署您的第一批函数中的步骤操作。
响应用户创建
每次创建用户账号时,都会触发 onCreate
事件。这包括使用 Admin SDK 创建的匿名会话以及账号。在用户首次使用自定义令牌登录时不会触发此函数。
以下示例展示了如何为 onCreate
注册处理程序:
Node.js
exports.myFunction = functions.auth.user().onCreate((user) => {
// TODO.
});
响应用户删除
每次删除用户账号时,都会触发 onDelete
事件。以下示例展示了如何为 onDelete
注册处理程序:
Node.js
exports.myFunction = functions.auth.user().onDelete((user) => {
// TODO.
});
获取用户信息
onCreate
和 onDelete
事件提供了 User
和 EventContext
对象,其中包含已创建用户或已删除用户的相关信息。例如:
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.
});
如需查看可用字段的列表,请参阅 UserRecord
API 参考文档和 EventContext
API 参考文档。
后续步骤
- 使用屏蔽函数扩展身份验证。
- 详细了解 Cloud Run 函数。