Password Vergessen funktion md5

  • Hallo Liebe Community ;)


    Ich hab eine Frage und zwar sitze ich gerade an einer Password Vergessen Funktion für mein UCP
    Mein Problem ist ja jetzt das die passwörter per MD5 verschlüsselt werden


    Ich will das jetzt so machen das wenn er auf Password klickt das dort ist email adresse eintragen wenn er die eingetragen hat ließt er den Namen aus und bekommt dann eben eine email mit


    z.b


    Hallo Omega


    Du hast anscheinend dein Password vergessen Klicke auf diesen Link : link
    um ein neues password zu setzen!



    Jetzt ist meine Frage ist es möglich einen Link zu erstellen wo er dann das password ändern kann und sonst kein anderer User sprich einen Speziellen Link der nach 12h nicht mehr aktiv ist?


    Mit Freundlichen Grüßen
    Omega

  • IP beim Klicken auf "Passwort vergessen" speichern, diese im Link MD5 verschlüsselt mitsenden und beim Aufruf des Links auf Richtigkeit prüfen.


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'

  • Hey,


    du kannst einfach das Thema als Erledigt markieren ;)


    Trotzdem wollte ich hier noch etwas kleines loswerden: Du solltest nicht mit der IP Adresse des Nutzers abfragen, ob er es war. Die meisten Leute warten nicht direkt auf die Email mit dem Link, daher ändert sich oftmals die IP Adresse. Stattdessen kannst du einfach einen timestamp speichern und abfragen, ob der länger als 20 std. z.B. her ist.
    Auf jeden Fall würde ich einen ordentlichen Link generieren, am einfachsten ist der md5 hash der zeit. Damit die Links ungefähr so aussehen: http://domain.de/pw-forgot.php?user=12&id=[+key]
    Wobei das user noch eine weitere sicherheit darstellt, FALLS jemand zufällig ganz genau gleichzeitig den link generiert.


    Und nicht vergessen nach dem Ändern die Zeile aus der Datenbank zu löschen und daraus einen "ungültigen Link" zu machen!!


    Gruß
    Tobi

  • IP beim Klicken auf "Passwort vergessen" speichern, diese im Link MD5 verschlüsselt mitsenden und beim Aufruf des Links auf Richtigkeit prüfen.

    Ist aber nicht gerade eine gute Lösung.
    Was ist, wenn man es z.B. so wie ich macht: Ich habe links mein Handy liegen, wenn ich mal eben auf einen Link klicken muss, um eine bestimmte Aktion (wie z.B. Registrierung bestätigen) auszuführen, mache ich es über's Handy, und ich habe nicht immer mein WLAN an -> Andere IP.


    Am besten so lösen, wie er es schon gesagt hat: Zufälligen Key generieren, ggf. nochmal verschlüsseln, in die Datenbank abspeichern, beim Aufrufen ($_GET) abfragen und auf Gültigkeit überprüfen.
    Stimmt er überein, eine Spalte bzw. Zeile in der Datenbank ändern und den Key als ungültig markieren bzw. ganz löschen. :)


    EDIT: Ups, PHP-Tobi hat ja fast den gleichen Inhalt bereits genannt - Sorry. :'P