HuDeanY Geschrieben 12. Januar 2012 Teilen Geschrieben 12. Januar 2012 (bearbeitet) Hallo ihr Lieben, Das wird jetzt etwas länglich, aber dafür für die Spezialisten nicht minder interessant. Grundlegend möchte ich auf einer Webseite einen User-Login (Username / Passwort) ermöglichen. Für einen erfolgreichen Login erhält der Client ein AuthenticationToken, welches in seiner Session abgelegt wird, damit dort nicht etwa das Passwort oder dessen Hash liegt. Es geht mir in dieser Problemstellung nicht darum, wie die Passwortprüfung erfolgt. VerHASHen und salten etc. sind andere Themen, die hier nicht beachtet werden sollen. Nun soll dem User auch die Möglichkeit geboten werden, daß er sich permanent anmelden kann. In dem Fall soll ein AuthenticationToken nicht mehr in der Session gespeichert werden, sondern in einem mehr oder weniger permamenten Browser-Cookie. Dieses kann meinetwegen dann auch nach 1 Monat Nicht-Benutzung ablaufen oder so. Soweit also keine Magie. Um die Sicherheit aber zu erhöhen soll jedes AuthenticationToken nur einmalig verwendbar sein. Soll heißen nach jeder erfolgreichen AuthenticationToken-Prüfung wird ein neues erzeugt und weiter verwendet. Auch das funktioniert wunderbar. Leider haben aber moderne Browser die Angewohnheit (speziell bei Image-Downloads, evtl. auch bei anderen Aktionen ?) die Abrufe zu parallelisieren, was dann dazu führt, daß der erste Abruf ein neues AuthenticationToken erzeugt und alle übrigen parallelen Abrufe mit dem alten AuthenticationToken ankommen und somit als invalide abgewiesen werden. Speziell dieses Verhalten, daß die parallelen Abrufe alle ihre Sicherheitsinformationen (AuthenticationToken im Cookie) beim Start des Requests im Browser erhalten, sorgt dafür, daß die Daten nach dem Ende des ersten Aufruf veraltet und invalide sind. Jetzt meine Fragen an euch: Gibt es noch andere Aktionen die von Browsern parallelisiert werden?Wie würdet ihr das Problem der invaliden zweiten AuthenticationToken-Nutzung lösen ohne wesentlich Sicherheit zu verlieren? Es ist aus meiner Sicht keine Lösung das AuthenticationToken nur einmalig fest zu vergeben und immer das gleiche zu Nutzen, da dieses dann leicht geraubt und missbraucht werden könnte. Bearbeitet 12. Januar 2012 von HuDeanY Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.