Ce document décrit les étapes de configuration permettant de déployer automatiquement les règles suggérées qui sont générées par Adaptive Protection. Pour activer le déploiement automatique des règles, vous devez créer une règle d'espace réservé avec les valeurs suivantes :
- Expression de correspondance :
evaluateAdaptiveProtectionAutoDeploy()
- Action : toutes
- Priorité : toutes. Nous vous recommandons de définir une règle d'autorisation explicite avec une priorité plus élevée que vos autres règles pour un trafic légitime à priorité élevée.
Si vous utilisez un proxy en amont devant votre équilibreur de charge d'application externe, tel qu'un CDN tiers, vous pouvez configurer la règle d'espace réservé pour qu'elle corresponde aux requêtes en fonction de l'adresse IP du client d'origine à partir d'un ou de plusieurs en-têtes spécifiés. Pour utiliser
cette fonctionnalité en preview, configurez l'option userIpRequestHeaders[]
dans
advancedOptionsConfig
. Pour en savoir plus, consultez la documentation de référence sur la ressource ComputeSecurityPolicy.
Exemples de règles d'espace réservé
Les commandes suivantes sont des exemples de règles d'espace réservé pour des stratégies de sécurité appelées POLICY_NAME
, chacune disposant d'une action de règle différente.
Vous pouvez ajouter ces règles à une stratégie de sécurité existante ou créer une stratégie. Pour en savoir plus sur la création de stratégies de sécurité, consultez la page Configurer des stratégies de sécurité Google Cloud Armor.
Bloquer le trafic malveillant
Cet exemple de règle renvoie true
pour les requêtes qu'Adaptive Protection identifie comme du trafic associé à une attaque. Google Cloud Armor applique le blocage
à la demande à l'origine de l'attaque:
gcloud compute security-policies rules create 1000 \ --security-policy POLICY_NAME \ --expression "evaluateAdaptiveProtectionAutoDeploy()" \ --action deny-403
Rediriger le trafic malveillant vers un test reCAPTCHA
Cet exemple de règle redirige le trafic qu'Adaptive Protection identifie comme malveillant vers un test reCAPTCHA :
gcloud compute security-policies rules create 1000 \ --security-policy POLICY_NAME \ --expression "evaluateAdaptiveProtectionAutoDeploy()" \ --action redirect \ --redirect-type google-recaptcha
Limiter le débit du trafic malveillant
Cet exemple applique une limitation du débit Google Cloud Armor au trafic identifié par Adaptive Protection comme malveillant :
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
Configurer les paramètres de déploiement automatique d'Adaptive Protection
Vous pouvez configurer les seuils de déploiement automatique des règles en ajustant les paramètres suivants. Si vous ne définissez pas la valeur d'un paramètre, Google Cloud Armor utilise la valeur par défaut:
Seuil de charge : lors d'une alerte d'attaque, Adaptive Protection n'identifie les nouveaux pirates informatiques que lorsque la charge vers le service de backend en cours d'attaque dépasse ce seuil. De plus, les règles ne sont déployées automatiquement vous avertit lorsque la charge sur le service de backend qui est attaqué dépasse cette de sortie.
- Valeur par défaut :
0.8
- NEG sans serveur qui envoie du trafic vers App Engine, Cloud Run ou des fonctions Cloud Run
- NEG Internet qui envoie du trafic vers une origine externe.
- Valeur par défaut :
Seuil de confiance : les règles ne sont déployées automatiquement que pour les alertes d'attaques potentielles dont le score de confiance est supérieur à ce seuil.
- Valeur par défaut :
0.5
- Valeur par défaut :
Seuil de référence concerné : les règles ne sont déployées automatiquement que lorsque l'impact estimé sur le trafic de référence provenant de l'atténuation suggérée est inférieur à ce seuil.
- Valeur par défaut :
0.01
pourcent
- Valeur par défaut :
Ensemble d'expiration : Google Cloud Armor cesse d'appliquer l'action dans la règle déployée automatiquement à un pirate informatique identifié après ce délai. La règle continue de fonctionner pour les nouvelles requêtes.
- Valeur par défaut:
7200
secondes
- Valeur par défaut:
Vous pouvez utiliser l'exemple de commande suivant pour mettre à jour votre stratégie de sécurité afin d'utiliser des seuils de déploiement automatique autres que ceux par défaut. Remplacez NAME
par le nom de votre stratégie de sécurité, et remplacez les variables restantes par les valeurs souhaitées pour votre stratégie.
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 ]
Journalisation
Les journaux générés par les règles déployées automatiquement avec Adaptive Protection comportent les champs supplémentaires suivants :
autoDeployed
: une fois le déploiement automatique des règles configuré, chaque journal d'alerte généré par Adaptive Protection comporte le champ booléenautoDeployed
, qui indique si une défense automatique a été déclenchée.adaptiveProtection.autoDeployAlertId
: chaque fois qu'Adaptive Protection prend une action sur une demande dans le cadre d'une défense automatique, le journal de requêtes comporte Le champ supplémentaireadaptiveProtection.autoDeployAlertId
, qui enregistre ID d'alerte. Ce champ s'affiche sousenforcedSecurityPolicy
oupreviewSecurityPolicy
, selon que la stratégie de sécurité était en mode Preview.
Pour afficher les journaux de requêtes, consultez la section Journalisation des requêtes. La capture d'écran suivante montre un exemple d'entrée de journal de protection adaptative, avec les champs autoDeployed
et adaptiveProtection.autoDeployAlertId
.
Limites
- Adaptive Protection n'est disponible que pour les stratégies de sécurité de backend associées à des services de backend qui sont exposés via un équilibreur de charge d'application externe. Adaptive Protection n'est pas disponible pour les équilibreurs de charge réseau proxy externes.