Hallo,
User eines Portals an dem ich gerade schreibe, können über ein Modul Mails verschicken. Um zu verhindern, dass sie einfach so irgendwelche Leute darüber zuspammen, müssen sie erst eine Email-Adresse per Bestätigungslink aktivieren. Nun bin ich mir aber nicht sicher was der bessere bzw. sicherere Aufbau für den Link ist, da ich nicht zu viel über den Aufbau meiner DB verraten will. Der Link sieht derzeit so aus:
$user ist dabei der Username, was nahe legt, dass direkt auf die Tabelle mit den Usern zugegriffen wird und $mail_id ist ein über den Timestamp erzeugter md5-Hash mit dem ich dann die Email-Adresse identifiziere, da der User die Möglichkeit hat mehrere Adressen freizuschalten. Die beiden genannten Variablen jage ich bevor ich sie zur DB-Anfrage nutze erst durch eine selbstgeschriebene Funktion welche alle Zeichen ersetzt die nach einem SQL-Injection Versuch aussehen.
Trotzdem überlege ich ob ich nicht doch noch eine Tabelle anlege, in welche ich die Mail-Adressen temporär abgelege und einzig über $mail_id identifiziere. Da der User daraus weniger rückschlüsse ziehen kann.
Was wäre die bessere Alternative? Andere Verbesserungsvorschläge sind auch gerne gesehen.
Gruss Spliffster
User eines Portals an dem ich gerade schreibe, können über ein Modul Mails verschicken. Um zu verhindern, dass sie einfach so irgendwelche Leute darüber zuspammen, müssen sie erst eine Email-Adresse per Bestätigungslink aktivieren. Nun bin ich mir aber nicht sicher was der bessere bzw. sicherere Aufbau für den Link ist, da ich nicht zu viel über den Aufbau meiner DB verraten will. Der Link sieht derzeit so aus:
PHP-Code:
url.de/script.php?action=confirm&name=$user&id=$mail_id
Trotzdem überlege ich ob ich nicht doch noch eine Tabelle anlege, in welche ich die Mail-Adressen temporär abgelege und einzig über $mail_id identifiziere. Da der User daraus weniger rückschlüsse ziehen kann.
Was wäre die bessere Alternative? Andere Verbesserungsvorschläge sind auch gerne gesehen.
Gruss Spliffster
Kommentar