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