In Google Cloud Armor für Websites einbinden

In diesem Dokument erfahren Sie, wie Sie reCAPTCHA Enterprise for WAF in Google Cloud Armor auf Websites einbinden.

Zum Abschließen der Integration müssen Sie ein oder mehrere Features von reCAPTCHA Enterprise for WAF implementieren und Google Cloud Armor-Sicherheitsrichtlinien konfigurieren.

Hinweise

  1. Aktivieren Sie die reCAPTCHA Enterprise API.

    Aktivieren Sie die API

  2. Planen Sie, wie Sie die Features von reCAPTCHA Enterprise for WAF zum Schutz Ihrer Website implementieren möchten.

    1. Wählen Sie mindestens ein WAF-Feature aus, das Ihrem Anwendungsfall am besten entspricht.
    2. Ermitteln Sie die Seiten, die Sie schützen möchten, und den Typ der WAF-Funktion, die Sie auf diesen Seiten implementieren möchten.

Features von reCAPTCHA Enterprise for WAF implementieren

Je nach Ihren Anforderungen können Sie ein oder mehrere Features von reCAPTCHA Enterprise for WAF in einer einzelnen Anwendung verwenden.

Wenn Sie mehr als ein Feature verwenden möchten, müssen Sie für jede dieser Funktionen einen reCAPTCHA-Schlüssel erstellen und in Ihrer Anwendung verwenden. Wenn Sie beispielsweise reCAPTCHA-Aktionstokens und reCAPTCHA-Abfrageseiten verwenden möchten, müssen Sie einen Aktionstokenschlüssel und einen Schlüssel für die Identitätsseite erstellen und diese in Ihrer Anwendung verwenden.

reCAPTCHA-Aktionstokens implementieren

Auf Ihren Webseiten muss reCAPTCHA Enterprise ausgeführt werden, um Aktionstokens zu generieren. Nachdem reCAPTCHA Enterprise ein Aktionstoken generiert hat, hängen Sie das Aktionstoken an einen vordefinierten Anfrageheader an, wo Sie eine Nutzeraktion schützen müssen, z. B. checkout. Standardmäßig sind Aktionstokens 30 Minuten lang gültig, können aber je nach Traffic variieren. Sie müssen das Aktionstoken an einen vordefinierten Anfrageheader anhängen, bevor das Token abläuft, damit Google Cloud Armor die Tokenattribute auswerten kann.

