martin123: Session Management

Hallo,

folgendes Szenario:

  • ich habe ein Login, der z.B. durch ASP überprüft wird.
  • im Erfolgsfall wird eine SessionID generiert, die von nun an den User beim Surfen durch die Website begleitet und ihn identifiziert.
  • Nach 20 Min nix tun wird sie gelöscht.
  • Nun schickt der User einem Freund den einen Link (inkl. der SessionID). Der schaut sich innerhalb der 20 min das Angebot an und wundert sich, mit dem Account seines Freundes unterwegs zu sein.

Wie kann man (ohne Coockies) feststellen, wer der tatsächliche User ist?

Vielen Dank

  1. hi,

    • Nun schickt der User einem Freund den einen Link (inkl. der SessionID). Der schaut sich innerhalb der 20 min das Angebot an und wundert sich, mit dem Account seines Freundes unterwegs zu sein.

    Wie kann man (ohne Coockies) feststellen, wer der tatsächliche User ist?

    in dem du ihn fragst ...?

    (du hast einen der nachteile URL-basierter session-id-übergabe entdeckt.)

    gruß,
    wahsaga

    --
    "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
    1. hallo,

      hast du vielleicht auch noch einen alternativ-vorschlag und nicht nur einen blöden spruch auf lager?

      danke martin

      1. hi,

        hast du vielleicht auch noch einen alternativ-vorschlag

        aber klar doch!

        und nicht nur einen blöden spruch auf lager?

        wenn du mir so kommst, lautet mein alternativvorschlag, "rutsch mir den buckel runter".

        gruß,
        wahsaga

        --
        "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
        1. zeitverschwendung mit dir...

        2. hallo wahsaga, hallo martin123,

          hast du vielleicht auch noch einen alternativ-vorschlag

          aber klar doch!

          und nicht nur einen blöden spruch auf lager?

          wenn du mir so kommst, lautet mein alternativvorschlag, "rutsch mir den buckel runter".

          @martin123:

          Da warst Du reichlich dumm, weil von wahsaga kommen eigentlich immer 1a-Tipps; und den hast Du nun verpasst.

          @wahsaga

          Mich interessiert Dein alternativ-vorschlag brennend. Ich war immer davon ausgegangen, dass bei URL-basierter sessid-Übergabe der Client nicht eindeutig identifiziert werden KANN.

          Grüsse, PeterB

  2. Hi,

    du könntest die IP des Users in eine Session-Variable schreiben und auf jeder Seite überprüfen.

    mfg

    PHP_Dude

    1. Hi,

      du könntest die IP des Users in eine Session-Variable schreiben und auf jeder Seite überprüfen.

      100%-ig eindeutig ist das aber nicht...

      mfg

      PHP_Dude

      1. 100%-ig eindeutig ist das aber nicht...

        Dann mach Cookies.

        Du kannst ja mehrere Sachen nehmen:

        IP
        UNIQUE_ID
        HTTP_USER_AGENT

        Das packst du alles zu einem MD5-Hash und überprüfst es immer.
        Besonders mit der unique_id solltest du auf 99,99999% Sicherheit kommen.

        mfg
        PHP_Dude

        1. 100%-ig eindeutig ist das aber nicht...

          Du kannst ja mehrere Sachen nehmen:

          IP
          UNIQUE_ID
          HTTP_USER_AGENT

          Das packst du alles zu einem MD5-Hash und überprüfst es immer.
          Besonders mit der unique_id solltest du auf 99,99999% Sicherheit kommen.

          Eine Session ID muss immer eine eindeutige (unique) ID sein...
          Oder was hast du mit der unique_id vor? Willst du sie als URL mitgeben (dann wird sie vom User mit kopiert) oder auf dem Server speichern (der hat doch schon die Session-ID)?

          Außerdem: Du lehnst dich mit der Sicherheits-Prozent-Angabe ziemlich aus dem Fenster. Wenn beide über den selben Proxy kommen und die selbe Software-Ausstattung haben, so wie das in vielen Firmen der Fall ist, schmilzt deine Sicherheitsangabe schnell dahin....

          1. Ich dachte dabei eigentlich an die unique_id vom Server, aber beim ausprobieren viel mir auf das die mit jedem connect wechselt.

  3. Tag martin123.

    Wie kann man (ohne Coockies) feststellen, wer der tatsächliche User ist?

    Setze die Lebenszeit der Session runter. Oder übergib die Session-ID mittels POST-Request, dann taucht sie im URL nicht auf. Nachteil dieser Variante ist natürlich, dass sich der Benutzer via Formular von Seite zu Seite hangeln müsste, was zu Lasten der Usability gehen könnte.

    [dsf 3.6]
    Siechfred

    --
    »Sie kochten heimlich mit Wasser und tranken öffentlich Wein.«