Hallo!
Gibt es in T3 die Möglichkeit, auch die Passwörter der Frontend-User verschlüsselt abzulegen? Ich finde es datenschutzmäßig keine sonderlich tolle Praxis, dass Backend-Benutzer die Passwörter der FE-User im Klartext sehen können. Ich weiss natürlich, dass ich den Zugriff auf die Mitgliedsdaten im BE auf den Admin beschränken kann, aber auch den gehen die Passwörter seiner User eigentlich nichts an.
Ich benutze die NewLoginBox-Extension.
Weiss jemand, ob - und wenn ja, wie - sich das umstellen lässt?
Vielen Dank im Voraus!
Gruß,
Der Karl
Hi,
ich stehe inzwischen vor dem gleichen Problem wie Du. Hast Du das Problem irgendwie lösen können?
Viele Grüsse
Thomas
So, ich hab's! Die entscheidende Datei steht in typo3/sysext/cms/tbl_cms.php.
Dort die Zeile des TCA Arrays für die Passwortkonfiguration heraussuchen:
"password" => Array (
"label" => "LLL:EXT:cms/locallang_tca.php:fe_users.password",
"config" => Array (
"type" => "input",
"size" => "10",
"max" => "40",
"eval" => "nospace,lower,required"
)
),
Die eval Zeile nun um den Eintrag "password" ergänzen:
"eval" => "nospace,lower,required, password"
Draufhin noch rasch den Cache des typo3conf löschen und schon ist das Passwort verschlüsselt (Version 3.5.0 !!!!)
Gruss
Thomas
Hallo Thomas,
mit Deiner beschriebenen Aenderung wird nur aus dem Eingabefeld im BE zum Typ Password jedoch wird immer noch in der Datenbank (Tabelle: fe_users) das Passwort im Klartext gespeichert. Sollte jemand im BE Zugriff auf den MySQLAdmin haben kann er sich alle PSW's aus dem FE anschauen. Fuer mich ist das nicht ein Vorteil sondern ein Risiko.
Ich suche selbst nach einer Loesung wie man dieses Passwort verschluesseln kann (so wie im BE). Wenn jedoch schon jemand hier eine Loesung hat, bin ich sehr dankbar (spart mir richtig Arbeit)
Gruss
Alex
Du musst ja noch nicht mal in die Datenbank gehen.
Es reicht, wenn du dir die Seite mit den Userdaten nicht im List-Modus, sondern im Seiten-Modus ansiehst. Auch dort sind alle Passwörter in Klartext lesbar (auch wenn die Eingabemaske ein password-Feld nutzt)
Bernd
wenn ich mich nicht irre heißt das zauberwort md5 ... probiert hab ichs an typo3 noch nie
Hmm, schaut euch mal z.B. die Datei class.tslib_feuserauth.php an. Da wird am Anfang eine Variable deklariert mit Namen $security_level... diese Variable gibts auch noch irgendwo anders, aber mir fällt grad net ein, welche Datei die noch nutzt o.O
Sorry, viel kann ich dazu auch net sagen, da ich mir das vor ein paar Wochen mal für ein kleines privates Projekt umgeschrieben hatte. Müsst ich erst meine Dokumente durchwühlen... vielleicht heut abend, wenn ich Zeit hab.
mir ist nicht ganz klar warum das nicht standard mässig von typo3 verschlüsselt wird. bietet doch nur vorteile?
das musste eher Kasper fragen und net mich :/
danke für den link, das hat mich immer schon interessiert
jepp !
Das funzt hervorragend!
Ich hab's eingebaut
Vielen Dank für den Link und vor allem dem Verfasser der Doku.
Ich habe allerdings auch in der t3lib/class.t3lib_userauth.php im oberen Bereich die Variable var $security_level auf "encrypted" gesetzt und bei Punkt 3 hinter der geschweiften Klammer ein ';' ergänzt.
Gruß Fr@nk
Hallo,
also ich habe auch die FE Passwörter mit md5 verschlüsselt (allerdings nach dieser Anleitung: http://typo3.org/1422+M57d387b7c2f.0.html?&tx_maillisttofaq_pi1[answered_only]=0&tx_maillisttofaq_pi1[sword]=md5).
Klappt auch wunderbar wenn ich Nutzer im Backend anlege. Ich verwende allerdings das Plugin "plugin.tx_srfeuserregister", womit sich Nutzer im Frontend selbst Registrieren können. Nun klappt das auch wunderbar, wenn der Nutzer dabei keine Fehleingaben macht (z.b. kein benötigtes Feld vergisst). Wenn er nämlich was falsch macht, wird der md5 wert von Typo als derzeitiges PW ausgelesen. Speichert der Nutzer das Ergebnis wird nun von diesem md5 Wert ein md5 wert berechnet (und das ich ja nu nich so super). (Gleiches Problem tritt auf, wenn ein Nutzer sein Profil editiert, da als derzeitiges PW der md5 Wert aus der DB genommen wird - wenn der Nutzer nun sein Profil updated (und nicht am Passwortfeld ändert) wird wiederrum der md5wert des alten md5 Passwortes in die db geschrieben.
Kurz und gut. Kann mir jemand sagen, wie man Typo dazu bringt aus md5 werten nicht wieder md5 werte zu generieren, sondern diese einfach ungeändert zu übernehmen (mein Lösungsansatz wäre, zu überprüfen, ob das derzeitig übermittelte Passwortfeld 32bit hat - wenn nein, wird der md5 wert berechnet - wenn ja bleibt es unverändert). Welche Funktion der Extension muss ich bearbeiten - ich bin hilflos verloren #paralyzed#
Ich hoffe ihr könnt mir helfen
Vielen Dank im Vorraus
RodTay
HI Ihr,
ich habe jetzt den Tut vom wiki gemacht und das PDF gefolgt. Klappt alles wunderbar, bis auf die Tatsache, dass das Einloggen auf der Bestätigungsseite nicht klappt. Kann mir da jemand helfen? Dort bekomm ich immer eine Fehlermeldung und die Gruppe wird dann auch nicht geändert (glaub ich). Aber wenn ich dann auf die Login Seite gehe, kann ich mich wunderbar einloggen!? 😢
Hallo zusammen,
funktioniert das für die Version 3.7.0 auch?
Also bei mir klappt es nicht. Ich habe in der Datenbank
noch immer alle Passwörter im Klartext.
Gruß
Rainer
Hat schonmal wer diese Ext. probiert? Ich habe Sie bei mir installiert, aber nichts ist passiert. Passwörter noch lesbar, auch die Passwort vergessen e-mail ist unverändert.
Elfe:
Das in de DB die schon vorhandenen Passwört nicht in md5 gewandelt werden ist doch klar.
Habe mir für das Umwandeln der schon bestehen Passwörter eine kleine PHP getippelt:
<?
// Script zum Wandeln von Klartext Einträgen in md5 verschlüsselten Einträge
// DB Connect
$server = 'localhost'; // Datenbankserver
$dbname = 'xxx'; // Datenbank
$name = 'yyy'; // Name
$pass = 'zzz'; // Kennwort
$db = mysql_connect($server, $name, $pass) or print('Server konnte nicht verbunden werden');
mysql_select_db($dbname, $db) or print('Datenbank konnte nicht erreicht werden');
//------------------------------------------------------------
// Update des Feldes
$rs00 = mysql_query("SELECT uid, password FROM fe_users WHERE uid > 0",$db);
$row00 = mysql_fetch_assoc($rs00);
$i=1;
$id = $row00['uid'];
$new_pass = md5($row00['password']);
echo $i.'--'.$id.'--'.$new_pass.'<br>';
$aendern = ("UPDATE fe_users SET password = '$new_pass' WHERE uid = '$id'");
$update = mysql_query($aendern,$db);
while ($row00 = mysql_fetch_assoc($rs00))
{
$i++;
$id = $row00['uid'];
$new_pass = md5($row00['password']);
echo $i.'--'.$id.'--'.$new_pass.'<br>';
$aendern = ("UPDATE fe_users SET password = '$new_pass' WHERE uid = '$id'");
$update = mysql_query($aendern,$db);
}
?>
Kuhkai:
folge dem Link von wikki,
gehe die Beschreibung Punkt für Punkt durch,
beachte dabei die Ergänzung von mir im Thread darunter,
und staune, wie einfach das war.
Gruß aus Berlin
Danke für den Tip, aber ich sehe nicht, wo in dieser Beschreibung auf die 'Passwort vergessen' Funktion eingegangen wird.
Neuer Sammelfred zum Thema:
#343072
Sascha
@ WildFun: Warum einfach wenns auch kompliziert geht...
SQL-Befehl: UPDATE fe_users SET password = md5(password);