Bevestigen van nieuw e-mailadres
Ik zoek een goed idee voor het bevestigen van een nieuw e-mailadres.
Gebruiker voert een nieuw adres in en er wordt een e-mail gestuurd om te bevestigen. Zo ver is het duidelijk maar hoe werken jullie verder?
Jan
Uit veiligheidsoverwegingen kan je de persoon ook meteen geforceerd uitloggen. Het is dan wel raadzaam om dan aan de gebruiker te melden dat dit gebeurt.
Ook raad ik aan om de bevestigingcode een verlooptijd van maximaal een dag te geven.
Gewijzigd op 14/02/2020 09:11:32 door - Ariën -
Het wijzigen van een e-mailadres zou je gewoon via iemand zijn/haar profiel kunnen laten verlopen, eventueel met een extra opgave van het account-wachtwoord bij het wijzigen van dit stukje informatie. Dit omdat een e-mailadres mede wordt gebruikt om iemand te identificeren.
Als iemand niet meer de beschikking heeft over zijn/haar oude e-mailadres werkt de bovenstaande aanpak ook niet (er vanuitgaande dat de bevestiging naar het *oude* e-mailadres gaat, anders zou je iemand zijn account kunnen kapen op die manier :p), omdat het uitgaat van de beschikbaarheid van het oude+nieuwe e-mailadres.
En als zowel de situatie aan de orde is dat je zowel je wachtwoord vergeten bent alsook je (oude) e-mailadres is komen te vervallen zou je nog een controlevraag in kunnen bouwen waarmee je dingen opnieuw in kunt stellen ofzo. Maar normaal gesproken sta je het wijzigen van het e-mailadres niet zomaar toe lijkt mij.
e-mail adres MOET eenvoudig bij te werken zijn door de gebruiker zelf. Het gaat over een ledenlijst.
De leden kunnen ook inloggen met hun telefoon/gsmnummer.
Alles moet nog werken in het bestaande systeem. Ik moet dus al zeker een paar kolommen nieuwe maken in de bestaande tabel contact.
hash, actief, wijziging wanneer, bevestigd,...
Jan
Wat versta jij onder 'contact'?
Gewijzigd op 14/02/2020 14:01:47 door - Ariën -
En op het moment dat je iets wijzigt in deze profielinformatie dan zou het bijbehorende huidige wachtwoord opgegeven moeten worden ter controle.
Dit lijkt mij de veiligste en simpelste oplossing.
Geldt trouwens het e-mailadres ook als de "gebruikersnaam" van het account (in een van de inlogvarianten, je hebt het hierboven ook over telefoon/GSM)?
Quote:
Alles moet nog werken in het bestaande systeem. Ik moet dus al zeker een paar kolommen nieuwe maken in de bestaande tabel contact.
hash, actief, wijziging wanneer, bevestigd,...
hash, actief, wijziging wanneer, bevestigd,...
Nieuwe tabel, en in principe heb je genoeg aan hash, datum en userid om te koppelen met je 'contact' tabel.
Zodra de link succesvol is verwerkt, kun je deze regel verwijderen, of alleen de hash verwijderen als je dit graag bij wilt houden. e-mailadres in 'contact' updaten, klaar.
Edit: je zegt trouwens 'actief', maar ik zou het account niet gelijk deactiveren nadat iemand het e-mailadres heeft gewijzigd. Mocht de mail niet aankomen (of spam o.i.d.) of je link verlopen naar 24u, heb je een probleem.
Gewijzigd op 14/02/2020 14:41:26 door Michael -
En dan zou je nog een cron moeten hebben die regelmatig de states controleert om timeouts te triggeren indien van toepassing.
Als je een aparte tabel neemt, krijg je geen vervuiling in je contact tabel en zou je ook kunnen zien of het misschien ergens mis gegaan is. ID 392 heeft al 8 keer een e-mailadres gewijzigd in een uur tijd.. hmmm.