Sie können Firebase Authentication in ein benutzerdefiniertes Authentifizierungssystem einbinden, indem Sie Ihren Authentifizierungsserver so ändern, dass benutzerdefinierte signierte Tokens generiert werden, wenn sich ein Nutzer erfolgreich anmeldet. Ihre App empfängt dieses Token und verwendet es, um sich bei Firebase zu authentifizieren.
Hinweis
- Falls noch nicht geschehen, folgen Sie der Anleitung im Startleitfaden.
- Installieren und konfigurieren Sie das Firebase Admin SDK. Initialisieren Sie das SDK. mit den richtigen Anmeldedaten für Ihr Firebase-Projekt.
Mit Firebase authentifizieren
Wenn sich Nutzer in Ihrer App anmelden, senden Sie ihnen ihre Anmeldedaten (für (z. B. Nutzername und Passwort) an Ihren Authentifizierungsserver. Ihr die Anmeldedaten überprüft und, sofern sie gültig sind, benutzerdefiniertes Firebase-Token erstellt und sendet das Token zurück an Ihre App.
Nachdem Sie das benutzerdefinierte Token von Ihrem Authentifizierungsserver erhalten haben, übergeben Sie es an
signInWithCustomToken()
, um den Nutzer anzumelden: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."); } }
Nächste Schritte
Nachdem ein Nutzer ein neues Konto erstellt hat, wird dieses Konto als Teil Ihrer Firebase-Projekt erstellen und zur Identifizierung von Nutzern in jeder App in Ihrem Projekt erstellen, unabhängig von der vom Nutzer verwendeten Anmeldemethode.
Die grundlegenden Profilinformationen der Nutzer finden Sie in Ihren Apps über die
User
-Objekt. Weitere Informationen finden Sie unter Nutzer verwalten.
In der Firebase Realtime Database und den Cloud Storage-Sicherheitsregeln können Sie
Die eindeutige Nutzer-ID des angemeldeten Nutzers aus der Variablen auth
abrufen und für Folgendes verwenden:
festlegen, auf welche Daten
ein Nutzer zugreifen kann.
Sie können Nutzern erlauben, sich mit Mehrfachauthentifizierung in Ihrer App anzumelden durch Verknüpfen der Anmeldedaten des Authentifizierungsanbieters mit einem eines bestehenden Nutzerkontos.
Um einen Nutzer abzumelden, rufen Sie signOut()
auf:
await FirebaseAuth.instance.signOut();