So implementieren Sie ein reCAPTCHA-Aktionstoken:

  1. Erstellen Sie einen Aktionstokenschlüssel für Ihre Website.

    Console

    1. Rufen Sie in der Google Cloud Console die Seite reCAPTCHA Enterprise auf.

      Zur Seite „reCAPTCHA Enterprise“

    2. Prüfen Sie, ob der Name Ihres Projekts in der Ressourcenauswahl oben auf der Seite angezeigt wird.

      Wenn Sie den Namen Ihres Projekts nicht sehen, klicken Sie auf die Ressourcenauswahl und wählen Sie Ihr Projekt aus.

    3. Klicken Sie auf Schlüssel erstellen.

    4. Geben Sie im Feld Anzeigename einen Anzeigenamen für den Schlüssel ein.
    5. Führen Sie je nach Plattform, für die Sie reCAPTCHA-Schlüssel für WAF erstellen möchten, die entsprechende Aktion aus:
      1. Wählen Sie im Menü Plattformtyp auswählen die Option Website aus.

        Der Abschnitt Domainliste wird angezeigt.

      2. Geben Sie den Domainnamen für Ihre Website ein:

        1. Klicken Sie im Abschnitt Domainliste auf Domain hinzufügen.

        2. Geben Sie im Feld Domain den Namen Ihrer Domain ein.
        3. Optional: Klicken Sie zum Hinzufügen einer zusätzlichen Domain auf Domain hinzufügen und geben Sie den Namen einer anderen Domain in das Feld Domain ein. Sie können bis zu 250 Domains hinzufügen.

          Bei Websites gilt der reCAPTCHA-Schlüssel nur für die von Ihnen angegebenen Domains und Subdomains. Sie können mehrere Domains angeben, wenn Sie Ihre Website von mehreren Domains bereitstellen. Wenn Sie eine Domain angeben (z. B. examplepetstore.com), müssen Sie ihre Subdomains nicht angeben (z. B. subdomain.examplepetstore.com).

      3. Maximieren Sie den Bereich Web Application Firewall (WAF), Domainbestätigung, AMP-Seiten und Herausforderung.
      4. Aktivieren Sie die Ein/Aus-Schaltfläche Web Application Firewall (WAF).
      5. Wählen Sie im Menü Funktion die Option Aktionstoken aus.

      6. Optional: Aktivieren Sie Kästchen-Herausforderung verwenden.

      7. Klicken Sie auf Schlüssel erstellen.
      8. Der neu erstellte Schlüssel wird auf der Seite reCAPTCHA-Schlüssel aufgeführt.

    gcloud

    Verwenden Sie zum Erstellen von reCAPTCHA-Schlüsseln den Befehl gcloud remarketingtcha keys create.

    Bevor Sie die folgenden Befehlsdaten verwenden, ersetzen Sie die folgenden Werte:

    • DISPLAY_NAME: Name für den Schlüssel. In der Regel ein Websitename.
    • INTEGRATION_TYPE: Art der Integration. Geben Sie score oder checkbox an.
    • DOMAIN_NAME: Domains oder Subdomains von Websites, die den Schlüssel verwenden dürfen.

      Geben Sie mehrere Domains als durch Kommas getrennte Liste an. Optional: Geben Sie --allow-all-domains an, um die Domainbestätigung zu deaktivieren.

      Das Deaktivieren der Domainbestätigung stellt ein Sicherheitsrisiko dar, da es keine Einschränkungen für die Website gibt, sodass jeder Nutzer auf Ihren reCAPTCHA-Schlüssel zugreifen und ihn verwenden kann.

    • WAF_FEATURE: Name des WAF-Features. Geben Sie action-token an.
    • WAF_SERVICE: Name des WAF-Dienstanbieters. Geben Sie CA für Google Cloud Armor an.

    Führen Sie den Befehl gcloud remarketingtcha keys create aus:

    Linux, macOS oder Cloud Shell

    
    gcloud recaptcha keys create \
    --web \
    --display-name=DISPLAY_NAME  \
    --integration-type=INTEGRATION_TYPE \
    --domains=DOMAIN_NAME \
    --waf-feature=WAF_FEATURE \
    --waf-service=WAF_SERVICE
    
    

    Windows (PowerShell)

    
    gcloud recaptcha keys create `
    --web `
    --display-name=DISPLAY_NAME  `
    --integration-type=INTEGRATION_TYPE `
    --domains=DOMAIN_NAME `
    --waf-feature=WAF_FEATURE `
    --waf-service=WAF_SERVICE
    
    

    Windows (cmd.exe)

    
    gcloud recaptcha keys create ^
    --web ^
    --display-name=DISPLAY_NAME  ^
    --integration-type=INTEGRATION_TYPE ^
    --domains=DOMAIN_NAME ^
    --waf-feature=WAF_FEATURE ^
    --waf-service=WAF_SERVICE
    
    

    Die Antwort enthält den neu erstellten reCAPTCHA-Schlüssel.

    REST

    API-Referenzinformationen zu Schlüsseltypen und Integrationstypen finden Sie unter Schlüssel und Integrationstyp.

    Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

    • DISPLAY_NAME: Name für den Schlüssel. In der Regel ein Websitename.
    • INTEGRATION_TYPE: Art der Integration. Geben Sie score oder checkbox an.
    • DOMAIN_NAME: Domains oder Subdomains von Websites, die den Schlüssel verwenden dürfen.

      Geben Sie mehrere Domains als durch Kommas getrennte Liste an. Optional: Geben Sie --allow-all-domains an, um die Domainbestätigung zu deaktivieren.

      Das Deaktivieren der Domainbestätigung stellt ein Sicherheitsrisiko dar, da es keine Einschränkungen für die Website gibt, sodass jeder Nutzer auf Ihren reCAPTCHA-Schlüssel zugreifen und ihn verwenden kann.

    • WAF_FEATURE: Name des WAF-Features. Geben Sie action-token an.
    • WAF_SERVICE: Name des WAF-Dienstanbieters. Geben Sie CA für Google Cloud Armor an.

    HTTP-Methode und URL:

    POST https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys

    JSON-Text der Anfrage:

    
    {
      "displayName": "DISPLAY_NAME",
       'wafSettings': "  {
           "wafService": "WAF_SERVICE",
    "wafFeature": "WAF_FEATURE"
      }
      "webSettings": {
        "allowedDomains": "DOMAINS",
        "integrationType": "TYPE_OF_INTEGRATION"
       }
    }
    

    Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

    curl

    Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d @request.json \
    "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys"

    PowerShell

    Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method POST `
    -Headers $headers `
    -ContentType: "application/json; charset=utf-8" `
    -InFile request.json `
    -Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys" | Select-Object -Expand Content

    Sie sollten in etwa folgende JSON-Antwort erhalten:

    
    {
      "name": "projects/project-id/keys/7Ldqgs0UBBBBBIn4k7YxEB-LwEh5S9-Gv6QQIWB8m",
    "displayName": "DISPLAY_NAME,
    "webSettings": {
      "allowAllDomains": true,
      "allowedDomains": [
        "localhost"
      ],
    
     "integrationType": "SCORE",
    
    },
    "wafSettings": {
      "wafService": "CA",
      "wafFeature": "ACTION_TOKEN"
      
    }
    }
    
    

  2. Binden Sie reCAPTCHA-JavaScript mit dem von Ihnen erstellten Aktionstokenschlüssel in Ihre Webseiten ein. Eine Anleitung finden Sie im Dokument, das dem Integrationstyp Ihres Aktionstokenschlüssels entspricht.

  3. Nachdem Sie das Token von reCAPTCHA Enterprise erhalten haben, hängen Sie es an einen vordefinierten Anfrageheader im folgenden Format an:

     X-Recaptcha-Token: value-of-your-action-token
    

    Sie können Sprachen wie XHR, Ajax oder Fetch API verwenden, um das Token an einen vordefinierten Anfrageheader anzuhängen.

    Das folgende Beispielskript zeigt, wie Sie die Aktion execute schützen und das Token mithilfe von JavaScript + XHR an einen vordefinierten Anfrageheader anhängen:

      
      <script>
        src="https://www.google.com/recaptcha/enterprise.js?render=ACTION_TOKEN_KEY"></script>
    
        <script>
        function onSuccess(action_token) {
             const xhr = new XMLHttpRequest();
             xhr.open('GET','YOUR_URL', false);
             // Attach the action-token to the predefined request header
             xhr.setRequestHeader("X-Recaptcha-Token", action_token);
             xhr.send(null);
           }
           function onError(reason) {
             alert('Response promise rejected: ' + reason);
           grecaptcha.enterprise.ready(function () {
             document.getElementById("execute-button").onclick = () => {
               grecaptcha.enterprise.execute('ACTION_TOKEN_KEY', {
               }).then(onSuccess, onError);
             };
           });
          }
        </script>
      
      

