2012-04-06 7 views
1

Ich erwäge, ein Cookie-IP-Matching-System zu verwenden, um Benutzer automatisch einzuloggen, ohne dass sie ihre Login-Daten eingeben müssen, wenn sie sich auf einem bekannten System befinden und ihre IP nicht geändert hat.Cookie-basiertes Login-System

Ist diese Politik anständig oder öffne ich ein großes Sicherheitsloch?

Antwort

2

Dies kann ein potentielles Sicherheitsproblem sein, insofern einige Leute öffentliche Maschinen benutzen. Also mach es optional. Außerdem müssen Sie berücksichtigen, dass einige Maschinen dynamische IP-Adressierung verwenden. Ihre vorgeschlagene Methode wird in diesem Fall nicht funktionieren.

Aber vor allem NICHT speichern Sie das Passwort in den Cookie.

+0

Ich habe nichts dagegen, die Methode nicht in einigen Szenarien funktioniert, ich will es nur als Extra zur Verfügung stellen, nicht Als das grundlegende Anmeldesystem.Wenn es fehlschlägt, gehen sie einfach zum Anmeldebildschirm und geben ihre Daten ein.Ich habe auch nichts dagegen, anderen Benutzern mit demselben Maschinenzugriff Zugriff zu geben.Es ist die Verantwortung des Benutzers, sich zu loggen Wenn ich öffentliche Computer benutze, ist natürlich das Speichern des Passworts ein Sicherheitsvergehen meinerseits. – ppp

+0

Warum nicht die Methode, die Yahoo (unter anderem) verwendet, verwenden? Aktivieren Sie ein Kontrollkästchen, um sich einzuloggen. Dann standardmäßig, wenn Der Browser schließt, sie sind ausgeloggt. –

1

Erstellen Sie einfach "Abmelden" -Link, wo Sie, bevor Sie löschen ihre Cookie, wählen Sie ihre E-Mail und mailen Sie sie Link mit einem Hash, der ihren Cookie neu generiert. So können sie sich auf öffentlichen Computern abmelden.

Cookies vor der Verarbeitung über die Datenbank bereinigen.

+0

Logout-Taste löscht den Cookie und sie müssen die Daten erneut eingeben. Ich frage nur, ob das ein Sicherheitsloch ist. Cookies können manipuliert werden. Wenn jemand auch IP manipulieren kann, könnte er illegalen Zugriff auf meine Website erhalten. – ppp

+0

Nicht, wenn Sie alle Daten vor dem Löschen des Cookies speichern. Senden Sie den Link per E-Mail, um den Cookie zurückzusetzen. IP kann nur bei Cookies manipuliert werden, so müssen Sie eine bessere Sicherheit (Kombination mit E-Mail-Prüfungen kann es sein. –

1

Das ist natürlich ein Sicherheitsloch, denn wenn sich der Benutzer auf Ihrer Website anmeldet und sich abmeldet, kann sich jeder, der diesen Computer benutzt (mit demselben Account auf dem Computer), auf Ihrer Website anmelden.

Beachten Sie, dass dieses Problem auch für alle Websites auftritt, nur in der Regel beschränkt auf die Lebensdauer der Sitzung.

Da so alle Websites funktionieren, glaube ich nicht, dass dies ein echtes Sicherheitsloch ist, aber es ermutigt die Benutzer definitiv, die Sicherheit zu vernachlässigen. Es ist ein Stuhl/Tastatur-Schnittstelle Sicherheitsloch: P

Wie @Ed Heal sagt, speichern Sie kein Passwort in den Cookie, speichern Sie stattdessen ein zufälliges Token, die Sie in der DB speichern. Der Login-Prozess sollte prüfen, ob der in der DB gespeicherte Cookie dem auf dem Cookie entspricht.