Ankündigung

Einklappen
Keine Ankündigung bisher.

Öffentlicher PHP-REST-Service vor Spam schützen

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

  • Öffentlicher PHP-REST-Service vor Spam schützen

    Hallo liebe PHP.de Community,

    Ich habe eine konkrete Fragestellung bei der ich einen guten Rat gebrauchen könnte. Es geht um eine REST-Schnittstelle, welche ich mit PHP geschrieben habe. Über diese Schnittstelle kann ein Benutzer sich per POST-Request für meine App (SPA) registrieren.

    Sobald ein Benutzer sich registriert hat, erzeuge ich beim Einloggen des Benutzers auf dem Server ein JWT (anhand von Username, Password und einem Server-Secret). Für nachfolgende REST-Services muss der Benutzer sich anhand des JWT eindeutig gegen den Server authentifizieren.

    Was ich jedoch noch bräuchte, wäre ein Konzept um Spam für die Registrierungs-Schnittstelle zu verhindern. Clientseitig kann ich hier beispielsweise Dinge wie Captchas oder Honeypots (hidden fields) in das Formular einbauen. Mein eigentliches Problem liegt aber serverseitig. Falls ein fähiger User valide POST-Requests auf meine REST-Schnittstelle produziert ist diese für Spam sehr anfällig. Die Datenbank würde hier relativ schnell mit "Fakeusern" gefüllt werden. Eine meiner Ideen wäre hier das Setzen einer SESSION-ID für eine bereits erfolgte Registrierung. Das löst jedoch das eigentliche Problem nicht.

    Vielleicht habt ihr da ja einen guten Rat für mich.

    Viele Grüße

    Markus


  • #2
    Vielleicht sollte man eine Registrierung via REST unterbinden, desswegen gibt es doch das Konzept mit User erstellt eine App, der User muss sich aber über das Formular registrieren
    apt-get install npm -> npm install -g bower -> bower install <package> YOLO https://www.paypal.me/BlackScorp

    Kommentar


    • #3
      Das einfachste ist meistens, dass du in der SPA einen Custom Header oder User-Agent verwendest. Und nur diesen für die public api zulässt. Klar hält es niemanden ab, deine Seite zu analysieren und entsprechend auch den Custom Header / UserAgent mitzuschicken, allerdings dürften die meisten Spam Bots dies nicht machen.

      Kommentar

      Lädt...
      X