reCAPTCHA-Sitzungstokens implementieren

Mit reCAPTCHA-JavaScript wird nach der Bewertung ein reCAPTCHA-Sitzungstoken als Cookie im Browser des Endnutzers festgelegt. Der Browser des Endnutzers hängt das Cookie an und aktualisiert es, solange das reCAPTCHA-JavaScript aktiv bleibt.

Um ein Sitzungstoken als Cookie bereitzustellen, installieren Sie einen Sitzungstokenschlüssel auf mindestens einer Ihrer Webseiten, die die folgenden Anforderungen erfüllen:

  • Die Webseite muss die Seite sein, die der Endnutzer aufruft, vor der Seite, die geschützt werden muss. Wenn Sie beispielsweise die Zahlungsseite schützen möchten, installieren Sie auf der Startseite oder Produktseite einen Sitzungstokenschlüssel.
  • Die Webseite wird durch eine Google Cloud Armor-Sicherheitsrichtlinie geschützt.

Sie können dieses Cookie verwenden, um nachfolgende Anfragen und Seitenladevorgänge des Endnutzers in einer bestimmten Domain zu schützen. Sitzungstokens sind standardmäßig 30 Minuten lang gültig. Wenn der Endnutzer jedoch auf der Seite bleibt, auf der Sie das Sitzungstoken implementiert haben, aktualisiert reCAPTCHA Enterprise das Sitzungstoken regelmäßig, um zu verhindern, dass es abläuft.

