Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 5 Gast/Gäste
Umfrage Script Validierungen
#1
Hi Community,

vorab von mir - verspätet - ein frohes neues Jahr. 

Es handelt sich heute mal um ein bisschen "Off-Topic" bzw mal um ein Thema, welches sich nicht um MyBB dreht.

Ich möchte in absehbarer Zeit für ein privates Projekt eine Webseite erstellen, auf der Benutzer Ihre Stimme abgegeben können bei einer / bzw mehrerer Umfragen. Es gibt zahlreiche Umfrage/Poll PHP-Scripts im Internet, welche man theoretisch einbinden könnte - allerdings sind die Skripte nicht so geschrieben, wie ich es brauche und meistens veraltetes PHP. Somit habe ich mich entschlossen das Projekt selbst zu programmieren und die Webseite so zu bauen, wie ich halt gerade möchte. 

Zusammenfassung:
a) Es gibt eine öffentlich-erreichbare Webseite
b) Gäste können diese Webseite besuchen und pro Umfrage 1x ihre Stimme abgeben.

Naja, kommen wir zu meiner Frage - vielleicht haben einige Benutzer hier Zeit/Lust mir Feedback zu geben. 

Wie würdet ihr die Validierung programmieren damit ein Gast auch wirklich nur einmal abstimmen kann? Würdet ihr die IP-Adresse von dem Benutzer nehmen und in der Datenbank speichern? Würdet ihr ein Cookie setzen? Würdet ihr ggf. beides machen? Ich weiß derzeit echt noch nicht, wie ich das am besten umsetze.  

Ich bin mir noch unschlüssig wie ich den Controller bauen soll. Das ganze steht noch in den Startlöchern, vielleicht kann mir hier ja jemand beim Konzept helfen. 

Beste Grüße,
JAY
Zitieren
#2
Guten Morgen JAY,
auch von mir noch ein gesundes Jahr 2020.

Ich kann Dir zwar absolut nicht helfen, möchte Dir aber einen kleinen Hinweis geben:

1. Wenn ein Gast einmal mit dem PC und danach mit dem Smartphone und/oder Tablet zur Umfrage geht hat er meiner Meinung nach verschiedene IP´s
(Mache ich manchmal wenn meine Frau bei ihrem Online-Spiel Gästeklicks benötigt.)

2. Hier bei meinem Opera-Browser habe ich oben einen "VPN"-Button. Dort kann ich einen virtuellen Standort aussuchen und somit auch die IP wechseln.

3. Meine Cookies lösche ich sehr häufig. Ich glaube das kann man sogar im Opera-Browser einstellen das die nach jedem Beenden automatisch gelöscht werden.
Ich denke auch hier wäre dann eine mehrmalige Teilnahme möglich.

Das mit den verschiedenen IP´s ist mir in meinem Forum aufgefallen weil weil da manche Mitglieder mit verschiedenen IP´s eingeloggt sind. Ich denke das liegt daran weil sie sich einmal mit dem Handy, ein anderes mal am PC einloggen.

Sollte ich mit meinen Überlegungen falsch liegen, habe ich wieder was dazu gelernt.  Cool
Gruß
DIMO
Zitieren
#3
Hallo Jay!

Das ein Nutzer einfach das Gerät wechselt um mehrmals abzustimmen wirst Du kaum umgehen können.
IP-Adresse und Cookies lassen sich aus dem Sessel manipulieren, ohne das Gerät zu wechseln - sind also für Dein Vorhaben kaum geeignet.
Eine etwas bessere Variante wäre evtl. die Mac-Adresse auszulesen.
Wie gesagt....einen Gerätewechsel kannst Du nicht verhindern. Dafür müsste es ein Benutzerkonto geben.
Zitieren
#4
Danke erst einmal für euer Feedback.

Die MAC Adresse auslesen ist nicht möglich da PHP nur das auslesen kann, was über bzw im HTTP Header mitgeschickt wird. Somit fällt das direkt raus. Oder wie kommst du darauf das es eine Variante ist? Schon mal gemacht?

