Hallo!
Das ist ja sowieso eines unser Dauerdisputthemen *gg*
Richtig ;-)
Ich plädiere trotzdem immer für die datentechnisch "sicherste" Methode, das heißt diejenige, die zuverlässig ist und dennoch den Aufwand rechtfertigt.
Klar! Aber sagen wir mal ich will einen Warenkorb mit Sessions realisieren. Will ich da allen Besuchern zumuten sich erst anzumelden und zu authentifizieren? Da ist man dann zwar Datantechnisch auf der sicheren Seite, aber ob man dann so viel verkauft wage ich zu bezweifeln!
Session und Authentifizierung sind 2 paar Schuh. Die Verknüpfung kommt nur daher, das viele Leute kein Auth-Fenster wünschen, sondern ein html-Formular zur Eingabe der Zugangsdaten, und weil sie vielleicht serverseitig gar keine andere Möglichkeit haben. Daher enstehen die viele Diskussionen um die sessionbasierte Authentifikation.
Wenn man technisch nicht eingeschränkt ist gibt es 2 Anwendungen.
Einmal Anwendungen wie ein Warenkorb, halt alles wo keine Authentifizierung erfolgen soll, dafür ist die PHP Session-Funktion wirklich sehr gut geeignet.
2. sind die Anwendungen, wo eine Authentifizierung erforderlich ist. Da gibt es dann mehrere Möglichkeiten.
Unter anderem
- die oft diskutierte Session-Authentifizirung,
- die php/HTTP-Authentifiezierung, oder
- die echte HTTP-Authentifizierung durch den Server.
Da kommt es jetzt vor allem drauf an was genau man durch die Authentifizierung erreichen will , was man zur Verfügung hat und in welcher Form man die Zugangsdaten speichern will. Im Allgemeien bevorzuge ich hier die HTTP-Authentifizierung durch den Apachen, das ist imho das sauberste, sicherste und schnellste, und an den Remote-User kommt man auch in PHP, und die Zugangsdaten kann man mit dem mysql_auth Modul des Apache auch komplett in MySQL speichern, oder man hat hierfür halt eine extra flat-file, so mache ich das meistens. Das muß nur einmal eingereichtet werden und man merkt nichts mehr davon. Außerdem ist man dann im internen Bereich nicht überall auf eine Scriptsprache festgfelegt wie bei der PHP-Auth oder Session-methode, da sich so nur PHP-Scripte schützen lassen.
Wenn denn eine Authentifizeirung erfolgen soll, dann kann ich auch user-spezifische Daten fest in einer Tabelle speichern und bei jedem Besuch auslesen. Das ist IMHO der Normalfall, da braucht man gar keine Sessions für!
So sehe ich das ganez Thema. Ich würde mich freuen wenn Du mal darauf eingehen würdest, vielleicht liege ich ja auch falsch!
Viele Grüße
Andreas