Installieren Sie Sitzungstokens auf jeder Seite, die durch reCAPTCHA Enterprise geschützt werden muss. Wir empfehlen, jede Seite mit reCAPTCHA Enterprise zu schützen und Google Cloud Armor-Regeln zu verwenden, um den Zugriff auf alle Seiten außer der ersten Seite zu erzwingen, die Endnutzer besuchen.

Hier sehen Sie ein Beispiel für ein reCAPTCHA-Sitzungstoken:
   recaptcha-ca-t=value-of-your-session-token;domain=domain;expires=expiration_time

So implementieren Sie ein reCAPTCHA-Sitzungstoken:

  1. Erstellen Sie einen Sitzungstokenschlüssel für Ihre Website.

    Console

    1. Rufen Sie in der Google Cloud Console die Seite reCAPTCHA Enterprise auf.

      Zur Seite „reCAPTCHA Enterprise“

    2. Prüfen Sie, ob der Name Ihres Projekts in der Ressourcenauswahl oben auf der Seite angezeigt wird.

      Wenn Sie den Namen Ihres Projekts nicht sehen, klicken Sie auf die Ressourcenauswahl und wählen Sie Ihr Projekt aus.

    3. Klicken Sie auf Schlüssel erstellen.

    4. Geben Sie im Feld Anzeigename einen Anzeigenamen für den Schlüssel ein.
    5. Führen Sie je nach Plattform, für die Sie reCAPTCHA-Schlüssel für WAF erstellen möchten, die entsprechende Aktion aus:
      1. Wählen Sie im Menü Plattformtyp auswählen die Option Website aus.

        Der Abschnitt Domainliste wird angezeigt.

      2. Geben Sie den Domainnamen für Ihre Website ein:

        1. Klicken Sie im Abschnitt Domainliste auf Domain hinzufügen.

        2. Geben Sie im Feld Domain den Namen Ihrer Domain ein.
        3. Optional: Klicken Sie zum Hinzufügen einer zusätzlichen Domain auf Domain hinzufügen und geben Sie den Namen einer anderen Domain in das Feld Domain ein. Sie können bis zu 250 Domains hinzufügen.

          Bei Websites gilt der reCAPTCHA-Schlüssel nur für die von Ihnen angegebenen Domains und Subdomains. Sie können mehrere Domains angeben, wenn Sie Ihre Website von mehreren Domains bereitstellen. Wenn Sie eine Domain angeben (z. B. examplepetstore.com), müssen Sie ihre Subdomains nicht angeben (z. B. subdomain.examplepetstore.com).

      3. Maximieren Sie den Bereich Web Application Firewall (WAF), Domainbestätigung, AMP-Seiten und Herausforderung.
      4. Aktivieren Sie die Ein/Aus-Schaltfläche Web Application Firewall (WAF).
      5. Wählen Sie im Menü Funktion die Option Sitzungstoken aus.

      6. Optional:Aktivieren Sie die Option Domainbestätigung deaktivieren.

        Das Deaktivieren der Domainbestätigung stellt ein Sicherheitsrisiko dar, da es keine Einschränkungen für die Website gibt, sodass jeder Nutzer auf Ihren reCAPTCHA-Schlüssel zugreifen und ihn verwenden kann.

      7. Klicken Sie auf Schlüssel erstellen.
      8. Der neu erstellte Schlüssel wird auf der Seite reCAPTCHA-Schlüssel aufgeführt.

    gcloud

    Verwenden Sie zum Erstellen von reCAPTCHA-Schlüsseln den Befehl gcloud remarketingtcha keys create.

    Bevor Sie die folgenden Befehlsdaten verwenden, ersetzen Sie die folgenden Werte:

    • DISPLAY_NAME: Name für den Schlüssel. In der Regel ein Websitename.
    • INTEGRATION_TYPE: Art der Integration. Geben Sie score an.
    • DOMAIN_NAME: Domains oder Subdomains von Websites, die den Schlüssel verwenden dürfen.

      Geben Sie mehrere Domains als durch Kommas getrennte Liste an. Optional: Geben Sie --allow-all-domains an, um die Domainbestätigung zu deaktivieren.

      Das Deaktivieren der Domainbestätigung stellt ein Sicherheitsrisiko dar, da es keine Einschränkungen für die Website gibt, sodass jeder Nutzer auf Ihren reCAPTCHA-Schlüssel zugreifen und ihn verwenden kann.

    • WAF_FEATURE: Name des WAF-Features. Geben Sie session-token an.
    • WAF_SERVICE: Name des WAF-Dienstanbieters. Geben Sie CA für Google Cloud Armor an.

    Führen Sie den Befehl gcloud remarketingtcha keys create aus:

    Linux, macOS oder Cloud Shell

    
    gcloud recaptcha keys create \
    --web \
    --display-name=DISPLAY_NAME  \
    --integration-type=INTEGRATION_TYPE \
    --domains=DOMAIN_NAME \
    --waf-feature=WAF_FEATURE \
    --waf-service=WAF_SERVICE
    
    

    Windows (PowerShell)

    
    gcloud recaptcha keys create `
    --web `
    --display-name=DISPLAY_NAME  `
    --integration-type=INTEGRATION_TYPE `
    --domains=DOMAIN_NAME `
    --waf-feature=WAF_FEATURE `
    --waf-service=WAF_SERVICE
    
    

    Windows (cmd.exe)

    
    gcloud recaptcha keys create ^
    --web ^
    --display-name=DISPLAY_NAME  ^
    --integration-type=INTEGRATION_TYPE ^
    --domains=DOMAIN_NAME ^
    --waf-feature=WAF_FEATURE ^
    --waf-service=WAF_SERVICE
    
    

    Die Antwort enthält den neu erstellten reCAPTCHA-Schlüssel.

    REST

    API-Referenzinformationen zu Schlüsseltypen und Integrationstypen finden Sie unter Schlüssel und Integrationstyp.

    Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

    • DISPLAY_NAME: Name für den Schlüssel. In der Regel ein Websitename.
    • INTEGRATION_TYPE: Art der Integration. Geben Sie score an.
    • DOMAIN_NAME: Domains oder Subdomains von Websites, die den Schlüssel verwenden dürfen.

      Geben Sie mehrere Domains als durch Kommas getrennte Liste an. Optional: Geben Sie --allow-all-domains an, um die Domainbestätigung zu deaktivieren.

      Das Deaktivieren der Domainbestätigung stellt ein Sicherheitsrisiko dar, da es keine Einschränkungen für die Website gibt, sodass jeder Nutzer auf Ihren reCAPTCHA-Schlüssel zugreifen und ihn verwenden kann.

    • WAF_FEATURE: Name des WAF-Features. Geben Sie session-token an.
    • WAF_SERVICE: Name des WAF-Dienstanbieters. Geben Sie CA für Google Cloud Armor an.

    HTTP-Methode und URL:

    POST https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys

    JSON-Text der Anfrage:

    
    {
      "displayName": "DISPLAY_NAME",
       'wafSettings': "  {
           "wafService": "WAF_SERVICE",
    "wafFeature": "WAF_FEATURE"
      }
      "webSettings": {
        "allowedDomains": "DOMAINS",
        "integrationType": "TYPE_OF_INTEGRATION"
       }
    }
    

    Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

    curl

    Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d @request.json \
    "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys"

    PowerShell

    Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method POST `
    -Headers $headers `
    -ContentType: "application/json; charset=utf-8" `
    -InFile request.json `
    -Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys" | Select-Object -Expand Content

    Sie sollten in etwa folgende JSON-Antwort erhalten:

    
    {
      "name": "projects/project-id/keys/7Ldqgs0UBBBBBIn4k7YxEB-LwEh5S9-Gv6QQIWB8m",
    "displayName": "DISPLAY_NAME,
    "webSettings": {
      "allowAllDomains": true,
      "allowedDomains": [
        "localhost"
      ],
    
     "integrationType": "SCORE",
    
    },
    "wafSettings": {
      "wafService": "CA",
      "wafFeature": "SESSION_TOKEN"
      
    }
    }
    
    

  2. Fügen Sie dem reCAPTCHA-JavaScript den Sitzungstokenschlüssel und waf=session hinzu.

    Das folgende Beispielskript zeigt, wie ein Sitzungs-Token auf einer Webseite implementiert wird:

    
    <!DOCTYPE html>
    <html lang="en">
    <head>
     <meta charset="UTF-8">
     <title>reCAPTCHA WAF Session Token</title>
     <script src="https://www.google.com/recaptcha/enterprise.js?render=SESSION_TOKEN_KEY&waf=session" async defer></script>
     <body></body>
    </head>
    </html>
    
    
    

