Passwort vergessen Funktion
Moderator: mirko
Re: Passwort vergessen Funktion
Nur das Script ändern und Sonderzeichen hinzufügen.
Ich habe das jetzt angepasst, das Update nochmals laden https://www.superwebmailer.de/newslette ... wnload.htm und nur die Datei pw_reminder.php auf den Webspace übertragen, bestehende Datei ersetzen lassen. Es werden dann 2 Sonderzeichen (",", ";", ":", "-", "#", ")" oder "(") in das Passwort eingefügt.
Ich habe das jetzt angepasst, das Update nochmals laden https://www.superwebmailer.de/newslette ... wnload.htm und nur die Datei pw_reminder.php auf den Webspace übertragen, bestehende Datei ersetzen lassen. Es werden dann 2 Sonderzeichen (",", ";", ":", "-", "#", ")" oder "(") in das Passwort eingefügt.
Re: Passwort vergessen Funktion
Das ist es. Wir haben eine Standard Ubuntu Server Installation benutzt. Diese enthält mysql-5.7.29 mit aktiviertem Password Validation Plugin. Das Plugin hat wohl die Sonderzeichen in den Standardeinstellungen enthalten.
Ich probiere die Erweiterung der Funktion mal aus. Sonst müssen wir mit
SET validate_password_special_char_count = 0
die Sonderzeichenprüfung ausschalten.
Vielen Dank
Ich probiere die Erweiterung der Funktion mal aus. Sonst müssen wir mit
SET validate_password_special_char_count = 0
die Sonderzeichenprüfung ausschalten.
Vielen Dank
Re: Passwort vergessen Funktion
dann ist ein Plugin zur Passwortsicherheit aktiviert, das nicht aktiviert sein sollte
Geht nur von Hand die Datei pw_reminder.php ändern, in der aktuellen Version 7.30, Zeile 161 steht:
ändern in
per phpMyAdmin kann auch in die Datenbank gehen, mit der Anweisung
SHOW VARIABLES LIKE 'validate_password%'
kann man die Passwortregeln sehen, bei validate_password_special_char_count steht die Anzahl Sonderzeichen
Geht nur von Hand die Datei pw_reminder.php ändern, in der aktuellen Version 7.30, Zeile 161 steht:
Code: Alles auswählen
$_Jo800 = $_QJljf["id"] . _LCALR(16);
Code: Alles auswählen
$_Jo800 = $_QJljf["id"] . _LCALR(16) . 'Sonderzeichen oder mehrere angeben';
SHOW VARIABLES LIKE 'validate_password%'
kann man die Passwortregeln sehen, bei validate_password_special_char_count steht die Anzahl Sonderzeichen
Re: Passwort vergessen Funktion
Eben. Aber die password() Funktion verlangt eins. Daher funktioniert das Setzen des Passworts von SWM aus nicht.
Re: Passwort vergessen Funktion
Was für ein Sonderzeichen? In den automatisch zugesendeten Passworten gibt es extra keine Sonderzeichen.
Re: Passwort vergessen Funktion
Genau das funktioniert eben nicht, da das Passwort das swm generiert nicht von mysql angenommen wird. Es fehlt das Sonderzeichen.Man muss sich neu das Passwort zusenden lassen, wenn das alte nicht mehr funktioniert, danach kann man es natürlich wieder über die Oberfläche zurück ändern.
Re: Passwort vergessen Funktion
Man muss sich neu das Passwort zusenden lassen, wenn das alte nicht mehr funktioniert, danach kann man es natürlich wieder über die Oberfläche zurück ändern.
Wird MySQL Server älter als 8.0.11 bzw. MariaDB Server älter als 10.0 verwendet, dann kann man in der users-Tabelle mit der Funktion PASSWORD() ein neues Passwort selbst setzen. Mit neueren Versionen geht das nicht mehr mit der Funktion PASSWORD(), weil es diese Funktion ab MySQL-Server 8.0.11 nicht mehr gibt. SuperWebMailer verwendet die MySQL-Funktion SHA2(<password>, 224) ab Server-Version >= 8.0.11. Mit der SHA2() Funktion kann man ebenfalls per phpMyAdmin selbst das Passwort setzen: UPDATE users SET Password=SHA2('ein passwort', 224) WHERE id=<id des Nutzers>
Prinzipiell sollten keine Passworte von Hand in der Datenbank gesetzt werden, auch wenn das SuperWebMailer unterstützt, weil das halt einige so machen. SuperWebMailer verwendet normalerweise zusätzlich einen Salt, um das Passwort sicherer zu speichern. Siehe dazu https://de.wikipedia.org/wiki/Salt_(Kryptologie)
Wird MySQL Server älter als 8.0.11 bzw. MariaDB Server älter als 10.0 verwendet, dann kann man in der users-Tabelle mit der Funktion PASSWORD() ein neues Passwort selbst setzen. Mit neueren Versionen geht das nicht mehr mit der Funktion PASSWORD(), weil es diese Funktion ab MySQL-Server 8.0.11 nicht mehr gibt. SuperWebMailer verwendet die MySQL-Funktion SHA2(<password>, 224) ab Server-Version >= 8.0.11. Mit der SHA2() Funktion kann man ebenfalls per phpMyAdmin selbst das Passwort setzen: UPDATE users SET Password=SHA2('ein passwort', 224) WHERE id=<id des Nutzers>
Prinzipiell sollten keine Passworte von Hand in der Datenbank gesetzt werden, auch wenn das SuperWebMailer unterstützt, weil das halt einige so machen. SuperWebMailer verwendet normalerweise zusätzlich einen Salt, um das Passwort sicherer zu speichern. Siehe dazu https://de.wikipedia.org/wiki/Salt_(Kryptologie)
Passwort vergessen Funktion
Hallo Herr Böer,
wir haben den SWM auf einen neuen Server umgezogen und dabei festgestellt, dass die alten Passwörter nicht mehr funktionieren. Anscheinend sind die Passwortanforderungen im neuen mysql höher.
Dann haben wir versucht uns neue zuschicken zu lassen. Aber das von swm generierte Passwort funktioniert nicht. Anscheinend schreibt die entsprechende Routine etwas anderes in die Datenbank als sie dem User per Mail zuschickt.
In der E-Mail steht:
17i6yYqYiYA2AQyeU6
Offensichtlich genügt dies Passwort nicht den Anforderungen von mysql (ich habe es versucht per händisch in die Datenbanktabelle einzufügen und wurde mit entsprechender Fehlermeldung abgewiesen).
Es werden Zahlen, Klein- und Großbuchstaben und Sonderzeichen verlangt. Und an letzterem scheitert es wohl.
Mit freundlichen Grüßen
St. Schwietert
Systembetreuer
Ulmer Volkshochschule
wir haben den SWM auf einen neuen Server umgezogen und dabei festgestellt, dass die alten Passwörter nicht mehr funktionieren. Anscheinend sind die Passwortanforderungen im neuen mysql höher.
Dann haben wir versucht uns neue zuschicken zu lassen. Aber das von swm generierte Passwort funktioniert nicht. Anscheinend schreibt die entsprechende Routine etwas anderes in die Datenbank als sie dem User per Mail zuschickt.
In der E-Mail steht:
17i6yYqYiYA2AQyeU6
Offensichtlich genügt dies Passwort nicht den Anforderungen von mysql (ich habe es versucht per händisch in die Datenbanktabelle einzufügen und wurde mit entsprechender Fehlermeldung abgewiesen).
Es werden Zahlen, Klein- und Großbuchstaben und Sonderzeichen verlangt. Und an letzterem scheitert es wohl.
Mit freundlichen Grüßen
St. Schwietert
Systembetreuer
Ulmer Volkshochschule