sichere Sessionverwaltung?!?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • sichere Sessionverwaltung?!?

    Hallo,

    ICh habe ein kleines Frontend erstellt, welches aus 5 Masken besteht, zwischen denen der Benutzer hin und her springen kann. Das ganze basiert auf sessions.
    In einem Loginskript wird der Benutzername und das Passwort verlangt. Wird dort eine Eingabe vorgenommen, dann wird mit diesen werten ein Datanbankconnect zu einer Oracle Datenbank hergestellt.

    PHP-Code:
    $connection OCIPLogon($user$pass$host); 
    konnte diese Verbindung erfolgreich hergestellt werden, dann werden sowohl das Passwort aus auch der Username in einer SESSION_VAR gespeichert. Dies ist von nöten, da auf den folgenden Masken immer wieder Datenbankabfragen ausgeführt werden, wobei dann immer wieder das Passwort und der Username benötigt werden.

    Nun meine Frage:
    Habe im moment die Sessions mit Hilfe von Cookies laufen. Dort wird dann das Passwort und der Username für den DatenbankloginUNVERSCHLüSSELT hinterlegt.

    Kann mir jemand sagen, wie ich diese Daten verschlüsseln kann?
    (Habe schon das Passwort mit md5 verschlüsselt, jedoch kann dann kein korrekter Datenbanklogin durchgeführt werden, da das ja das Passwort in verschlüsselter Form vorliegt, aber für den Login in reiner Form benötigt wird.).

    Wie ist denn die beste Alternative zu Cookies um Sessions abzuspeichern?
    (Im Cookie werden ja alle Sessionvar abgeseichert. Nun habe ich aber auch ein Array mit 300 Werten. Wie kann ich diese Denn hinterlegen? in einer Datenbank?)

    Bin für jede Anregung dankbar.

  • #2
    Ähm, wenn du dem User einen Session Cookie verpasst und dann Werte in Sessions Vars einträgst, dann werden diese afaik nicht auf'n Cookie geschrieben, sondern bleiben auf dem Server. Der Cookie übermittelt nur die Session ID, damit du serverseitig das korrekte Session Array findest. Die Werte für PW und User sollten nicht ständig zwischen Client und Server hin- und hergeschickt werden.
    Verschlüsselung brauchst du nicht, denn die DB wird wohl auf'm gleichen Server sein, wie der Webspace. Somit wird die Abfrage wohl über Localhost resp 127.0.0.1 gemacht und das ist für Aussenstehende nicht zu sehen (ausser einer installiert dir auf dem Webspace einen Netzwerk Sniffer)

    Gruss

    tobi
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      [QUOTE]Nun meine Frage:
      Habe im moment die Sessions mit Hilfe von Cookies laufen. Dort wird dann das Passwort und der Username für den DatenbankloginUNVERSCHLüSSELT hinterlegt.[QUOTE]
      1. das ist keine Frage.
      2. wen störts?

      Kann mir jemand sagen, wie ich diese Daten verschlüsseln kann?
      1. das ist eine!
      2. aber danach hättest du auch suchen können!

      (Habe schon das Passwort mit md5 verschlüsselt, jedoch kann dann kein korrekter Datenbanklogin durchgeführt werden, da das ja das Passwort in verschlüsselter Form vorliegt, aber für den Login in reiner Form benötigt wird.).
      Ja, wer das Manual md5 lesen kann, ist klar im vorteil. Mach dir mal klar, was eine verschlüsselung ist. Und was ein Hash ist.

      Wie ist denn die beste Alternative zu Cookies um Sessions abzuspeichern?
      Seltsame Fragestellung, aber vermutlich die ID "per hand" (POST,GET) zu übergeben. Ist letztendlich auch die einzige.

      (Im Cookie werden ja alle Sessionvar abgeseichert. Nun habe ich aber auch ein Array mit 300 Werten. Wie kann ich diese Denn hinterlegen? in einer Datenbank?)
      *rofl* Ja, wahrscheinlich...

      Ist alles nicht böse gemeint , aber bleibt nur ein Fazit: Geh mal ins Handbuch und lies dir den Teil mit den Sessions nochmal genau durch!
      EDIT:
      Na, oder lass es dir vom Jahlives erklären Wenn du glück hast, haben die Börsen schon wieder zu

      Kommentar


      • #4
        Das Problem ist, das ich bis heute eigentlich geglaubt habe es verstanden zu haben. Aber so mehr ich nun wieder darüber gelesen habe, um so unklarer wurde mir die Sache.

        Eine Frage hätte ich aber mal vorerst noch:

        Speichert der Server eine Session in einer Datei auf seinem Filesystem ab?
        (Also eine Art Cookiedatei, welcher zur jeweiligen Session alle zugeweisenen Variablen in unverschlüsselter Form enthält.)
        Falls dies nicht so ist:
        Woher weis der WebServer denn dann welche Variablen eine Session enthält?

        Kommentar


        • #5
          Na, oder lass es dir vom Jahlives erklären Wenn du glück hast, haben die Börsen schon wieder zu
          Nö heute geben die Börsen wieder vollgas. Tipp: Kauft Gold

          Gruss

          tobi
          Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

          [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
          Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

          Kommentar


          • #6
            Speichert der Server eine Session in einer Datei auf seinem Filesystem ab?
            kommt drauf an: session_set_save_handler

            Kommentar


            • #7
              AHhhhhhhhhhhhh.

              Jetzt ist mir wieder einiges klarer. Sorry für meine geistige Beschränktheit. Hab wohl einfach nur zu lange gelesen, um klar denken zu können.

              Trotzdem Danke

              Kommentar

              Lädt...
              X