Implement a reCAPTCHA challenge page

When you implement a reCAPTCHA challenge page, reCAPTCHA Enterprise redirects to an interstitial page where it determines if it's necessary to show a CAPTCHA challenge to a user. Therefore, CAPTCHA challenges might not be visible to all users.

To implement a reCAPTCHA challenge page, create a challenge-page key for your website.

Console

  1. In the Google Cloud console, go to the reCAPTCHA Enterprise page.

    Go to reCAPTCHA Enterprise

  2. Verify that the name of your project appears in the resource selector at the top of the page.

    If you don't see the name of your project, click the resource selector, then select your project.

  3. Click Create key.

  4. In the Display name field, enter a display name for the key.
  5. Depending on the platform for which you want to create reCAPTCHA keys for WAF, perform the appropriate action:
    1. From the Choose platform type menu, select Website.

    2. Expand the Web application firewall (WAF), Domain verification, AMP pages, and challenge section.
    3. Turn on the Web application firewall (WAF) toggle.
    4. From the Feature menu, select Challenge page.

    5. Turn on Disable domain verification.

      When you disable domain verification for challenge-page keys, Google Cloud Armor verifies the domain.

    6. Click Create key.
    7. The newly created key is listed on the reCAPTCHA keys page.

gcloud

To create reCAPTCHA keys, use the gcloud recaptcha keys create command.

