Drupal 7 - Advanced Forum - ersten Forenpost eines neuen Users blocken?
am 27.02.2018 - 09:05 Uhr in
Hi Leute,
Meine Antispam Kombination aus Recaptcha, Antispam und Honeypot hal wohl endgültig den Geist aufgegeben. Es kommen immer mehr Spambots durch.Deswegen bin ich jetzt auf der Suche nach einer besseren Möglichkeit der Spamflut Herr zu werden.
Eine Idee ist den ersten Post eines neuen Users erst mal zu blocken, und ihn nach Kontrolle freizuschalten. Dann spammt mir der potentielle Bot schon mal nicht das Forum zu. Soweit die Theorie :)
Ich habe probiert das über das Rules modul zu machen. Aber ich bekomme einfach keinen Post Count ermittelt. Trotz installiertem und aktiviertem User Stats Modul. Ein Modul für den entsprechenden Zweck habe ich leider auch nicht gefunden.
Wie stelle ich das denn in Drupal 7 an?
Liebe Grüsse
Tiles
- Anmelden oder Registrieren um Kommentare zu schreiben
Vielleicht wäre eine Lösung
am 27.02.2018 - 16:41 Uhr
Vielleicht wäre eine Lösung mit Node Limit möglich: https://www.drupal.org/project/node_limit
Für normale, "authentifizierte Benutzer" setzt du das Limit des entsprechenden Inhaltstyps auf "1". Nach der Überprüfung des Inhalts weist du dem Benutzer eine zweite Rolle zu, die dann eine unbegrenzte Anzahl des Inhalts erstellen kann. Einigermaßen nachvollziehbar? Vielleicht ist das eine Lösung?
Hi bv, Danke für die Idee.
am 27.02.2018 - 18:07 Uhr
Hi bv,
Danke für die Idee. Aber das wollte ich eigentlich vermeiden. Ich würde da ungern noch einen Userlayer einziehen.
Was ich allerdings zwischen den Zeilen lese: es geht wohl gar nicht. Mit Drupal 6 ging das aber noch. Mit Drupal scheint mit jeder Version weniger möglich irgendwie :/
Ich habe jetzt mal als
am 27.02.2018 - 19:05 Uhr
Ich habe jetzt mal als Workaround nicht den Post Count genommen, sondern unpublishe grundsätzlich alle Beiträge von neuen Usern die weniger als einen Tag registriert sind. Das ist dann halt lästig wenn jemand unbedingt gleich am ersten Tag zig Fragen hat, hält aber die Bots wirksam ab. Die spammen in der Regel gleich los :)
Wenn jemand doch noch eine Idee hat wie man an den Post Count kommt, immer her damit :)
Edit, Kruazideibi, jetzt wird einfach alles unpublished. Ich werde mal wieder narrisch ...
Honeypot und
am 27.02.2018 - 21:33 Uhr
Honeypot und https://www.drupal.org/project/user_restrictions funktionieren gut zusammen, oder auch allein natürlich.
Bei user_restrictions kannst du jederzeit ungewünschte Benutzernamen, E-Mails, Teile von E-Mails sperren, das funktioniert sehr gut.
Du kannst über % und weitere Zeichen ganze Gruppen aussperren und immer weiter verfeinern, das Modul ist sehr verständlich und einfach aufgebaut und hat einen eigenen Test eingebaut, mit dem du gleich checken kannst ob du deine Eingaben richtig gesetzt hast.
Grüße Jenna
Workflow und Rules. Wenn
am 27.02.2018 - 21:43 Uhr
Workflow und Rules. Wenn Benutzer neu und forumpost, dann Freigabe durch Moderator. Viel Spass beim basteln.
https://drupal-tv.de
Drupal sehen und lernen
@Jenna, danke für die Idee.
am 28.02.2018 - 09:17 Uhr
@Jenna, danke für die Idee. Aber die Spambots die mich derzeit heimsuchen verwenden gängige Email Adressen wie Gmail. Und teilweise auch gewöhnliche Usernamen. Die sind also gar nicht als Bot zu erkennen, bis sie eben losspammen. Und dann kannst du da auch keine sinnvolle Regel erstellen. Ich kann ja schlecht meine Userschaft aussperren, seufz.
@dinmikkith, danke für den Hinweis. Aber genau das habe ich ja, und es geht nicht. Um dieses Benutzer neu gehts ja generell. Wie greife ich das ab?
Im Moment gehe ich dafür über site:current-user:created und ein Offset. Aber wie schon oben geschrieben blockts mir so grade alle Beiträge. Und ich komme nicht dahinter wieso.
Es scheint dass es endlich
am 28.02.2018 - 09:28 Uhr
Es scheint dass es endlich funktioniert. Das Geheimnis war die Reihenfolge. Wenn ich erst das Registrierdatum des Users abfrage mag er nicht. Wenn ich erst das Erstelldatum des Threads abfrage gehts.
Also
Data to compare > Selected data: node:created
Operator > Value is lower than
Data Value > site:current-user:created
Add Offset > 12 hours oder wie lang auch immer ein neuer User gequeuet werden soll.
Danke fürs Zuhören und Mitdenken.
Fehlt nur noch die Antwort auf meine Frage, wie man den Post Count abfragen könnte :)