Wie funktioniert ein Login mit Sessions?? *Newbie*

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

  • #31
    damit du den aber registieren kannst mußt du auch das passwort wissen..
    ..sonst existiert nur die variable username..
    ..und is_registered("username") liefert false..

    du brauchst doch nicht bei jeder aktion den username und das passwort überprüfen..das müßtest du nur wenn es keine session gäbe würde..deswegen ja auch spezielle sicherheitsmechanismen in der priotitätenreihenfolge der variable in php selbst

    [Editiert von KinNeko am 04-01-2002 um 02:52]

    Kommentar


    • #32
      ich denke wenn du nur den Usernamen registrierst dann is der login kein wirkilcher login... den dann kann ich trotzdem mit dem direkten link in den inside bereich ...
      deswegen musst Du in jedem script das passwort abfragen und das in der session zusmmen mit dem nick speichern...
      btw verschlüssel das passwort in der DB
      Beantworte nie Threads mit mehr als 15 followups...
      Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

      Kommentar


      • #33
        wie willst du das machen ??
        link = link2?username=testperson <= so ?

        Edit :
        vielleicht reden wir aneinander vorbei..das Skript sichert nicht die Innenseiten. Du kannst auch als nicht eingeloggter User normal surfen.
        Nur bestimmte funktionen stehen nicht zur Verfügung.

        Beispiel :
        Flirtsuche geht auch als nicht eingeloggter User. Nur wenn du dann "Nachricht schreiben" schreiben klickst wird der Username abgefragt.
        if (is_registered("Username") {
        require("formmail.php");
        }
        else {
        Diese Funktion steht nur registrierten Usern zur Verfügung. Bist melden sie sich an um die Funktion zu nutzen.
        }

        Edit 2:
        Wenn du das haben willst modefizier es doch und lade es nochmal in die Sammlung..damit für jeden was dabei ist..
        ..aber du musst trotzdem nur am Anfang jeder Seite abfragen ob der Username registriert ist..

        Wie soll der User die variable Username den registrieren ?? Das geht nur per Loginform..und dafür braucht man das Passwort ! EINMAL !
        Immer noch kein Grund das Passwort zu registrieren..es ist ja keine normale Variable die manuell gesetzt wird.

        [Editiert von KinNeko am 04-01-2002 um 03:23]

        Kommentar


        • #34
          Wie ist es, wenn ich ein script ausführe das einen usernamen in der aktuellen session speichert und dann auf Deine Seite surfe. dann ist username registered...
          Da brauch ich kein Passwort... nur den Namen der Variablen, wenn der username is dann is es einfach :-)
          Beantworte nie Threads mit mehr als 15 followups...
          Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

          Kommentar


          • #35
            Was ist mit der Session ID ?

            Wenn du auf Amazon surfst und dann auf eine andere Shopseite gehst nimmst du deinen Warenkorb ja auch nicht mit.

            Kommentar


            • #36
              Ich weiß jetzt was du meinst..
              1. Rufst du die Index.php auf
              2. Kopierst du die Session ID manuell
              3. Rufst du ein Script auf dem selbem Server auf mit der SessionID
              4. registrierst den Username
              5. und dann kannst du weitersurfen auf meiner Seite

              Das ganze ist aber ein allgemeines Sicherheitsproblem wenn mehrere Seiten sich einen Server teilen und die Sessiondaten in Files im gleichen Verzeichnis abgespeichert werden.
              Das rechtfertigt in meinen Augen nicht eine weitere Datenbankabfrage auf jeder Seite. Die macht extrem mehr Traffic und heute zutage bekommmen die meisten Portale ja schon Probleme.
              Effizenz geht immer zu Lasten der Sicherheit..aber es ist schneller und billiger.

              Kommentar


              • #37
                Skript angepasst...

                Hallo KinNeko,

                nochmal vielen Dank für dein Login-Script.

                Ich habe die Login-Datei mal etwas überarbeitet, da ich einige Sicherheitsprobleme mit leeren Passwörtern hatte.

                Sag mir doch mal, was du davon hältst:

                #Phrase zum Verschlüsseln

                $passphrase = 'ganzgeheim';


                #Überprüfen ob alle Felder ausgefüllt

                if ($Password != '' AND $Username != '') {


                #Holen und entschlüsseln des zum Benutzernamen passenden Passwortes

                $decrypted_password = "SELECT DECODE(password,'$passphrase') FROM admindata WHERE loginname = '$Username'"
                OR DIE ("Der Nutzername existiert leider nicht!");

                $decrypted_password = mysql_query ($decrypted_password)
                OR DIE ("Der Nutzername existiert leider nicht!");

                @$decrypted_password = mysql_result($decrypted_password, 0);


                #Überprüfen der Gültigkeit und Registrierung der Session "Username".

                if ($decrypted_password == $Password) {

                $update = "UPDATE admindata SET lastlogin = NOW() WHERE loginname = '$Username'";
                $update_result_handle = mysql_query ($update)
                or die ($update . "<br>" . mysql_errno() . " - " . mysql_error() . "<br>\n");
                session_register("Username");
                ?>

                ... HTML-Teil, der für eingeloggte User zur Verfügung steht. ...

                <?

                #Fehlerbehandlung bei falschen Eingaben.

                } else {
                echo "<br><br>
                 Die eingebenen Zugangsdaten sind leider falsch. Bitte gehen sie zurück und korrigieren sie ihre Eingaben.
                <br><br>
                 <a href='index_administration.php'>Login-Formular</a>";
                }


                } else {
                echo "<br><br>
                 Nicht alle Felder vollständig ausgefüllt. Bitte gehen sie zurück und korrigieren sie ihre Eingabe.
                <br><br>
                 <a href='index_administration.php'>Login-Formular</a>";
                }

                ?>

                Gruß

                langerxxx

                Kommentar

                Lädt...
                X