Before using any of the command data below, make the following replacements:

  • DISPLAY_NAME: Name for the key. Typically a site name.
  • INTEGRATION_TYPE: Type of integration. Specify invisible.
  • DOMAIN_NAME: Domains or subdomains of websites allowed to use the key. Specify --allow-all-domains.
  • WAF_FEATURE: Name of the WAF feature. Specify challenge-page.
  • WAF_SERVICE: Name of the WAF service provider. Specify CA for Google Cloud Armor.

Execute the gcloud recaptcha keys create command:

Linux, macOS, or Cloud Shell


gcloud recaptcha keys create \
--web \
--display-name=DISPLAY_NAME  \
--integration-type=INTEGRATION_TYPE \
--domains=DOMAIN_NAME \
--waf-feature=WAF_FEATURE \
--waf-service=WAF_SERVICE

Windows (PowerShell)


gcloud recaptcha keys create `
--web `
--display-name=DISPLAY_NAME  `
--integration-type=INTEGRATION_TYPE `
--domains=DOMAIN_NAME `
--waf-feature=WAF_FEATURE `
--waf-service=WAF_SERVICE

Windows (cmd.exe)


gcloud recaptcha keys create ^
--web ^
--display-name=DISPLAY_NAME  ^
--integration-type=INTEGRATION_TYPE ^
--domains=DOMAIN_NAME ^
--waf-feature=WAF_FEATURE ^
--waf-service=WAF_SERVICE

