Panoramica della gestione dei bot di Google Cloud Armor

Google Cloud Armor e reCAPTCHA Enterprise forniscono strumenti per aiutarti a valutare e gestire le richieste in arrivo che potrebbero provenire da client automatici.

reCAPTCHA Enterprise utilizza tecniche avanzate di analisi del rischio per distinguere gli utenti umani da quelli automatizzati. reCAPTCHA Enterprise valuta l'utente in base alla configurazione delle chiavi di sito reCAPTCHA WAF. Dopodiché invia un token criptato con attributi che rappresentano il rischio associato. Google Cloud Armor cripta questo token in linea, senza alcuna richiesta/risposta aggiuntiva al servizio reCAPTCHA Enterprise. In base agli attributi dei token, Google Cloud Armor consente di negare, limitare la frequenza o reindirizzare le richieste in entrata. Per ulteriori informazioni, consulta la panoramica dell'integrazione di Google Cloud Armor e reCAPTCHA Enterprise.

La gestione dei bot di Google Cloud Armor include le seguenti funzionalità integrate.

  • Test manuale (pagina di verifica reCAPTCHA)
    • Puoi consentire solo gli utenti finali che superano la verifica manuale di reCAPTCHA Enterprise reindirizzando gli utenti finali alla valutazione di reCAPTCHA Enterprise.
    • Ti consigliamo di creare la tua chiave di sito reCAPTCHA WAF e di associarla al tuo criterio di sicurezza. Per maggiori informazioni, consulta la pagina Implementare una verifica reCAPTCHA.
    • Devi configurare una regola del criterio di sicurezza per reindirizzare una richiesta di valutazione del reCAPTCHA Enterprise.
  • Applica la valutazione senza problemi di reCAPTCHA Enterprise
    • Puoi intraprendere diverse azioni sulle richieste in entrata in base alla valutazione di reCAPTCHA Enterprise con il rischio che la richiesta provenga da un bot. Puoi scrivere regole di criteri di sicurezza per valutare e filtrare il traffico in base al punteggio del token e ad altri attributi del token.
    • La valutazione dei criteri di sicurezza di Google Cloud Armor avviene a livello perimetrale della rete Google, quindi i tuoi backend non sono coinvolti nella decifrazione del token.
    • Prima di implementare reCAPTCHA Enterprise, devi scegliere se utilizzare i token di azione o i token di sessione reCAPTCHA Enterprise e quindi creare la tua chiave di sito reCAPTCHA WAF. Per ulteriori informazioni, consulta Implementare i token di azione reCAPTCHA e Implementare i token di sessione reCAPTCHA.
    • Devi configurare una regola del criterio di sicurezza che valuti i token reCAPTCHA Enterprise.

La gestione dei bot di Google Cloud Armor include anche le seguenti funzionalità.

  • Reindirizzamento (302)
    • Puoi reindirizzare le richieste al tuo URL alternativo configurato configurando Google Cloud Armor per pubblicare una risposta HTTP 302 al client.
  • Decora la richiesta
    • Prima di eseguire il proxy delle richieste ai tuoi backend, puoi inserire intestazioni personalizzate e valori statici al loro interno.

Casi d'uso

Questa sezione descrive come utilizzare le funzionalità di gestione dei bot di Google Cloud Armor per ridurre il rischio di bot e controllare l'accesso dai client automatizzati.

Utilizza una verifica manuale per distinguere gli utenti legittimi dai clienti automatici

Puoi reindirizzare una richiesta a reCAPTCHA Enterprise per valutare il client finale e pubblicare sfide manuali, se necessario, senza alcuna implementazione aggiuntiva di reCAPTCHA Enterprise. Quando gli utenti umani condividono la stessa firma (ad esempio percorsi degli URL o altre firme L7) di un bot o di un sistema illecito, questa azione consente loro di dimostrare di essere persone. Solo gli utenti che superano il test possono ottenere l'accesso al tuo servizio.

Il seguente diagramma mostra in che modo una verifica manuale distingue se una richiesta proviene da un client umano o da un client automatico:

Esempio di reindirizzamento a reCAPTCHA.
Esempio di reindirizzamento a reCAPTCHA (fai clic per ingrandire)

Supponiamo che un utente Maya e un bot stiano navigando nella pagina di accesso (/login.html) sul tuo sito. Per consentire l'accesso a Maya senza concedere l'accesso al bot, puoi configurare una regola del criterio di sicurezza con l'espressione di corrispondenza avanzata request.path.matches("/login.html"), con un'azione redirect di tipo GOOGLE_RECAPTCHA. L'esperienza utente end-to-end è la seguente:

  1. Un utente finale visita il tuo sito per la prima volta.
  2. Google Cloud Armor valuta la richiesta e decide di reindirizzarla a reCAPTCHA Enterprise.
  3. reCAPTCHA Enterprise risponde con una pagina HTML con il codice JavaScript Enterprise reCAPTCHA incorporato.
  4. Quando viene visualizzata la risposta, il codice JavaScript incorporato viene eseguito per valutare l'utente e, se necessario, pubblica sfide manuali.
    • Se l'utente supera il test, reCAPTCHA Enterprise emette un cookie di esenzione che viene collegato automaticamente dal browser a ogni richiesta successiva allo stesso sito fino alla scadenza del cookie.
    • In caso contrario, reCAPTCHA Enterprise non emette un cookie di esenzione.

