Ich verwende seit einiger Zeit reCAPTCHA für meine Forum-Software und blockiere damit täglich etwa 50-100 Spambots:
[ externes Bild ]
Leider habe ich nur geringe Kenntnisse im Programmieren, daher habe ich ChatGPT um Hilfe gebeten. Auf meiner reCAPTCHA v3-Seite bei Google habe ich folgenden Hinweis erhalten, mit dem ich nicht viel anfangen kann:
"Wir haben festgestellt, dass Ihre Website keine reCAPTCHA-Tokens überprüft."
Die Antwort von ChatGPT lautet wie folgt, und ich habe keine Ahnung, ob das in phpBB korrekt eingefügt ist oder warum ich diese Meldung von Google erhalte. Bei dieser Option kann ich in der Administrationsoberfläche ja lediglich meinen Website- und geheimen Schlüssel eintragen.
ChatGPT hat geschrieben:
Der Hinweis **"Wir haben festgestellt, dass Ihre Website keine reCAPTCHA-Tokens überprüft"** bedeutet, dass Sie zwar den reCAPTCHA v3 Code auf Ihrer Website eingebunden haben, **aber die Token, die vom reCAPTCHA-Client erzeugt werden, nicht auf Ihrem Server überprüft werden**. Google verlangt diese Überprüfung, um sicherzustellen, dass reCAPTCHA korrekt genutzt wird und Bots effektiv erkannt werden.
### Was bedeutet das konkret?
reCAPTCHA v3 funktioniert so:
1. **Auf Ihrer Webseite (Client-Seite)** wird das JavaScript von Google eingebunden.
2. Dieses Skript erstellt im Hintergrund ein **Token** (eine Art "Benutzerscore").
3. Dieses Token müssen **Sie auf Ihrem Server (Backend)** an Google schicken, um zu überprüfen, ob der Benutzer "vertrauenswürdig" ist.
Wenn Sie **nur Schritt 1 machen** und das Token **nicht prüfen**, dann sagt Google: "Wir sehen, dass du das System zwar eingebunden hast, aber nicht richtig verwendest."
---
### Was müssen Sie tun?
#### 1. Token vom Client einsammeln
Sie müssen das reCAPTCHA-Token per JavaScript erzeugen und zusammen mit dem Formular an Ihren Server schicken:
```html```Code: Alles auswählen
<script src="https://www.google.com/recaptcha/api.js?render=IHRE_SITE_KEY"></script> <script> grecaptcha.ready(function() { grecaptcha.execute('IHRE_SITE_KEY', {action: 'submit'}).then(function(token) { // Token an Ihr Formular anhängen document.getElementById('meinFormular').insertAdjacentHTML('beforeend', '<input type="hidden" name="g-recaptcha-response" value="' + token + '">'); }); }); </script>
#### 2. Token auf dem Server validieren
Auf Ihrem Server (z. B. in PHP, Python, Node.js etc.) müssen Sie dann das Token an Google schicken und die Antwort prüfen.
**Beispiel in PHP:**
```php```Code: Alles auswählen
$token = $_POST['g-recaptcha-response']; $secretKey = 'IHRE_GEHEIME_KEY'; $response = file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=$secretKey&response=$token"); $responseKeys = json_decode($response, true); if($responseKeys["success"] && $responseKeys["score"] >= 0.5) { // Gültig: Formular weiterverarbeiten } else { // Ungültig: ggf. blockieren oder Fehlermeldung anzeigen }
---
### Zusammengefasst:
* Der Hinweis bedeutet, dass Ihr Server die reCAPTCHA-Daten **nicht auswertet**.
* Sie müssen das **Token vom Client an den Server übergeben** und es dort **über die API von Google prüfen**.
* Wenn Sie das nicht tun, wird reCAPTCHA v3 **nicht vollständig oder gar nicht funktionieren**.