Die Antwort enthält den neu erstellten reCAPTCHA-Schlüssel.

REST

API-Referenzinformationen zu Schlüsseltypen und Integrationstypen finden Sie unter Schlüssel und Integrationstyp.

Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

  • DISPLAY_NAME: Name für den Schlüssel. In der Regel ein Websitename.
  • INTEGRATION_TYPE: Art der Integration. Geben Sie invisible an.
  • DOMAIN_NAME: Domains oder Subdomains von Websites, die den Schlüssel verwenden dürfen. Geben Sie --allow-all-domains an.
  • WAF_FEATURE: Name des WAF-Features. Geben Sie challenge-page an.
  • WAF_SERVICE: Name des WAF-Dienstanbieters. Geben Sie CA für Google Cloud Armor an.

HTTP-Methode und URL:

POST https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys

JSON-Text der Anfrage:


{
  "displayName": "DISPLAY_NAME",
   'wafSettings': "  {
       "wafService": "WAF_SERVICE",
"wafFeature": "WAF_FEATURE"
  }
  "webSettings": {
    "allowedDomains": "DOMAINS",
    "integrationType": "TYPE_OF_INTEGRATION"
   }
}

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys"

PowerShell

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys" | Select-Object -Expand Content

Sie sollten in etwa folgende JSON-Antwort erhalten:


{
  "name": "projects/project-id/keys/7Ldqgs0UBBBBBIn4k7YxEB-LwEh5S9-Gv6QQIWB8m",
"displayName": "DISPLAY_NAME,
"webSettings": {
  "allowAllDomains": true,
  "allowedDomains": [
    "localhost"
  ],

  "integrationType": "INVISIBLE",
 
},
"wafSettings": {
  "wafService": "CA",
  "wafFeature": "CHALLENGE_PAGE"
  
}
}

Google Cloud Armor-Sicherheitsrichtlinien konfigurieren

Nachdem Sie die Features von reCAPTCHA Enterprise for WAF implementiert haben, müssen Sie Google Cloud Armor-Sicherheitsrichtlinien für die Bot-Verwaltung konfigurieren.

Wenn Sie eine reCAPTCHA-Herausforderungsseite implementiert haben, müssen Sie so vorgehen:

  1. Verknüpfen Sie den Schlüssel für die Identitätsbestätigung mit Ihrer Sicherheitsrichtlinie.
  2. Konfigurieren Sie eine Sicherheitsrichtlinienregel, um eine Anfrage für die reCAPTCHA Enterprise-Bewertung weiterzuleiten.

Wenn Sie reCAPTCHA-Aktionstoken oder -Sitzungstokens implementiert haben, müssen Sie eine Sicherheitsrichtlinienregel konfigurieren, die reCAPTCHA Enterprise-Tokens auswertet.

Machen Sie sich mit den reCAPTCHA-Tokenattributen für Google Cloud Armor vertraut, bevor Sie die Google Cloud Armor-Sicherheitsrichtlinien konfigurieren.

Informationen zum Konfigurieren von Google Cloud Armor-Sicherheitsrichtlinien und zum Verwenden der reCAPTCHA-Schlüssel für WAF mit Ihren Sicherheitsrichtlinien finden Sie unter Regeln für die Bot-Verwaltung konfigurieren.

Nächste Schritte