Firebase Authentication
Firebase Authentication 提供後端服務、簡單易用的 SDK 和現成的 UI 驗證應用程式使用者的程式庫它支援使用 密碼、電話號碼、熱門聯合識別資訊提供者,例如 Google Facebook、Twitter 等。
Firebase Authentication 與其他 Firebase 服務緊密整合,且 這項服務運用了 OAuth 2.0 和 OpenID Connect 等業界標準 與您的自訂後端進行整合
升級至 Firebase Authentication with Identity Platform 即可解鎖額外的 功能,例如多重驗證、封鎖函式、使用者活動 以及稽核記錄、SAML 與一般 OpenID Connect 支援、多用戶群以及 提供企業級支援
主要功能
您可以使用兩種方式讓使用者登入您的 Firebase 應用程式: FirebaseUI 做為完整的置入驗證解決方案,或使用 Firebase Authentication 的 SDK 可手動將一或多個登入方式整合至
「FirebaseUI」驗證 | |
---|---|
置入式驗證解決方案 |
建議您在應用程式中新增完整的登入系統。 FirebaseUI 提供的置入式驗證解決方案 處理使用者透過電子郵件地址和電子郵件地址登入的 UI 流程 密碼、電話號碼,而且透過熱門的聯合識別資訊提供者 包括 Google 登入與 Facebook 登入 FirebaseUI 驗證元件會實作最佳做法 驗證行動裝置和網站的驗證次數,大幅提高登入效率 應用程式的註冊和註冊轉換Cloud Run 也能處理各種極端情況 帳戶救援和帳戶連結可能屬於安全敏感資訊 以正確方式處理 您可輕鬆自訂 FirebaseUI,並配合您的其他應用程式 而且採用開放原始碼,所以您不必受限於 實現理想的使用者體驗 |
Firebase SDK 驗證 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
電子郵件和密碼驗證 | 輸入電子郵件地址和密碼,驗證使用者的身分。 Firebase Authentication SDK 提供在 管理使用電子郵件地址和密碼登入的使用者。 Firebase Authentication 也會處理密碼重設作業 電子郵件。 |
||||||||||
聯合識別資訊提供者整合 | 與聯合識別資訊提供者整合,驗證使用者的身分。 Firebase Authentication SDK 提供的方法可將 透過 Google、Facebook、Twitter 和 GitHub 帳戶。
|
||||||||||
電話號碼驗證 | 將簡訊傳送至手機以驗證使用者。 |
||||||||||
自訂驗證系統整合 |
連結應用程式的現有登入活動 存取 Firebase Authentication SDK,並取得 Firebase Realtime Database 的存取權 和其他 Firebase 服務 |
||||||||||
匿名驗證 | 使用需要驗證 (無需使用者登入) 的功能 登入。如果使用者之後 選擇註冊,您可以將匿名帳戶升級為一般帳戶 ,讓使用者可以從上次中斷的地方繼續。 |
Firebase Authentication with Identity Platform
Firebase Authentication with Identity Platform 是選用的升級版本,為 Firebase Authentication。
這項升級作業不需要任何遷移, 現有的用戶端 SDK 和 Admin SDK 程式碼會繼續照常運作,且 即可立即存取進階記錄功能 企業級支援和服務水準協議加入一些額外程式碼後 新增多重驗證、封鎖函式和支援 SAML 和 OpenID 連結供應商。
「Firebase Authentication with Identity Platform」的定價配置與基本產品不同。時間 已升級的免付費 (Spark) 方案專案每天最多只能執行 3,000 項 以及即付即用 (Blaze) 方案專案的用量, 每月 50,000 名活躍使用者的免費方案。請務必瞭解帳單
請參閱下方說明,進一步瞭解新功能、定價和限制。
功能
多重驗證 |
簡訊多重驗證機制可保護使用者的計算資料的 可為應用程式多添一層安全保障 |
封鎖函式 |
封鎖函式可讓您執行自訂程式碼,以修改 使用者註冊或登入您的應用程式時。 |
SAML 和 OpenID Connect 供應商 |
支援使用 SAML (僅限網頁版) 和 OpenID Connect 供應商登入 。 瞭解如何在網頁版中新增 SAML 登入功能 應用程式和 OpenID Connect 登入 Apple Android 和 網站 應用程式。 |
使用者活動和稽核記錄 |
監控及記錄管理員權限和使用者活動。 升級專案時,系統會自動啟用管理員活動 是在 Cloud Logging 中執行的稽核記錄您也可以啟用使用者活動記錄功能 「驗證」 Firebase 控制台的「設定」頁面。 若要瞭解如何查看及分析記錄,請參閱 Cloud Logging 說明文件。 |
使用App Check防範濫用行為 |
App Check 可防止專案遭到濫用 未經授權用戶端存取您的驗證端點。 如要瞭解如何啟用 App Check,請參閱 App Check 說明文件。 |
多用戶群架構 |
有了用戶群,您就能建立多個獨立的使用者孤島 單一專案的設定 |
企業支援與服務水準協議 |
已升級的專案可取得驗證服務的運作時間保證: 身分識別 平台服務水準協議 (SLA) 和企業級存取權 聯絡。 |
自動清理匿名使用者 |
您可以選擇啟用匿名帳戶 超過 30 天就會自動刪除。匿名 帳戶也將不再計入帳單和用量配額。 |
用量限制
升級之後,Firebase Authentication with Identity Platform 在使用上會受到新的限制 Firebase Authentication。
免費 (Spark)
免付費方案 (Spark) 方案的專案每日有效上限是 3,000 個 每日活躍使用人數。每日活躍用量的計算依據 計算 24 小時內登入的不重複使用者人數。
提供者 | 新限制 | 舊限制 |
---|---|---|
電子郵件地址、社群媒體、匿名、自訂 | 每日 3,000 名活躍使用者 | 無限制 |
SAML、OpenID Connect | 每日 2 名活躍使用者 | 不適用 |
即付即用 (Blaze)
Blaze 方案的計費方式是按照每月活躍使用人數 (MAU) 計算 並提供 50,000 位使用者的免付費方案。活躍使用者是指 並向該帳戶的使用者收費。
提供者 | 免付費方案 | 超出免費方案的每位每月活躍使用者費用 ($) |
---|---|---|
電子郵件地址、社群媒體、匿名、自訂 | 每月 0 至 49,999 名活躍使用者 | 每個每月活躍使用者 0.0025 至 0.0055 |
SAML、OpenID Connect | 每月 0 至 49 名活躍使用者 | 每 MAU 0.015 |
升級專案
如要將專案升級至 Firebase Authentication with Identity Platform,請開啟「Authentication」 「設定」頁面 Firebase 控制台。
運作原理
如要讓使用者登入應用程式,首先必須取得 驗證憑證這些憑證可以是使用者的 電子郵件地址和密碼,或來自聯合身分的 OAuth 權杖 。接著,將這些憑證傳遞至 Firebase Authentication SDK。我們的 接著,後端服務會驗證這些憑證 用戶端。
成功登入後,您就能存取使用者的基本個人資料 使用者對於儲存在 Firebase 很少直接解答該如何打造產品您也可以使用提供的驗證權杖來驗證 以及自有後端服務中的使用者身分
實作方式
使用 FirebaseUI 驗證 | ||
---|---|---|
設定登入方式 | 用於登入電子郵件地址和密碼, 您想支援的聯合識別資訊提供者,請前往 Firebase 個控制台 並完成 識別資訊提供者,例如設定 OAuth 重新導向網址。 | |
自訂登入 UI | 您可以設定 FirebaseUI 選項或分支,自訂登入使用者介面 ,即可進一步自訂登入體驗。 | |
使用 FirebaseUI 執行登入流程 | 匯入 FirebaseUI 程式庫,並指定要使用的登入方法 支援,然後啟動 FirebaseUI 登入流程。 |
使用 Firebase Authentication SDK | ||
---|---|---|
設定登入方式 | 用於登入電子郵件地址和密碼, 您想支援的聯合識別資訊提供者,請前往 Firebase 個控制台 並完成 識別資訊提供者,例如設定 OAuth 重新導向網址。 | |
針對登入方法實作 UI 流程 | 針對電子郵件地址和密碼登入程序實作提示流程 讓使用者直接輸入電子郵件地址和密碼。電話號碼 登入並建立流程,提示使用者輸入電話號碼。 然後在對方收到的簡訊中取得驗證碼。聯合式 請登入並實作每個供應商所需的流程。 | |
將使用者憑證傳遞至 Firebase Authentication SDK | 傳送使用者的電子郵件地址和密碼,或是 從聯合識別資訊提供者取得至 Firebase Authentication 將機器學習工作流程自動化 |
後續步驟
進一步瞭解 Firebase 專案中的使用者,然後 歡迎參考下列平台的入門指南: 客戶需求來提供支援:
iOS 以上 Android 網站 Flutter Unity C++ 管理員
不確定該從哪裡著手嗎?