Hallo Sven!
Ich weise einfach den Usernamen als Session zu oder ist das blöd?
Einfach
session_id($_SERVER["REMOTE_USER]);
session_start();Naja, das ist mir nur rein vom Gefühl her zu unsicher.
Aber wieso? Es gibt nichst viel sichereres als den HTTP-AUTH schutz des Apachen. Solange dieser läuft sollte das auch funktionieren, und wenn nicht gehen auch keine Scripte raus. Der Ganze MEchanismus kommt ja nur zum Tragen wenn der User sich bereust erfolgreich eingeloggt hat.
Der Benutzer kann sich regulär einloggen, und dann, da er den Benutzernamen des Kollegen kennt, dessen Identität annehmen.
wie? Dann müßte er sich entweder mit dem Passwort des Kollegen einloggen können, oder meine Umgebungsvariablern manipulieren - wie soll das gehen? Wenn er das kann kann er _alles_ manipulieren, auch PHP_AUTH_USER...
Man müßte also immer prüfen, ob REMOTE_USER und registrierte Session zueinander passen. Klingt nicht wirklich gut.
Wieso? Ich es gibt jeden User nur einmal. Wenn sich ein User einloggt bekommt er eine Session mit dem Usernamen als Session_ID, was muss ich da prüfen? Wenn ein neuer Request von dem REMOTE_USER kommt, dann wird die Session halt wieder übernommen. Was soll ich da noch prüfen?
wo hast Du die alte SessionID her?
Die kommt aus der Datenbank, in der auch Username und Passwort drinstehen. Die schreibe ich da rein, wenn eine _neue_ Session gestartet wurde, und sie wird gelöscht, wenn der Benutzer sich echt ausloggt. Außerdem kriegt die Datenbank noch einen Timestamp des Einloggens mit, so dass man auch zeitlich irgendwann eine neue Session beginnen könnte - sofern das gewünscht ist.
Hm, vielleicht doch so. Aber was habe ich davon die Session_id zu speichern und vorher zu überprüfen? Das kann ich mir doch sparen wenn ich direkt den Benutzernamen verwende! Wie gesagt wird der dann nicht übertragen, Cookies und Rewriting ist beides abgeschaltet, die "Session_ID" wird also nur über den Auth-Header des Browsers übertragen, und zwar als Benutzername. Vielleicht sollte ich dann aber den HTTP-Auth Mechanismus doch mit PHP einbinden, dann habe ich im Script die Kontrolle und kann dort alles abfragen und sicher gehen das die User-Daten valide sind.
Viele Grüße und schöne Weihnachten!
Andreas