Firebase 電話號碼驗證
Firebase Phone Number Verification (Firebase PNV) 是一種快速又安全的使用者電話號碼驗證方法。與簡訊驗證不同,使用者必須接收簡訊並輸入驗證碼,Firebase PNV 則會與裝置硬體和行動電信業者合作,讓使用者輕觸一下即可完成驗證。這種方法可減少使用者遇到的阻礙、提高可靠性 (因為不會使用經常無法送達的簡訊),並消除使用簡訊時常見的濫用媒介。
主要功能
貨運公司是資訊的可靠來源 | 透過 Firebase PNV,Google 可直接從訂閱者取得 SIM 卡的已驗證電話號碼,讓您瞭解目前執行應用程式的裝置所使用的號碼。簡訊 OTP 只能判斷使用者是否能存取電話號碼。 |
可單獨使用,或搭配識別資訊提供者使用 | 您可以單獨使用 Firebase PNV,做為易於整合且可靠的電話號碼驗證方法,也可以搭配 Firebase Authentication 或您自己的驗證系統,將 Firebase PNV 做為登入方法。 |
自動使用可用的貨運公司 | 如要在特定裝置上使用「Firebase PNV」,裝置必須使用相容的 SIM 卡 (實體卡或 eSIM),並搭配支援的電信業者。您可以使用 Firebase PNV SDK 偵測相容性,並在裝置不支援 Firebase PNV 時,改用其他方法 (例如簡訊)。 |
支援的貨運公司越來越多 | Firebase PNV將逐步開放全球電信業者使用。當有新的電信業者加入時,您就能自動使用這些業者,不必變更應用程式的二進位檔。如需參與計畫的電信業者清單,請參閱「電信業者支援」。 |
運作原理
提出電話號碼驗證要求時,Firebase PNV:
確認使用者的裝置和行動電信業者是否支援這項功能。
徵求使用者同意,將電話號碼分享給您的應用程式。
與指派給 SIM 卡的行動電信業者合作,取得已驗證的電話號碼。
傳回給應用程式的簽署權杖,其中包含已驗證的電話號碼。
驗證這個權杖的簽章後,應用程式現在就擁有使用者的已驗證電話號碼。您也可以在以電話號碼為基礎的登入流程中使用這個權杖,例如使用 Firebase Authentication 或您自己的驗證後端。
實作路徑
設定 Firebase 專案 | 在 Google Cloud 控制台中,為 Firebase 專案啟用 Firebase Phone Number Verification API。 | |
安裝 SDK 並初始化 | 為應用程式平台安裝 Firebase PNV SDK。 | |
確認裝置和電信業者是否相容 | (建議) 當使用者執行需要驗證電話號碼的動作時,請先使用 Firebase PNV SDK 檢查裝置和行動電信業者是否與 Firebase PNV 相容。如果沒有,請啟動其他電話號碼驗證方法,例如簡訊。 | |
要求提供已驗證的電話號碼 | 使用 Firebase PNV SDK 向行動電信業者請求裝置的已驗證電話號碼。 | |
驗證回應權杖 | 在 Firebase PNV 服務的回應中,您會收到已簽署的權杖,可以傳送至應用程式的後端。在後端驗證權杖的簽章。如果簽章有效,則權杖會包含裝置的已驗證電話號碼。 |
後續步驟
- Firebase PNV 是付費服務,每次驗證都會產生費用。詳情請參閱定價頁面。
- 請參閱「在 Android 上開始使用」指南,瞭解如何在 Android 應用程式中使用 Firebase PNV。