Ik wil bij mijn login script ook de mogelijkheid hebben dat mensen hun wachtwoord kunnen opvragen als zij die vergeten zijn. Ik heb heb mijn wachtwoorden beveiligd met de functie salt, alleen hoe kan ik nu het beste van de persoon die zijn wachtwoord kwijt is hem via een email zijn gegevens sturen inclusief het decrypten van zijn wachtwoord.

Het moet zoals hieronder vermeld:
Ik heb er toch voor gekozen om het via een link te doen, dus gebruikers voegen hun gebruikersnaam en email in en vervolgens krijgen ze een link die 24 uur actief is, vervolgens drukken ze op die link en krijgen ze een nieuw wachtwoord toegestuurd. hoe ga ik dit realiseren.
Je moet het wachtwoord niet decrypten...

Maak 2 extra velden aan bij je users of in een koppeltabel met bijv: veiligsheidscode en verloopdatum

Dan maak je een random code die zet je in de veiligheidscode veld, en bij verloopdatum zet je de tijd van nu + 24 uur. Dan stuur je de gebruiker een url met www.mijndomein.nl/?pagina=wwvergeten&randomcode=485743957439754 op die pagina maak je een formulier met 2 inputvelden voor het nieuwe wachtwoord, en als die overeenkomen met de random code uit je url dan wijzig je hem.

Succes
Oke, heb een voorbeeldje van een script zodat ik kan zien hoe ik het beste dat kan doen.
Of je stelt een nieuw wachtwoord in als iemand zijn wachtwoord vergeten is en stuurt die naar het e-mail adres van de gebruiker?
Als de gebruiker zijn wachtwoord is vergeten dan laat ik de gebruiker een wachtwoord ontvangen met een random password.
Of stuur een link waar de gebruiker zelf zijn wachtwoord kan instellen. Nog gebruiksvriendelijker.
@hertog jan
Dan krijg je misschien wel gezeur dat mensen wachtwoorden van anderen gaan opvragen, en dan kan je als echte gebruiker niet meer inloggen.

@aar dat bedoel ik ook ;)
Internet Verslaafde op 29/11/2011 18:20:00

Je kan de hash iedere keer dat de gebruiker inlogd veranderen met bv sha(time()); :P


Dat kan, maar ik zou het niet doen. Ik zou vanaf buitenaf lukraak getallen kunnen generen, een hash eroverheen en met een beetje geluk ook nog raak schieten. beter dus even een Salt, Pepper of een berekening er op los laten.
Ik wil het gaan doen zoals ik boven heb uitgelegd. maar hoe ga ik dat doen.
Je maakt eerst een formuliertje waar men zijn username en mailadres in moet vullen. Als deze gecontroleerd zijn, genereer je een hash, welke je in de database opslaat. Ook stuur je deze hash mee in een linkje die je naar de gebruiker mailt.

Als de hash-overeenkomt, dan laat je de gebruikers een nieuw password instellen, en als dat gebeurt is, dan verwijder je weer die hash uit je database (waarmee het linkje niet meer zal werken).

Et voila....

Reageren