In questo esempio, solo Maya supera la valutazione reCAPTCHA Enterprise e riceve un cookie di esenzione, ottenendo l'accesso al tuo sito.

Quando utilizzi le verifiche manuali, ti consigliamo di creare la tua chiave di sito WAF reCAPTCHA e di associarla al criterio di sicurezza. Questo ti consente di visualizzare le metriche reCAPTCHA Enterprise associate alla chiave del sito e addestrare un modello di sicurezza specifico della chiave del sito. Per ulteriori informazioni, consulta la sezione Creare una chiave del sito per la verifica WAF reCAPTCHA.

Se non crei e associ una chiave di sito, durante il test reCAPTCHA Enterprise utilizza una chiave di sito gestita da Google. Non puoi visualizzare le metriche reCAPTCHA associate alle chiavi del sito che non sono di tua proprietà, incluse le chiavi del sito gestite da Google.

Applica valutazione reCAPTCHA Enterprise

Quando è presente un token reCAPTCHA Enterprise collegato a una richiesta in entrata, Google Cloud Armor valuta la richiesta e applica l'azione configurata in base ai singoli attributi nel token.

Token reCAPTCHA Enterprise

reCAPTCHA Enterprise emette due tipi di token: token di azione e token di sessione. Entrambi i tipi di token restituiscono un punteggio per ogni richiesta in base alle interazioni con il tuo sito. Entrambi i tipi di token contengono attributi, incluso un punteggio che rappresenta il rischio associato all'utente.

Prima di configurare le regole dei criteri di sicurezza, devi decidere se utilizzare i token di azione, di sessione o di entrambi. Consigliamo di leggere la documentazione di reCAPTCHA Enterprise per prendere una decisione. Per ulteriori informazioni, consulta il confronto casi d'uso di reCAPTCHA Enterprise.

Dopo aver deciso il tipo di token che vuoi utilizzare, implementi reCAPTCHA Enterprise affinché il token venga associato a una richiesta. Per informazioni sull'implementazione dei token in Enterprise Enterprise, consulta le sezioni Implementare i token delle azioni di reCAPTCHA Enterprise e Implementare i token di sessione di reCAPTCHA Enterprise.

Infine, utilizza il linguaggio delle regole di Google Cloud Armor per configurare le regole dei criteri di sicurezza per valutare i token reCAPTCHA Enterprise allegati alla richiesta.

La figura seguente mostra il flusso di applicazione dei token di reCAPTCHA Enterprise.

Flusso di applicazione dei token reCAPTCHA.
Flusso di applicazione dei token reCAPTCHA (fai clic per ingrandire)

Reindirizzamento (risposta 302)

Puoi utilizzare un'azione di reindirizzamento basata su URL per reindirizzare le richieste a un endpoint diverso. Tu fornisci una destinazione di reindirizzamento sotto forma di URL e Google Cloud Armor reindirizza la richiesta pubblicando una risposta HTTP 302 al client.

Decora richiesta

Google Cloud Armor può inserire intestazioni di richiesta personalizzate con valori definiti dall'utente statici prima di eseguire il proxy delle richieste all'applicazione. Questa opzione consente di codificare le richieste sospette per l'elaborazione alternativa a valle, ad esempio la pubblicazione di un vaso di miele o l'esecuzione di ulteriori analisi e monitoraggio. Tieni presente che questo parametro di azione deve essere aggiunto a un'azione allow esistente.

Inoltre, se scegli un nome di intestazione già esistente nella richiesta, incluse le intestazioni HTTP standard, il valore originale dell'intestazione verrà sovrascritto dal valore definito dall'utente fornito alla regola di Google Cloud Armor.

Eseguire l'integrazione con la limitazione di frequenza

Le regole di limitazione della frequenza di Google Cloud Armor sono compatibili con le funzionalità di gestione dei bot. Ad esempio, puoi reindirizzare una richiesta per la valutazione reCAPTCHA Enterprise o reindirizzare a un URL diverso quando il numero di richieste supera la soglia configurata. Inoltre, puoi identificare i client per la limitazione di frequenza basata su cookie o token di esenzione reCAPTCHA Enterprise, per limitare le richieste o escludere i client che riutilizzano o utilizzano in modo illecito lo stesso cookie o token a una frequenza superiore alla soglia configurata dall'utente.

