Login-System


#1

Hallo meine Damen und Herren :wink:

manche Browser bzw. manche Surfer blockieren ja Cookies. Daher die Frage: Wie kann man Sessions bzw. ein Login-System effektiv implementieren? Oder ist es sinnvoll wie früher phpbb die session-id über Get mitzugeben, um die Session session_id($_GET[‘sid’]); wieder aufgreifen zu können? Ist das nicht unsicher, wenn ein unwissender die Url einem Freund sendet? Evtl könnte man dann die sid in Kombination mit ip oder Browser-Headers wie accept-language zusammen als Hash speichern?
Gibt es dazu ein effektives Tutorial? Oder einen Vorschlag von eurer Seite?

Danke


#2

Das entscheidet nicht der Browser, sondern der Nutzer per Einstellung.
Und du kannst dies erkennen und den Nutzer auffordern, Cookies zuzulassen.

Wird teilweise als Fallback so realisiert. Du kannst die id auch per POST liefern.

Wenn er selbst noch nicht ausgeloggt ist und die Session noch existiert, ja. Der Login-Zustand wird deshalb oft serverseitig z.B. in einer Datenbank gespeichert.

mit ip ist keine gute Idee. Es können mehrere unabhängige Benutzer mit der selben ip kommen.

LG pit


#3

Hallo pit,

da habe ich mich wohl ungenau ausgedrückt.

Klar entscheidet das der Nutzer des Browsers oder Ähnlichem: Damit war ja der sog. “Surfer” gemeint.

Ähm ja, es gibt mehrere Nutzer derselben Ip (in meinem Netzwerk bis zu 200 mit mehreren Geräten; brauchen daher /23 für die Maske), von daher wollte ich einen Hash aus den Daten, die der Browser im Http-Request immer mitliefert, aber selbst da hatte ich genau aus dem Grund (200 Personen) Bedenken, dass nicht zwei Leute den gleichen Hash erzeugen würden.

Per POST ist es möglich, z.B. die mittels css als “tarnen” oder über javascript ‘’. Werde ich aber nicht machen.

Beispiel: Zwei Leute sind im Chat (aus dem gleichen Netzwerk) und der eine schickt dem anderen den Link, dann hat man ein Problem, da selbst eine Ip-Überprüfung nichts mehr nutzen würde und in Firmen auf jedem PC sogar die gleiche Software läuft.

Zitat Manual: “A visitor accessing your web site is assigned a unique id, the so-called session id. This is either stored in a cookie on the user side or is propagated in the URL.”

Wenn man den Spagat zwischen dem paranoiden Nutzer, der javascript und Cookies blockiert, und dem - in Anführungszeichen - dummen Nutzer machen will, der blind jede URL kopiert (Stichwort z.B. XSS), muss man wohl den paranoiden Nutzer dazu zwingen Cookies wenigstens hierfür zu akzeptieren (auch wenn dann Google den Safari mal hacken sollte und die Cookies anderer Webseiten stielt :p ).

Ok danke, du hast mir geholfen, damit schließe ich den Thread

[edit]Wo gibt es den Erledigt-Button???[/edit]


#4

Dass ein sicherer Login Cookies voraussetzt, ist eigentlich Standard.
Wenn der Nutzer die blockiert, ist er selber schuld.