使用非同步函式自訂驗證流程
本文說明如何使用非同步 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 functions。