Webdesign in Siegen

Sind $_SESSION Daten sicher?

Fragen zum Thema PHP können hier gestellt werden

Moderator: Basti

Sind $_SESSION Daten sicher?

Beitragvon manela am 07.08.2008, 14:13

Hallo zusammen,

ich fange gerade an, eine größere Webapplikation zu bauen und bin am Überlegen, ob ich Daten, für die ich nicht jedes Mal aus Performence-Gründen eine Datenbankabfrage durchführen möchte, in $_SESSION abspeichern soll. Reicht der Sicherheitsgrad von $_SESSION für normale Daten aus, die nicht hochkritisch sind, aber eben auch nicht gleich gehackt werden sollen? Passwörter und Usernamen haben dort vermutlich nichts verloren. Wie sieht es mit Namen, Anrede, etc. aus? Oder lieber doch alles aus der Datenbank abfragen? Ist das dann überhaupt sicherer? Welche Alternativen gibt es? Wie händelt Ihr das?

Eine Pauschalantwort ist hier sicher nicht möglich. Trotzdem würde mich eure Meinung dazu interessieren.

Viele Grüße

Manu
manela
Mitglied
 
Beiträge: 14
Registriert: 24.08.2006, 14:12

Re: Sind $_SESSION Daten sicher?

Beitragvon Basti am 07.08.2008, 17:00

Ich würde dir raten, Sessions nur dort zu verwenden, wo sie auch wirklich benötigt werden. Denn Sessions und Cookies machen eigentlich nur Sinn, wenn du Daten seitenübergreifend weitergeben möchtest, beispielsweise für Logins oder ähnliches. Für größere Datenmengen, die auch aus einer Datenbank abgerufen werden könnten, machen Sessions eigentlich keinen Sinn, da dann ja auch immer noch eine extra Session-ID angehangen (oder bei Möglichkeit als Cookie gespeichert wird) und sich der Aufwand meiner Meinung nach nicht lohnt.
Um die Performance musst du dir bei MySQL-Abfragen jedoch keine Sorgen machen, ich würde sogar behaupten, dass dies besser für die Performance ist als alles in Sesssions zu speichern. Bedenke, dass sich durchaus viele verschiedene Besucher gleichzeitig auf deiner Seite aufhalten können. Wenn du dann für jeden das gesamte Profil in Sessions speichern möchtest belastet das den Server schon mehr als wenn du eine einfache MySQL-Anfrage an den Server schickst.

Der Aspekt Sicherheit ist bei Sessions eigentlich auch gut, da die entsprechenden Daten ja immer über eine relative lange Session-ID miteinander verknüpft sind. Allerdings sollte man zusätzliche Schutzmechanismen bei vertraulichen Informationen oder geschützen Zugängen, beispielsweise einen IP Vergleich integrieren, damit nicht gleich der Erwerb einer fremden Sessions-ID Zugang zu allen Daten des jeweiligen Benutzers gewährt. Ansonsten können Sessions aber eher schwierig manipuliert werden, da sie im Gegensatz zu Cookies ja serverseitig gespeichert werden.
Benutzeravatar
Basti
Moderator
 
Beiträge: 1974
Registriert: 15.06.2006, 17:33
Wohnort: Rheinbreitbach


Zurück zu PHP

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast