使用非同步函式自訂驗證流程

本文說明如何使用非同步 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.
});

取得使用者資訊

onCreateonDelete 事件會提供 UserEventContext 物件,其中包含已建立或刪除的使用者相關資訊。例如:

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 參考資料

後續步驟