Mailinglisten-Archive |
Guten Abend, ich beschäftige mich zur Zeit mit dem Thema User-Authentifizierung in PHP-Anwendungen (Web-Kontext) und würde sehr gerne Eure Meinung zu den verschiedenen Möglichkeiten kennen. Im Moment betrachte ich 2 Methoden: 1.) Auth mit HTML-Formular, DB/Textfile und Session 2.) Auth mit htaccess und HTTP-Header Für mich sind die Aspekte Sicherheit und Nutzerfreundlichkeit am wichtigsten. Mit Nutzerfreundlichkeit meine ich in diesem Fall die Verwendung eines Login-Formulars anstelle der clientseitigen HTTP- Authenfizierung (per htaccess und Login-Fenster des Clients). 1.) Auth mit HTML-Formular, DB/Textfile und Session Hier sehe die Schwachstelle, dass die Session-ID sowohl auf dem Server als auch beim Client theoretisch (!) von unbefugten ermittelt werden kann, sofern diese Zugang zu den Systemen haben. Serverseitig reicht dafür ein Lesezugriff auf den Session-Ordner (session.save_path). Clientseitig könnte die Session bei "--enable- trans-id" im Quelltext der gerenderten Seite eingesehen werden. Dazwischen wäre der Zugriff auf die ID ebenfalls möglich, wenn der Request nicht über eine gesicherte Verbindung erfolgt. Das Problem der Sichtbarkeit der ID im Filesystem kann man durch eine Verlagerung des Speicherorts in eine Datebank umgehen. Die php-Datei mit den DB-Zugangsdaten könnten m.E. mit Zend kompiliert werden. 2.) Auth mit htaccess und HTTP-Header Bei der vom Server bereitgestellten Auth-Methode (htaccess und HTTP-Header) sehe ich eigentlich keine Lücke, sofern der Zugriff über eine gesicherte Verbindung läuft. Leider hat man aber hier keine Möglichkeit, die Zugangsdaten über ein Formular an den Server zu senden. Man muß wohl in diesem Fall immer die Funktion des Browsers verwenden. Ich kenne "PHP_AUTH_USER" und möchte es in diesem Vergleich nicht betrachten, da es m.E. in erster Linie die Produktion vereinfachen soll und als Zwitter zwischen den beiden Methoden einen recht wackeligen Eindruck auf mich macht. Tja... nun würde ich gerne Eure Meinungen zu den beiden Methoden kennen und wissen, wie Ihr das Thema behandelt und ein Maximum an Sicherheit bei der Authentifizierung erreicht. Herzliche Grüße, Thomas
php::bar PHP Wiki - Listenarchive