Wenn der Completion-Callback für Authentication Methoden ein NSError Argument erhält, das
nicht null ist, ist ein Fehler aufgetreten. Um die entsprechende Fehlerbehandlungslogik in Ihrem Produktionscode aufzurufen, vergleichen Sie den Fehlercode mit den unten aufgeführten häufigen Fehlern und methodenspezifischen Fehlern.
Einige Fehler können durch bestimmte Nutzeraktionen behoben werden. So kann beispielsweise FIRAuthErrorCodeUserTokenExpired behoben werden, indem sich der Nutzer noch einmal anmeldet, und FIRAuthErrorCodeWrongPassword, indem der Nutzer aufgefordert wird, das richtige Passwort anzugeben.
Außer bei FIRAuthErrorCodeNetworkError oder FIRAuthErrorCodeTooManyRequests wird der Versuch, einen fehlgeschlagenen Vorgang mit denselben Argumenten zu wiederholen, niemals erfolgreich sein. Gehen Sie nicht davon aus, dass der Vorgang serverseitig ausgeführt wurde.
Wenn Sie Fehler untersuchen oder protokollieren, prüfen Sie das userInfo-Wörterbuch.
FIRAuthErrorNameKey enthält einen plattformübergreifenden Fehlernamenstring, mit dem der Fehler identifiziert werden kann.
NSLocalizedDescriptionKey enthält eine Beschreibung des Fehlers. Diese Beschreibung ist für den Entwickler und nicht für den Nutzer bestimmt.
NSUnderlyingErrorKey enthält den zugrunde liegenden Fehler, der den betreffenden Fehler verursacht hat, sofern ein zugrunde liegender Fehler vorhanden ist.
Neben den oben aufgeführten Hauptfeldern können im userInfo-Wörterbuch weitere Felder vorhanden sein, die bei der Diagnose von Fehlern hilfreich sein können.
Fehlercodes, die für alle API-Methoden gelten
| Code |
Bedeutung |
FIRAuthErrorCodeNetworkError |
Gibt an, dass während des Vorgangs ein Netzwerkfehler aufgetreten ist. |
FIRAuthErrorCodeUserNotFound |
Gibt an, dass das Nutzerkonto nicht gefunden wurde. Das kann passieren, wenn das Nutzerkonto gelöscht wurde. |
FIRAuthErrorCodeUserTokenExpired |
Gibt an, dass das Token des aktuellen Nutzers abgelaufen ist. Der Nutzer hat beispielsweise das Kontopasswort auf einem anderen Gerät geändert. Sie müssen den Nutzer auffordern, sich auf diesem Gerät noch einmal anzumelden. |
FIRAuthErrorCodeTooManyRequests |
Gibt an, dass die Anfrage blockiert wurde, nachdem eine ungewöhnlich hohe Anzahl von Anfragen vom Gerät des Aufrufers an die Firebase Authentication Server gesendet wurde. Versuchen Sie es später noch einmal. |
FIRAuthErrorCodeInvalidAPIKey |
Gibt an, dass die Anwendung mit einem ungültigen API-Schlüssel konfiguriert wurde. |
FIRAuthErrorCodeAppNotAuthorized |
Gibt an, dass die App nicht autorisiert ist, Firebase Authentication mit dem angegebenen API-Schlüssel zu verwenden. Rufen Sie die Google API Console auf und prüfen Sie auf dem Tab „Anmeldedaten“, ob die Paket-ID Ihrer Anwendung auf der Zulassungsliste des verwendeten API-Schlüssels steht. |
FIRAuthErrorCodeKeychainError |
Gibt an, dass beim Zugriff auf den Schlüsselbund ein Fehler aufgetreten ist. Die Felder NSLocalizedFailureReasonErrorKey und NSUnderlyingErrorKey im NSError.userInfo-Wörterbuch enthalten weitere Informationen zum aufgetretenen Fehler. |
FIRAuthErrorCodeInternalError |
Gibt an, dass ein interner Fehler aufgetreten ist. Bitte melden Sie den Fehler mit dem gesamten NSError Objekt. |
Methodenspezifische Fehlercodes
FIRAuth
fetchProvidersForEmail:completion:
| Code |
Bedeutung |
FIRAuthErrorCodeInvalidEmail |
Gibt an, dass die E‑Mail-Adresse fehlerhaft ist. |
signInWithEmail:password:completion:
| Code |
Bedeutung |
FIRAuthErrorCodeOperationNotAllowed |
Gibt an, dass E‑Mail- und Passwortkonten nicht aktiviert sind. Aktivieren Sie sie in der Firebase Console auf dem Tab Security > Authentication > Sign-in method. |
FIRAuthErrorCodeInvalidEmail |
Gibt an, dass die E‑Mail-Adresse fehlerhaft ist. |
FIRAuthErrorCodeUserDisabled |
Gibt an, dass das Konto des Nutzers deaktiviert ist. |
FIRAuthErrorCodeWrongPassword |
Gibt an, dass sich der Nutzer mit einem falschen Passwort angemeldet hat. |
signInWithCredential:completion:
| Code |
Bedeutung |
FIRAuthErrorCodeInvalidCredential |
Gibt an, dass die angegebenen Anmeldedaten ungültig sind. Das kann passieren, wenn sie abgelaufen oder fehlerhaft sind. |
FIRAuthErrorCodeInvalidEmail |
Gibt an, dass die E‑Mail-Adresse fehlerhaft ist, wenn die Anmeldedaten vom Typ EmailPasswordAuthCredential sind. |
FIRAuthErrorCodeOperationNotAllowed |
Gibt an, dass Konten mit dem Identitätsanbieter, der durch die Anmeldedaten dargestellt wird, nicht aktiviert sind. Aktivieren Sie sie in der Firebase Console auf dem Tab Security > Authentication > Sign-in method. |
FIRAuthErrorCodeEmailAlreadyInUse |
Gibt an, dass die E‑Mail-Adresse, die durch die Anmeldedaten bestätigt wird (z.B. die E‑Mail-Adresse in einem Facebook-Zugriffstoken), bereits von einem bestehenden Konto verwendet wird, das mit dieser Anmeldemethode nicht authentifiziert werden kann. Rufen Sie fetchProvidersForEmail für die E‑Mail-Adresse dieses Nutzers auf und fordern Sie ihn dann auf, sich mit einem der zurückgegebenen Anmeldeanbieter anzumelden. Dieser Fehler wird nur ausgelöst, wenn in der Firebase Console die Option „Ein Konto pro E‑Mail-Adresse“ aktiviert ist (Tab Sicherheit > Authentifizierung > Einstellungen Tab). |
FIRAuthErrorCodeUserDisabled |
Gibt an, dass das Konto des Nutzers deaktiviert ist. |
FIRAuthErrorCodeWrongPassword |
Gibt an, dass sich der Nutzer mit einem falschen Passwort angemeldet hat, wenn die Anmeldedaten vom Typ EmailPasswordAuthCredential sind. |
signInAnonymouslyWithCompletion:
| Code |
Bedeutung |
FIRAuthErrorCodeOperationNotAllowed |
Gibt an, dass anonyme Konten nicht aktiviert sind. Aktivieren Sie sie in der Firebase Console auf dem Tab Security > Authentication > Sign-in method. |
signInWithCustomToken:completion:
| Code |
Bedeutung |
FIRAuthErrorCodeInvalidCustomToken |
Gibt einen Validierungsfehler mit dem benutzerdefinierten Token an. |
FIRAuthErrorCodeCustomTokenMismatch |
Gibt an, dass das Dienstkonto und der API-Schlüssel zu verschiedenen Projekten gehören. |
createUserWithEmail:password:completion:
| Code |
Bedeutung |
FIRAuthErrorCodeInvalidEmail |
Gibt an, dass die E‑Mail-Adresse fehlerhaft ist. |
FIRAuthErrorCodeEmailAlreadyInUse |
Gibt an, dass die E‑Mail-Adresse, die für die Registrierung verwendet wurde, bereits vorhanden ist. Rufen Sie fetchProvidersForEmail auf, um zu prüfen, welche Anmeldemechanismen dieser Nutzer verwendet hat, und fordern Sie den Nutzer auf, sich mit einem dieser Mechanismen anzumelden. |
FIRAuthErrorCodeOperationNotAllowed |
Gibt an, dass E‑Mail- und Passwortkonten nicht aktiviert sind. Aktivieren Sie sie in der Firebase Console auf dem Tab Security > Authentication > Sign-in method. |
FIRAuthErrorCodeWeakPassword |
Gibt an, dass versucht wurde, ein Passwort festzulegen, das als zu schwach gilt. Das Feld NSLocalizedFailureReasonErrorKey im NSError.userInfo-Wörterbuch enthält eine detailliertere Erklärung, die dem Nutzer angezeigt werden kann. |
signOut:
| Code |
Bedeutung |
FIRAuthErrorCodeKeychainError |
Gibt an, dass beim Zugriff auf den Schlüsselbund ein Fehler aufgetreten ist. Die Felder NSLocalizedFailureReasonErrorKey und NSUnderlyingErrorKey im NSError.userInfo-Wörterbuch enthalten weitere Informationen zum aufgetretenen Fehler. |
FIRUser
Häufige Fehler bei FIRUser-Vorgängen
| Code |
Bedeutung |
FIRAuthErrorCodeInvalidUserToken |
Gibt an, dass das Aktualisierungstoken des angemeldeten Nutzers, das Sitzungsinformationen enthält, ungültig ist. Sie müssen den Nutzer auffordern, sich auf diesem Gerät noch einmal anzumelden. |
FIRAuthErrorCodeUserDisabled |
Gibt an, dass das Konto des Nutzers deaktiviert ist und erst wieder verwendet werden kann, wenn es in der Firebase Console wieder aktiviert wird (Tab Sicherheit > Authentifizierung > Nutzer). |
reauthenticateWithCredential:completion:
| Code |
Bedeutung |
FIRAuthErrorCodeInvalidCredential |
Gibt an, dass die angegebenen Anmeldedaten ungültig sind. Das kann passieren, wenn sie abgelaufen oder fehlerhaft sind. |
FIRAuthErrorCodeInvalidEmail |
Gibt an, dass die E‑Mail-Adresse fehlerhaft ist, wenn die Anmeldedaten vom Typ EmailPasswordAuthCredential sind. |
FIRAuthErrorCodeWrongPassword |
Gibt an, dass der Nutzer versucht hat, sich mit einem falschen Passwort neu zu authentifizieren, wenn die Anmeldedaten vom Typ EmailPasswordAuthCredential sind. |
FIRAuthErrorCodeUserMismatch |
Gibt an, dass versucht wurde, sich mit einem anderen Nutzer neu zu authentifizieren. |
FIRAuthErrorCodeOperationNotAllowed |
Gibt an, dass Konten mit dem Identitätsanbieter, der durch die Anmeldedaten dargestellt wird, nicht aktiviert sind. Aktivieren Sie sie in der Firebase Console unter Sicherheit > Authentifizierung. |
FIRAuthErrorCodeEmailAlreadyInUse |
Gibt an, dass die E‑Mail-Adresse, die durch die Anmeldedaten bestätigt wird (z.B. die E‑Mail-Adresse in einem Facebook-Zugriffstoken), bereits von einem bestehenden Konto verwendet wird, das mit dieser Anmeldemethode nicht neu authentifiziert werden kann. Rufen Sie fetchProvidersForEmail für die E‑Mail-Adresse dieses Nutzers auf und fordern Sie ihn dann auf, sich mit einem der zurückgegebenen Anmeldeanbieter anzumelden. Dieser Fehler wird nur ausgelöst, wenn in der Firebase Console die Option „Ein Konto pro E‑Mail-Adresse“ aktiviert ist (Tab Sicherheit > Authentifizierung > Einstellungen Tab). |
FIRAuthErrorCodeUserDisabled |
Gibt an, dass das Konto des Nutzers deaktiviert ist. |
updateEmail:completion:
| Code |
Bedeutung |
FIRAuthErrorCodeEmailAlreadyInUse |
Gibt an, dass die E‑Mail-Adresse bereits von einem anderen Konto verwendet wird. |
FIRAuthErrorCodeInvalidEmail |
Gibt an, dass die E‑Mail-Adresse fehlerhaft ist. |
FIRAuthErrorCodeRequiresRecentLogin |
Das Aktualisieren der E‑Mail-Adresse eines Nutzers ist ein sicherheitsrelevanter Vorgang, für den sich der Nutzer kürzlich angemeldet haben muss. Dieser Fehler gibt an, dass sich der Nutzer nicht kürzlich genug angemeldet hat. Um das Problem zu beheben, authentifizieren Sie den Nutzer neu, indem Sie reauthenticateWithCredential:completion: für FIRUser aufrufen. |
updatePassword:completion:
| Code |
Bedeutung |
FIRAuthErrorCodeOperationNotAllowed |
Gibt an, dass der Administrator die Anmeldung mit dem angegebenen Identitätsanbieter deaktiviert hat. |
FIRAuthErrorCodeRequiresRecentLogin |
Das Aktualisieren des Passworts eines Nutzers ist ein sicherheitsrelevanter Vorgang, für den sich der Nutzer kürzlich angemeldet haben muss. Dieser Fehler gibt an, dass sich der Nutzer nicht kürzlich genug angemeldet hat. Um das Problem zu beheben, authentifizieren Sie den Nutzer neu, indem Sie reauthenticateWithCredential:completion: für FIRUser aufrufen. |
FIRAuthErrorCodeWeakPassword |
Gibt an, dass versucht wurde, ein Passwort festzulegen, das als zu schwach gilt. Das Feld NSLocalizedFailureReasonErrorKey im NSError.userInfo-Wörterbuch enthält eine detailliertere Erklärung, die dem Nutzer angezeigt werden kann. |
linkWithCredential:completion:
| Code |
Bedeutung |
FIRAuthErrorCodeProviderAlreadyLinked |
Gibt an, dass versucht wurde, einen Anbieter eines Typs zu verknüpfen, der bereits mit diesem Konto verknüpft ist. |
FIRAuthErrorCodeCredentialAlreadyInUse |
Gibt an, dass versucht wurde, eine Verknüpfung mit Anmeldedaten herzustellen, die bereits mit einem anderen Firebase-Konto verknüpft sind. |
FIRAuthErrorCodeOperationNotAllowed |
Gibt an, dass Konten mit dem Identitätsanbieter, der durch die Anmeldedaten dargestellt wird, nicht aktiviert sind. Aktivieren Sie sie in der Firebase Console auf dem Tab Security > Authentication > Sign-in method. |
Diese Methode kann auch Fehlercodes zurückgeben, die mit
updateEmail:completion: und
updatePassword:completion: für FIRUser verknüpft sind.
unlinkFromProvider:completion:
| Code |
Bedeutung |
FIRAuthErrorCodeNoSuchProvider |
Gibt an, dass versucht wurde, die Verknüpfung mit einem Anbieter aufzuheben, der nicht mit dem Konto verknüpft ist. |
FIRAuthErrorCodeRequiresRecentLogin |
Das Aktualisieren der E‑Mail-Adresse ist ein sicherheitsrelevanter Vorgang, für den sich der Nutzer kürzlich angemeldet haben muss. Dieser Fehler gibt an, dass sich der Nutzer nicht kürzlich genug angemeldet hat. Um das Problem zu beheben, authentifizieren Sie den Nutzer neu, indem Sie reauthenticateWithCredential:completion: für FIRUser aufrufen. |
sendEmailVerificationWithCompletion:
| Code |
Bedeutung |
FIRAuthErrorCodeUserNotFound |
Gibt an, dass das Nutzerkonto nicht gefunden wurde. |
deleteWithCompletion:
| Code |
Bedeutung |
FIRAuthErrorCodeRequiresRecentLogin |
Das Löschen eines Nutzerkontos ist ein sicherheitsrelevanter Vorgang, für den sich der Nutzer kürzlich angemeldet haben muss. Dieser Fehler gibt an, dass sich der Nutzer nicht kürzlich genug angemeldet hat. Um das Problem zu beheben, authentifizieren Sie den Nutzer neu, indem Sie reauthenticateWithCredential:completion: für FIRUser aufrufen. |