Questo documento fornisce i passaggi di configurazione per il deployment automatico delle regole suggerite generate da Adaptive Protection. Per attivare il deployment automatico delle regole, devi creare una regola segnaposto con i seguenti valori:
- Espressione di corrispondenza:
evaluateAdaptiveProtectionAutoDeploy()
- Azione: qualsiasi
- Priorità: qualsiasi. Ti consigliamo di impostare una regola di autorizzazione esplicita con una priorità più elevata rispetto alle altre regole per il traffico legittimo e ad alta priorità.
Se utilizzi un proxy upstream davanti al bilanciatore del carico delle applicazioni esterno, ad esempio una CDN di terze parti, puoi configurare la regola segnaposto in modo che corrisponda alle richieste in base all'indirizzo IP del client originale da una o più intestazioni specificate. Per utilizzare
questa funzionalità di anteprima, configura l'opzione userIpRequestHeaders[]
nel
campo advancedOptionsConfig
. Per saperne di più, consulta il riferimento alla risorsa
ComputeSecurityPolicy.
Esempio di regole per i segnaposto
I seguenti comandi sono regole segnaposto di esempio per le norme di sicurezza
chiamate POLICY_NAME
, ognuna delle quali presenta un'azione di regola diversa.
Puoi aggiungere queste regole a un criterio di sicurezza esistente o crearne uno nuovo. Per
ulteriori informazioni sulla creazione di criteri di sicurezza, consulta
Configura i criteri di sicurezza di Google Cloud Armor.
Bloccare il traffico dannoso
Questa regola di esempio restituisce true
per le richieste che Adaptive Protection
identifica come traffico di attacco. Google Cloud Armor applica l'azione di blocco
alla richiesta di attacco:
gcloud compute security-policies rules create 1000 \ --security-policy POLICY_NAME \ --expression "evaluateAdaptiveProtectionAutoDeploy()" \ --action deny-403
Reindirizzare il traffico dannoso a un test reCAPTCHA
Questa regola di esempio reindirizza il traffico che Adaptive Protection identifica come dannoso a una verifica reCAPTCHA:
gcloud compute security-policies rules create 1000 \ --security-policy POLICY_NAME \ --expression "evaluateAdaptiveProtectionAutoDeploy()" \ --action redirect \ --redirect-type google-recaptcha
Limitare la frequenza del traffico dannoso
Questo esempio applica la limitazione di frequenza di Google Cloud Armor al traffico che Adaptive Protection identifica come dannoso:
gcloud compute security-policies rules create 1000 \ --security-policy POLICY_NAME \ --expression "evaluateAdaptiveProtectionAutoDeploy()" \ --action throttle \ --rate-limit-threshold-count 500 \ --rate-limit-threshold-interval-sec 120 \ --conform-action allow \ --exceed-action deny-404 \ --enforce-on-key ip
Configurare i parametri di deployment automatico di Adaptive Protection
Puoi configurare le soglie per il deployment automatico delle regole modificando i seguenti parametri. Se non imposti il valore di un parametro, Google Cloud Armor utilizza il valore predefinito.
Soglia di carico: durante un attacco segnalato, Adaptive Protection identifica nuovi utenti malintenzionati solo quando il carico sul servizio di backend sottoposto ad attacco supera questa soglia. Inoltre, le regole vengono implementate automaticamente solo per gli avvisi quando il carico sul servizio di backend sottoposto ad attacco supera questa soglia.
Valore predefinito:
0.8
Soglia di confidenza: le regole vengono implementate automaticamente solo per gli avvisi relativi a potenziali attacchi con punteggi di confidenza superiori a questa soglia.
- Valore predefinito:
0.5
- Valore predefinito:
Soglia di riferimento interessata: le regole vengono implementate automaticamente solo quando l'impatto stimato sul traffico di riferimento della mitigazione suggerita è inferiore a questa soglia.
impactedBaselineProportion
eimpactedbaselinePolicyProportion
devono essere inferiori alla soglia di riferimento interessata.- Valore predefinito:
0.01
percento (0,01%, non 1%)
- Valore predefinito:
Scadenza impostata: Google Cloud Armor smette di applicare l'azione nella regola di deployment automatico a un utente malintenzionato identificato dopo questa durata. La regola continua a operare in base alle nuove richieste.
- Valore predefinito:
7200
secondi
- Valore predefinito:
Puoi utilizzare il seguente comando di esempio per aggiornare la tua norma di sicurezza in modo da utilizzare
soglie non predefinite e distribuite automaticamente. Sostituisci NAME
con
il nome del tuo criterio di sicurezza e sostituisci le variabili rimanenti con i
valori che vuoi per il criterio.
gcloud beta compute security-policies update NAME [ --layer7-ddos-defense-auto-deploy-load-threshold LOAD_THRESHOLD --layer7-ddos-defense-auto-deploy-confidence-threshold CONFIDENCE_THRESHOLD --layer7-ddos-defense-auto-deploy-impacted-baseline-threshold IMPACTED_BASELINE_THRESHOLD --layer7-ddos-defense-auto-deploy-expiration-sec EXPIRATION_SEC ]
Logging
I log generati dalle regole di cui è stato eseguito il deployment automatico con Adaptive Protection hanno i seguenti campi aggiuntivi:
autoDeployed
: dopo aver configurato il deployment automatico delle regole, ogni log degli avvisi generato da Adaptive Protection ha il campo booleanoautoDeployed
, che indica se è stata attivata una difesa automatica. QuandoautoDeployed
è impostato sutrue
, indica che la regola segnapostoevaluateAdaptiveProtectionAutoDeploy()
ha già valutato che le soglie di confidenza e baseline interessata dell'attacco hanno superato i parametri di deployment automatico configurati. Il sistema inizia quindi a monitorare il carico dinamico. Una volta che il carico supera la soglia di carico configurata, la regola viene implementata automaticamente per mitigare l'attacco.adaptiveProtection.autoDeployAlertId
: ogni volta che Adaptive Protection esegue un'azione su una richiesta nell'ambito di una difesa automatica, il log delle richieste ha il campo aggiuntivoadaptiveProtection.autoDeployAlertId
, che registra l'ID avviso. Questo campo viene visualizzato inenforcedSecurityPolicy
opreviewSecurityPolicy
, a seconda che la norma di sicurezza sia in modalità di anteprima.
Per visualizzare i log delle richieste, consulta Utilizzo del logging delle richieste. Lo
screenshot seguente mostra un esempio di voce di log di Adaptive Protection,
con i campi autoDeployed
e adaptiveProtection.autoDeployAlertId
.

Limitazioni
- Adaptive Protection è disponibile solo per le policy di sicurezza di backend collegate ai servizi di backend esposti tramite un bilanciatore del carico delle applicazioni esterno. Adaptive Protection non è disponibile per i bilanciatori del carico di rete proxy esterni.