2009-04-16 2 views
0

Ich erstelle eine Website und möchte keinen Benutzer/Mitgliedschaft haben.Sind Cookies auf einer Website ohne Benutzer die einzige Möglichkeit, Personen daran zu hindern, Aktionen zu wiederholen?

Jedoch können Leute, die die Site benutzen, Sachen wie Abstimmung tun und fraglichen Inhalt kennzeichnen. Ist das die einzige Möglichkeit, Benutzer durch Cookies zu identifizieren und zu verhindern?

Ich weiß, ein Benutzer kann nur ihre Cookies löschen, aber ich kann nicht anders denken.

Vorschläge für dieses Szenario?

Antwort

4

Nun, Sie könnten eine Cookie + IP-Adresse in einem Datensatz in Ihrer Datenbank abbilden. Um den Benutzer zu identifizieren. Wenn die IP-Adresse in der Datenbank vorhanden ist, fügen Sie einfach nur den Cookie hinzu, aber prüfen Sie zuerst den Cookie, um unnötige Datenbankaufrufe zu vermeiden.

Dies ist jedoch nicht optimal, da Schulen usw. die gleichen ips auf vielen Computern haben können.

Sie können openid immer einfach anpassen!

0

Ja, Sie haben Recht.

HTTP ist zustandslos, daher gibt es keine Möglichkeit zu bestimmen, ob der Ursprung einer Anfrage, die Sie jetzt erhalten, gleich oder anders ist als der Ursprung einer Anfrage, die Sie vor 5 Minuten erhalten haben.

Cookies sind der einzige Weg dazu. Sogar Server-seitige Sitzungen verlassen sich auf Cookies, um die Sitzungsidentität über Anforderungen hinweg aufrechtzuerhalten (wobei der Sicherheitsalarm der Weitergabe der Sitzungs-ID in der URL ignoriert wird, die jeder mit böswilliger Absicht trivial umgehen kann).

0

Cookies sind nicht genug, wie Sie sagten, es könnte gelöscht werden/abgelaufen.

IP-Adressverfolgung ist auch keine Option wegen DHCP und Firewalls.

Die einzige Sache, die ~ 100% sicher ist, ist Benutzer, aber andererseits kann eine Person mehrere Konten registrieren.

Ich werde mit Cookies gehen, als die einfachste und am wenigsten aufdringliche Art und Weise. Wenn jemand wirklich das System spielen will, wird er einen Weg finden, was auch immer Sie versuchen, es zu verhindern.

0

Auch mit Mitgliedschaft kann sich ein Benutzer mehrfach registrieren und abstimmen.

Cookies sind eine Möglichkeit, damit umzugehen, aber Leute, die wissen, dass sie Cookies löschen können, können wieder abstimmen.

Sie können die IP des Wählers abfangen und darauf basierend einschränken. Aber viele Leute werden dieselbe IP haben.

Leider gibt es keinen anderen Weg.

1

Marko & Visage richtig ist,

Nur wenn hinzufügen, könnten Sie jede Abstimmung mit dem Zeitstempel gespeichert werden sollen, IP, etc ... so zumindest, wenn jemand auf „Spiel“ Ihre Website nicht versuchen, Sie wären in der Lage, Sätze von Stimmen aus dem gleichen Ort oder innerhalb einer sehr kurzen Zeitspanne (zB von einem Bot) Rollback

1

+1 Zu allem, was andere bereits gesagt haben.Hier ist eine andere Mittelweg Idee:

Verwenden Sie Cookies als primäre Mittel zur Begrenzung der Wahl. Wenn ein Cookie nicht gefunden wird, überprüfen Sie die IP-Adresse. Lassen Sie nicht mehr als sagen wir 1 Stimme pro 5 Minuten von derselben IP.

0

Es wird immer Leute geben, die das System spielen, wenn es ihnen passt. Wenn Sie darüber hinaus so vorgehen, dass Sie überhaupt keine Cookies benötigen, sind Sie offen für sehr einfache Angriffe.

Ich denke, dass Sie Möglichkeiten zur Erhöhung der wirtschaftlichen Kosten von Benutzern in einer Wolke des Misstrauens betrachten möchten.

Zum Beispiel, wenn ein Benutzer mit dem gleichen Cookie versucht, die Abstimmung erneut zu übermitteln, kann das natürlich leicht gestoppt werden.

Wenn ein Benutzer mit einem anderen Cookie, aber von der gleichen IP das gleiche tut, könnte es von einem Proxy/Firewall kommen, so dass Sie vorsichtig sein und sie zwingen müssen, etwas zu tun, wie ein einfaches CAPTCHA. Sobald sie dies getan haben, ist nichts Neues erforderlich, wenn sie sich richtig verhalten, solange ihr neues Cookie bei ihnen bleibt.

Dies bedeutet, dass Menschen ohne Cookies noch teilnehmen können, aber sie müssen die Buchstabenfolge oder was auch immer wieder eingeben. Ein Problem, aber sie sind wahrscheinlich auf Websites, die nicht ohne Cookies arbeiten. Sie könnten bei Bedarf eine Ausnahme machen.

Sie können wirklich nicht mit Benutzern umgehen, die sich über einen Pool von IPs (real oder anders) befinden und neue und dynamische Angriffsvektoren auf Ihrer Site ausnutzen. In diesem Fall werden ihre wirtschaftlichen Investitionen mehr sein als Ihre, und Sie werden ehrlich gesagt verlieren. An diesem Punkt konkurrieren Sie nur, um die Regeln Ihres Systems beizubehalten. Das ist, wenn Sie eine Anmeldung/E-Mail/Handy/SMS-Bestätigung benötigen, um den Einsatz zu erhöhen.

0

Sie können GET-Variablen und URL-Teile hinzufügen, die als Cookies dienen - einige Websites machen das, um Logins und/oder Tracking zu ermöglichen, wenn Cookies deaktiviert sind. Generieren Sie das Teil zum Beispiel mithilfe der Quell-IP und der Zeichenfolge des Benutzeragenten.

site.com/vote?cookie=123456

site.com/vote/cookie123456

Verwandte Themen