MySQL loginsystem

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

  • MySQL loginsystem

    Hallo zusammen ,

    da ich mich net mit Sessions anfreunden konnte , habe ich mir gedanken über ein Datenbank basierendes Loginsystem ohne Sessions gemacht , und diese Gedanken auch schon in die Tat umgesetzt. Nun würde ich aber gerne von euch wissen wie es da mit der Sicherheit steht, um es auch für Kommerzielle Zwecke nutzen zu können.

    Mache erstmal den Aufbau klar:

    Tabelle registry:
    id|name|pass|ip|rechte

    Tabelle user:
    id|user|pass|mail|rechte|sonstige daten...

    Dann zur vorgehensweise:

    zuerst wird überprüft ob ein User,in der tabelle 'user', mit den zuvor eingegebenen Daten überhaupt exestiert.

    Falls die Daten stimmen , wird überprüft ob der User noch von seinem letzen Besuch in der registry eingetragen ist. Falls es einen Eintrag geben sollte , wird dieser Gelöscht.

    Nach diesem Vorgang wird der User erneut in die registry eingetragen.

    Das ist dann der komplette Loginvorgang... Auf den zu schützenden seiten wird dann immer überpfüft ob

    - der user in der registry eingetragen ist
    - der user überhaupt exestiert
    - der user die nötigen rechte hat um die Seite zu sehen
    - die in der registry eingetragene IP der aktuellen IP des users entspricht (um fremdmissbrauch zu vermeiden)


    Hoffe ihr habt diese Erläuterung verstanden.

    Und nun eure Sicherheitsbedenken bitte .


    Diggicell
    "Alkohol ist keine Antwort, aber man vergisst beim Trinken die Frage."
    (Henry Mon)


    http://www.diggicell.de

    Nun auch mit neuen Inhalten

  • #2
    schaue dir mal happy's tut an...

    das ist zwar mit sessions, aber das macht nichts. denn du brauchst nur selber eine pseudo-session-id erzeugen und diese in der url mitschleifen.

    anhand dieser id kannst du den user immer eindeutig identifizieren. allerdings musst du dann immer alle dazugehörigen daten wieder laden, denn es gibt ja keine session, wo man sowas ablegen kann.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      das mit der ip solltest du vergessen.

      - generier einen schlüssel und einen timestamp
      - trag "rechte|schlüssel|timestamp" in die tab ein
      - aktualisieren den timestmp bei jeder aktion, sofern er noch nicht verfallen ist
      - lösche die einträge, deren timestamp älter ist als x sek/min/std

      ! allerdings musst du mit JEDEM link auch den schlüssel mitgeben (manuell) !
      Kissolino.com

      Kommentar


      • #4
        Also anstatt beim Login zu überpfüfen ob es in der registry einen Datensatz mit den eingegebenen Daten gibt , und diesen dann zu löschen , lieber "Konstant" überpfüfen ob ein Datensatz älter ist als x stunden?

        Das sind schonmal gute Verbesserungsvorschläge , die ich bestimmt umsetzen werde , aber gibt es in dem System ernstzunehmende Sicherheitlücken ?.
        "Alkohol ist keine Antwort, aber man vergisst beim Trinken die Frage."
        (Henry Mon)


        http://www.diggicell.de

        Nun auch mit neuen Inhalten

        Kommentar


        • #5
          die sicherheitslücke besteht darin, dass jeder eingeloggte user
          seinen link mit schüssel versenden kann (per mail). damit kann
          auch ein anderer auf die inhalte zugreifen ... bei sessions geht
          das nicht.
          Kissolino.com

          Kommentar


          • #6
            nö. ist nicht möglich. Nur die ip mit der sich eingeloggt worden ist , kann den adminbereich benutzen. Ist also net möglich den Link per mail zu verschicken , sodass ein anderer die inhalte sehen kann.
            "Alkohol ist keine Antwort, aber man vergisst beim Trinken die Frage."
            (Henry Mon)


            http://www.diggicell.de

            Nun auch mit neuen Inhalten

            Kommentar

            Lädt...
            X