使用自訂驗證系統向 Firebase 進行驗證

您可透過以下方式整合 Firebase 驗證與自訂驗證系統: 修改您的驗證伺服器,以便在使用者 才能成功登入應用程式接收這個權杖,並使用該權杖進行驗證 掌握實用知識

事前準備

  1. 如果您尚未安裝,請按照入門指南中的步驟操作。
  2. 安裝並設定 Firebase Admin SDK。 請務必初始化 SDK 並使用 Firebase 專案的正確憑證。

透過 Firebase 驗證

  1. 使用者登入應用程式時,請將登入憑證 例如他們的使用者名稱和密碼)。您的 伺服器會檢查憑證,如果憑證有效 建立自訂 Firebase 權杖 然後將權杖傳回應用程式

  2. 從驗證伺服器收到自訂權杖後,請將該權杖傳遞 以便 signInWithCustomToken() 登入使用者:

    try {
        final userCredential =
            await FirebaseAuth.instance.signInWithCustomToken(token);
        print("Sign-in successful.");
    } on FirebaseAuthException catch (e) {
        switch (e.code) {
            case "invalid-custom-token":
                print("The supplied token is not a Firebase custom auth token.");
                break;
            case "custom-token-mismatch":
                print("The supplied token is for a different Firebase project.");
                break;
            default:
                print("Unknown error.");
        }
    }
    

後續步驟

使用者建立新帳戶後,系統會將這個帳戶儲存為您的 Firebase 專案的專用 ID,可用來識別應用程式內所有應用程式的使用者 專案,無論使用者使用的登入方式為何。

在您的應用程式中,您可以透過 User 物件。請參閱管理使用者

在 Firebase 即時資料庫和 Cloud Storage 安全性規則中,您可以 透過 auth 變數取得已登入使用者的不重複使用者 ID,並用於 控制使用者可以存取哪些資料

您可以讓使用者透過多重驗證機制登入您的應用程式 將驗證供應商憑證連結) 現有的使用者帳戶。

如要將使用者登出,請呼叫 signOut()

await FirebaseAuth.instance.signOut();