So wie es scheint bleibt nur die IP Adresse oder Cookie. Zusätzlich könnte man ggf. eine Mail verschicken mit einem Link. Erst nach Klick auf den Link zählt die Stimme. Das kam mir eben noch in Kopf.. Schließt natürlich Fake nicht komplett aus aber reduziert es... Reduziert ebenfalls die Wahrscheinlichkeit das Benutzer abstimmen.

Ich denke allerdings das ich um Cookie und IP nicht drum herum kommen...

Grüße
Zitieren
#5
Das es via php nicht geht wusste ich natürlich nicht.
Es wäre ohnehin nicht ganz sauber gewesen, da es nur im gleichen Subnet funktioniert.
Anderenfalls hätte man nur die MAC des nächsten Routers. Wink
Zitieren
#6
Mittels JavaScript kannst du zusätzliche Systemparameter des Computers auslesen, wie z.B.
- Betriebssystem und Version
- Browser User Agent und Version
- Displayauflösung in Pixel
- Browser Viewport (Sichtbare Anzeigefläche des Browsers) in Pixel

Damit ließe sich ein Benutzer noch etwas eindeutiger identifizieren.
Selbstverständlich ist man niemals vor Manipulationen sicher!

Alternativ könntest du Social Media APIs verwenden, um einen Login zu validieren.
Dies würde die Umfrage allerdings um eine zusätzliche Eingabe erweitern, also:
[Umfrage-Auswahl], [Name], [Passwort]
Damit kannst du jedoch nicht alle Gäste abdecken, weil nicht jeder Facebook, Twitter und Co nutzt.

[ExiTuS]
MyBB + innovative Themes:
NokiaPort.de Forum Nokia-Traditionsforum seit 2006.
Live Escape Game Forum Diskussionsplattform für Escape-Rooms.
Unlösbares Problem, Dilemma? -> das Nötel Smile
Zitieren
#7
Jay,

mal ein Gedankengang aus ner völlig anderen Richtung.....

Ist das Speichern von IP-Adressen hier wirklich ein Mittel zum Zweck und somit DSGVO-konform?
Sobald es techn. andere Möglichkeiten gibt, muss man das wohl mit nein beantworten.
Auf jeden Fall ist es dadurch auch keine anonyme Umfrage mehr.
Zitieren
#8
(09.01.2020, 10:36)Schnapsnase schrieb: Jay,

mal ein Gedankengang aus ner völlig anderen Richtung.....

Ist das Speichern von IP-Adressen hier wirklich ein Mittel zum Zweck und somit DSGVO-konform?
Sobald es techn. andere Möglichkeiten gibt, muss man das wohl mit nein beantworten.
Auf jeden Fall ist es dadurch auch keine anonyme Umfrage mehr.

Diejenigen stimmen natürlich der Datenschutzerklärung zu und willigen ein. Die Frage ist halt eher: Wie soll man es sonst machen? Ich denke eher das ist die Problematik...
Zitieren
#9
Eine Möglichkeit wäre noch die Verifizierung über Handy-Nr.
SMS mit einem Code ans Handy schicken. Dieser Code muss dann vor Abstimmung ins Formular eingegeben werden und ist nur 1x glültig.
Diese Möglichkeit wäre identisch mit einer Email-Verifizierung. Allerdings bieten Email-Adressen mehr Möglichkeiten zur Manipulation.
Ich möchte behaupten, dass mittlerweile 95% der Bevölkerung ein Handy besitzt. Wink

Grüße
Zitieren
#10
Letztlich musst du halt entscheiden, wie viel Aufwand du treiben willst. Bei simplen Umfragen würde ich nur ein Captcha und Cookies (oder HTML5 Web Storage) einsetzen. Das hält automatische Bots ab und hält "normale" User von mehrfachen Votes ab. Mehr Manipulationssicherheit bieten Benutzeraccount bzw. E-Mail-Verifizierung. SMS-Verifizierung und ähnliche Verfahren ist dann schon deutlich aufwendiger.

Ob sich EverCookies oder Canvas fingerprinting eignen und Datenschutzrechtlich unproblematisch sind, kann ich leider nicht sagen.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren