Migrated password hashes support

Technisch gesehen verwendet ein Benutzer den veralteten Passwort-Hash nicht.
Wenn sich ein Benutzer nach einer Migration zum ersten Mal anmeldet und das Passwort nicht mit dem Discourse-Passwort übereinstimmt (das anfangs eine zufällige Zeichenfolge ist), führt das Plugin seine Arbeit aus.

  • Es prüft, ob das eingegebene Passwort mit den benutzerdefinierten Feldern import_pass unter Verwendung aller ihm bekannten Hash-Methoden übereinstimmt.
  • Falls eine Übereinstimmung gefunden wird, speichert es das Passwort beim Benutzer und entfernt anschließend das benutzerdefinierte Feld import_pass.

Nach einigen Jahren wird also nur noch der Benutzer, der das migrierte Passwort nicht zum Anmelden „verwendet“ hat, ein benutzerdefiniertes Feld import_pass besitzen.

a) Sie haben sich nie angemeldet (das können Sie über das Datum des letzten Besuchs prüfen).
b) Sie haben das migrierte Passwort nicht verwendet, sondern sich per E-Mail, einer anderen Authentifizierungsmethode angemeldet oder ihr Passwort zurückgesetzt.

:warning: Mir ist gerade aufgefallen, dass Situation b ein Sicherheitsproblem verursachen kann. Wenn sich ein Benutzer nicht an sein Passwort erinnert und es ändert oder eine andere Authentifizierungsmethode verwendet, bleibt der migrierte Passwort-Hash weiterhin vorhanden und kann neben dem neuen Passwort weiterhin verwendet werden. Ich habe soeben ein Update für das Plugin veröffentlicht, das das benutzerdefinierte Feld import_pass bei jedem erfolgreichen Login löscht.

Ab jetzt wird das benutzerdefinierte Feld import_pass also nur noch bei Benutzern vorhanden sein, die sich nie angemeldet haben.

2 „Gefällt mir“