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

本文說明如何使用非同步 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 參考資料

後續步驟