Cookie o token di esenzione reCAPTCHA per la limitazione di frequenza

Per motivi di sicurezza, ti consigliamo di configurare le regole di limitazione della frequenza per impedire l'uso illecito del token tramite più utilizzi per ogni token di azione, token di sessione o azione reCAPTCHA univoco. La tabella seguente illustra come identificare un cookie o un token di esenzione reCAPTCHA Enterprise come chiave in una regola di limitazione della frequenza.

Risorsa enforce_on_key enforce_on_key_name
Cookie di esenzione HTTP-COOKIE recaptcha-ca-e
Token azione HTTP-HEADER X-Recaptcha-Token
Token sessione HTTP-COOKIE recaptcha-ca-t

Puoi limitare le richieste o escludere i client che dipendono dallo stesso cookie o token di esenzione che superano la soglia configurata. Per ulteriori informazioni sui parametri di limitazione della frequenza, consulta l'articolo Applicare la limitazione di frequenza.

Esempi di limitazione della frequenza

Innanzitutto, supponi di utilizzare le verifiche manuali solo su URL selezionati (/login.html, ad esempio) sul tuo sito. A tale scopo, configura le regole dei criteri di sicurezza come segue:

  • Regola 1: se alla richiesta è collegato un cookie di esenzione valido e il numero di utilizzi del cookie di esenzione è inferiore alla soglia definita, consenti la richiesta.
  • Regola 2: reindirizza la richiesta di valutazione di reCAPTCHA Enterprise.
Esempio di reindirizzamento reCAPTCHA Enterprise.
Applica sfide manuali (fai clic per ingrandire)

In secondo luogo, supponiamo che sul tuo sito utilizzi solo token di azione e/o token di sessione. Ad esempio, potresti utilizzare i token di azione per proteggere le azioni degli utenti di alto profilo, come /login.html. A tale scopo, esegui le azioni basate sul punteggio del token dell'azione, come indicato di seguito:

  • Regola 1: quando il punteggio del token di azione è superiore a una soglia predefinita (ad esempio 0.8), consenti la richiesta se il numero di utilizzi del token di azione è inferiore alla soglia definita.
  • Regola 2: rifiuta la richiesta.
Esempio di azione reCAPTCHA Enterprise.
Applica la valutazione del token di azione di reCAPTCHA Enterprise (fai clic per ingrandire)

Puoi configurare regole di criteri di sicurezza simili per applicare la valutazione dei token di sessione reCAPTCHA Enterprise.

Infine, supponi di combinare i token di azione o i token di sessione con le verifiche manuali sugli URL selezionati (come /login.html) sul tuo sito e di voler eseguire azioni basate sul punteggio del token di azione. E vuoi dare all'utente una seconda possibilità risolvendo le sfide se il punteggio non è abbastanza soddisfacente. A tale scopo, configura le regole del criterio di sicurezza come segue:

  • Regola 1: quando il punteggio del token di azione è superiore a una soglia predefinita (ad esempio 0.8), consenti la richiesta se il numero di utilizzi del token di azione è inferiore alla soglia definita.
  • Regole 2 e 3: quando il punteggio del token di azione è superiore a una soglia diversa diversa (ad esempio 0.5), reindirizza la richiesta di valutazione del reCAPTCHA Enterprise a meno che alla richiesta non sia collegato un cookie di esenzione valido e il numero di utilizzi del cookie di esenzione sia inferiore alla soglia definita.
  • Regola 4: rifiuta la richiesta.
Esempio di azione e reindirizzamento reCAPTCHA Enterprise.
Applica la valutazione del token di azione di reCAPTCHA Enterprise con verifiche manuali (fai clic per ingrandire)

Puoi configurare regole simili per i criteri di sicurezza per applicare la valutazione dei token di sessione reCAPTCHA Enterprise con verifiche manuali.

Se non configuri le regole di limitazione della frequenza come riportato sopra, Google Cloud Armor non impone alcun limite al numero di utilizzi per ciascun cookie di esenzione reCAPTCHA, token azione e token sessione. Per i token di azione, consigliamo di utilizzare una soglia minima (ad esempio 1) e un intervallo di tempo elevato (30 minuti, ad esempio poiché i token di azione sono validi per 30 minuti). Ti consigliamo di ricavare la soglia in base alle tue statistiche sul traffico.

Limitazioni

  • La gestione dei bot di Google Cloud Armor non supporta la modalità operativa del bilanciatore del carico HTTP(S) esterno globale. Per configurare la gestione dei bot con un bilanciatore del carico HTTP(S), utilizza il bilanciatore del carico HTTP(S) esterno globale (classico). Per ulteriori informazioni, consulta la sezione Modalità di funzionamento.

Passaggi successivi