Die deaktivieren Funktion bestehen, dass die Benutzer bei der Verhinderung zu authentifizieren. Wenn er also versucht, sich zu authentifizieren, wird er mit dem Fehlercode INVALID_CREDENTIALS
fehlschlagen und er wird keinen Zugriff auf die Daten haben, die die ".read": "auth != null"
Regel haben. Es funktioniert so, als wäre er gelöscht, aber der Admin hat immer noch die Möglichkeit, das Benutzerkonto zu reaktivieren.
Wenn Sie eine Liste der „blockierten Usern“ aufbauen wollen, die Lage zu authentifizieren aber Zugriff eingeschränkt haben, können Sie die blockierten IDs in einem Knoten auf dem Feuerbasis Datenbank wie /databaseRoot/blockedUsers
speichern und dann mit der Arbeit security and rules
.
".read": "auth != null && !root.child('blockedUsers').hasChild(auth.uid)"
blockedUsers wie der Baum unten aussehen könnte, aber man könnte auch eine andere Infos unter der userId wie das Datum dieser Benutzer gesperrt wurde hinzufügen.
Das Hinzufügen des Benutzers zu dieser Liste hängt von Ihrer Notwendigkeit ab. Sie können dies manuell tun, indem Sie auf die Firebase-Konsole zugreifen und die Benutzer-ID zum Knoten hinzufügen. Oder, wenn Sie einen Benutzer auf ein Ereignis basierend auf der Anwendung blockieren möchten, können Sie rufen Sie einfach so etwas wie
ref.child('blockedUsers').child(userIdToBlock).set(true);
Hey @PhilipSopher, lassen Sie mich wissen, ob meine Antwort nicht klar war, oder Sie noch andere Anliegen haben. Vielen Dank! – adolfosrs
@adolfosrs Danke für die Antwort. Ich habe zwei Fragen: 1) Wie würde der Knoten "blockedUsers" aussehen? Ist es ein Array, ein Wörterbuch, etc? Können Sie ein Codebeispiel angeben? 2) Deaktiviert die Funktion ** disable ** einen Benutzer, der gerade angemeldet ist? –
Nur die Antwort mit zusätzlichen Informationen für die ** erste Frage ** aktualisiert. In Bezug auf die ** zweite Frage ** hängt dies davon ab, ob Sie Benutzer für Ihre Implementierung ständig erneut authentifizieren. Wenn es ein kritisches Ereignis gibt, das Sie abdecken möchten, können Sie es reauthentifizieren, um es zu behandeln. Sonst wirst du nicht unauth. – adolfosrs