Dieses Dokument enthält Beispiele für reCAPTCHA-Firewallrichtlinien, die Sie basierend auf der Implementierung der Features von reCAPTCHA WAF erstellen können.
Beispiel 1: Eine reCAPTCHA-Firewallrichtlinie mit Aktionstoken
Sie können ein reCAPTCHA-Aktionstoken hinzufügen, um eine Nutzeraktion wie die Anmeldung zu schützen. Damit das reCAPTCHA-Cookie ausgegeben wird, wenn der Nutzer die Anmeldeaktion initiiert, binden Sie das reCAPTCHA-Aktionstoken-Skript auf der Startseite ein.
Erstellen Sie eine reCAPTCHA-Firewallrichtlinie mit den folgenden Regeln:
- Der Pfad, in dem die Regel angewendet werden muss. In diesem Fall ist das
login.php
. - Wenn das Aktionsnamenattribut des Aktionstokens nicht mit der geschützten Nutzeraktion übereinstimmt oder der Wert kleiner oder gleich 0,1 ist, wird der Zugriff blockiert.
gcloud recaptcha firewall-policies create \
--description="example1 policy" \
--path="/login.php" \
--condition="recaptcha.token.action != "login" || recaptcha.score <= 0.1" \
--actions="block"
Die folgende Abbildung zeigt einen Workflow, der das reCAPTCHA-Aktionstoken-Feature und die entsprechende reCAPTCHA-Firewallrichtlinie verwendet:
Beispiel 2: Eine reCAPTCHA-Firewallrichtlinie mit Sitzungstoken
Sie können ein reCAPTCHA-Sitzungstoken auf Seiten hinzufügen, auf die ein Nutzer zugreifen könnte, damit das Cookie regelmäßig aktualisiert wird, z. B. auf einer Zahlungsseite. Binden Sie das reCAPTCHA-Sitzungstokenskript ein, damit das reCAPTCHA-Cookie im Anwendungs-Backend ausgegeben und aktualisiert wird, bevor ein Nutzer die Zahlungsseite aufruft. Binden Sie auf der Zahlungsseite das reCAPTCHA-Sitzungstoken-Skript ein, damit das reCAPTCHA-Cookie im Anwendungs-Back-End ausgegeben und aktualisiert wird, um zu verhindern, dass das Cookie abläuft.
Erstellen Sie eine reCAPTCHA-Firewallrichtlinie mit der folgenden Regel:
- Der Pfad, in dem die Regel angewendet werden muss. In diesem Fall ist das
checkout.html
. - Wenn der Wert kleiner oder gleich 0,1 ist, wird der Zugriff blockiert.
gcloud recaptcha firewall-policies create \
--description="example2 policy" \
--path="/checkout.html" \
--condition="recaptcha.score <=0.1" \
--actions="block"
Die folgende Abbildung zeigt einen Workflow, der das reCAPTCHA-Sitzungstoken-Feature und die entsprechende reCAPTCHA-Firewallrichtlinie verwendet:
Beispiel 3: Eine reCAPTCHA-Firewallrichtlinie mit Aufgabenseite
Du kannst die Funktion für reCAPTCHA-Herausforderungen hinzufügen, wenn der Nutzer auf eine Interstitial-Seite weitergeleitet werden soll, auf der ermittelt wird, ob die Nutzeranfrage potenziell betrügerisch oder legitim ist.
Erstellen Sie für die Seiten, die Sie schützen möchten, reCAPTCHA-Firewallrichtlinien-Regeln, um den Nutzer auf die Aufgabenseite weiterzuleiten:
- Wenn das Token für die geschützte Seite ungültig ist, wird der Nutzer zur Seite der Identitätsbestätigung weitergeleitet. In diesem Fall ist das
index.html
. Wenn der Wert kleiner oder gleich 0,1 ist, wird der Nutzer auf die Fehlerseite weitergeleitet.
gcloud recaptcha firewall-policies create \ --description="example3 policy" \ --path="/index.html" --condition="!recaptcha.token.valid" --actions="redirect" \ --path="/index.html" --condition="recaptcha.score <= 0.1" --actions="substitute { path: /bot_error }"
Die folgende Abbildung zeigt einen Workflow, der die Funktion für die reCAPTCHA-Abfrageseite und die entsprechenden reCAPTCHA-Firewallrichtlinien verwendet:
Beispiel 4: Eine reCAPTCHA-Firewallrichtlinie mit Aktionstoken und Herausforderungsseite
Sie können mehr als ein Feature von reCAPTCHA WAF verwenden, wenn Sie unterschiedliche Schutzniveaus auf verschiedenen Webseiten verwenden möchten. Sie können beispielsweise das Aktions- oder Sitzungstoken-Feature auf einer Seite verwenden, um den eingehenden Traffic anhand der reCAPTCHA-Werte zu bewerten, und die Funktion für die Herausforderungsseite auf einer Seite verwenden, auf der Sie sicherstellen möchten, dass der Nutzer kein Bot ist.
Sie können ein reCAPTCHA-Aktionstoken hinzufügen, um eine Nutzeraktion wie die Anmeldung zu schützen. Damit das reCAPTCHA-Cookie ausgegeben wird, wenn der Nutzer die Anmeldeaktion initiiert, binden Sie das reCAPTCHA-Aktionstoken-Skript auf der Seite vor der geschützten Anmeldeaktion ein. Zum Beispiel die Startseite. Wenn Sie den Nutzer auf der Downloadseite zur Challenge-Seite weiterleiten möchten, verwenden Sie die reCAPTCHA-Firewallrichtlinienregel.
Erstellen Sie eine reCAPTCHA-Firewallrichtlinie mit den folgenden Regeln:
- Der Pfad, in dem die Regel angewendet werden muss. In diesem Fall ist das
login.php
. - Wenn das Attribut des Aktionsnamens des Aktionstokens nicht mit der geschützten Nutzeraktion übereinstimmt, der Bewertungstyp nicht
ACTION
ist oder der Wert kleiner oder gleich 0,1 ist, wird der Zugriff blockiert. - Wenn Sie den Nutzer auf die Abfrageseite weiterleiten möchten, wenn er Inhalte herunterladen möchte, fügen Sie eine Firewallrichtlinien-Regel hinzu.
- Wenn die Punktzahl kleiner oder gleich 0,1 ist oder der Bewertungstyp nicht
CHALLENGEPAGE
ist, wird der Nutzer auf die Fehlerseite weitergeleitet.
gcloud recaptcha firewall-policies create --description="example4 policy"
--path="/login.php" --condition="recaptcha.token.action != "login" || recaptcha.assessment_type != AssessmentType.ACTION || recaptcha.score <= 0.1" --actions="block"
--path="/content/example.pdf" --condition="recaptcha.assessment_type != AssessmentType.CHALLENGEPAGE" --actions="redirect"
--path="/content/example.pdf" --condition="recaptcha.score <= 0.1 || recaptcha.assessment_type != AssessmentType.CHALLENGEPAGE" --actions="substitute { path: /bot_error }"
Die folgende Abbildung zeigt einen Workflow, der Funktionen für reCAPTCHA-Aktionstokens und reCAPTCHA-Herausforderungen sowie die entsprechenden reCAPTCHA-Firewallrichtlinien verwendet:
Beispiel 5: Eine reCAPTCHA-Firewallrichtlinie mit WAF-Express-Schutz und Seite zur Identitätsbestätigung
Sie können das Schutzfeature von reCAPTCHA WAF Express hinzufügen, wenn Sie die Nutzerinteraktion ohne Beeinträchtigung der Nutzer bewerten und die Nutzer dann zur Challenge-Seite weiterleiten möchten, wenn die Punktzahl niedrig ist. Wenn Sie beispielsweise Daten-Scraping verhindern möchten, sollten Sie den Traffic zu einer Katalogseite blockieren.
Erstellen Sie eine reCAPTCHA-Firewallrichtlinie mit der folgenden Regel:
- Der Pfad, in dem die Regel angewendet werden muss.
- Wenn der Wert kleiner oder gleich 0,3 ist, leiten Sie den Nutzer zur Challenge-Seite weiter.
Im folgenden Beispiel wird eine reCAPTCHA-Firewallrichtlinie erstellt, um das Traffic-Targeting für /catalog1/itemlist.html
weiterzuleiten, wenn der Wert unter 0,3 liegt.
gcloud recaptcha firewall-policies create \
--description="example5 policy" \
--path="/catalog1/itemlist.html" \
--condition="recaptcha.score <= 3" \
--actions="redirect"