Einer unserer Benutzer verfügt über zwei Discourse-Konten: eines, das nicht mehr genutzt wird, und ein neues, auf das er sich nicht einloggen kann. Der Grund scheint darin zu liegen, dass sein neues Konto bei unserem CAS SSO-Anbieter dieselbe E-Mail-Adresse hat wie sein altes Konto auf unserem Forum.
Ich habe an meinem eigenen Testkonto experimentiert, indem ich es deaktiviert und den SSO-Eintrag gelöscht habe. Dies scheint jedoch neue Logins für dieses Konto zu verhindern, da der vorhandene Eintrag nicht mehr mit dem SSO-Payload übereinstimmt und die E-Mail-Adresse nun als konfliktbehaftet erkannt wird.
Außerdem habe ich versucht, die E-Mail-Adresse auf dem ungenutzten Discourse-Konto des Benutzers zu ändern, damit er sich mit dieser Adresse auf seinem neuen Konto anmelden kann. Dafür ist jedoch eine E-Mail-Bestätigung erforderlich. Ich habe auf unserem SMTP-Server einen E-Mail-Alias eingerichtet, um eine beliebige Adresse abzufangen. Beim Folgen des Links muss ich mich jedoch über SSO als dieser Benutzer anmelden. Das Problem dabei ist, dass ich das Konto des Benutzers reaktivieren, ein neues Passwort festlegen, das Konto mit unserer Mitgliederdatenbank verknüpfen und eine falsche Mitgliedschaft bei unserem SSO-Anbieter erstellen müsste. Das ist zwar möglich, aber ich habe das Gefühl, mich in einem verschlungenen Netz zu befinden, um das Konto dieses Benutzers zu korrigieren.
Der direkte Eingriff in die Datenbank mit einigen SQL-Abfragen ist etwas, das ich in der Vergangenheit bereits durchgeführt habe, aber das ist riskant, und ich würde diese Methode gerne vermeiden, wenn möglich.
Wenn es Discourse nicht beeinträchtigt, wäre ich sehr daran interessiert, eine Funktion zu haben, die es mir erlaubt, eine E-Mail-Adresse auf einem deaktivierten Konto zu löschen, anstatt sie nur als unbestätigt zu markieren.
Wenn es andere Möglichkeiten gibt, dieses Problem zu lösen, lassen Sie es mich bitte wissen. Vielen Dank!