Configurer Google Cloud Armor Adaptive Protection

Cette page contient des informations sur la configuration d'Adaptive Protection. Avant de configurer Adaptive Protection, assurez-vous d'avoir pris connaissance des informations de la présentation d'Adaptive Protection et des cas d'utilisation d'Adaptive Protection.

Avant de commencer

Les sections suivantes décrivent tous les rôles et autorisations IAM (Identity and Access Management) requis pour configurer des stratégies de sécurité Google Cloud Armor. Pour les cas d'utilisation de ce document, vous n'avez besoin que de l'autorisation compute.securityPolicies.update.

Configurer les autorisations IAM pour les stratégies de sécurité Google Cloud Armor

Les opérations suivantes nécessitent le rôle d'administrateur de sécurité Compute (roles/compute.securityAdmin) Identity and Access Management (IAM) :

  • Configurer, modifier, mettre à jour et supprimer une stratégie de sécurité Google Cloud Armor
  • À l'aide des méthodes d'API suivantes :
    • SecurityPolicies insert
    • SecurityPolicies delete
    • SecurityPolicies patch
    • SecurityPolicies addRule
    • SecurityPolicies patchRule
    • SecurityPolicies removeRule

Un utilisateur doté du rôle d'administrateur réseau Compute (roles/compute.networkAdmin) peut effectuer les opérations suivantes:

  • Définir une stratégie de sécurité Google Cloud Armor pour un service de backend
  • À l'aide des méthodes d'API suivantes :
    • BackendServices setSecurityPolicy
    • BackendServices list (gcloud uniquement)

Les utilisateurs dotés des rôles Administrateur de sécurité (roles/iam.securityAdmin) et Administrateur de réseaux Compute peuvent afficher les stratégies de sécurité Google Cloud Armor à l'aide des méthodes API SecurityPolicies get, list et getRule.

Configurer les autorisations IAM pour les rôles personnalisés

Le tableau suivant répertorie les autorisations standards des rôles IAM, ainsi que les méthodes d'API associées.

Autorisation IAM Méthodes d'API
compute.securityPolicies.create SecurityPolicies insert
compute.securityPolicies.delete SecurityPolicies delete
compute.securityPolicies.get SecurityPolicies get
SecurityPolicies getRule
compute.securityPolicies.list SecurityPolicies list
compute.securityPolicies.use BackendServices setSecurityPolicy
compute.securityPolicies.update SecurityPolicies patch
SecurityPolicies addRule
SecurityPolicies patchRule
SecurityPolicies removeRule
compute.backendServices.setSecurityPolicy BackendServices setSecurityPolicy

Activer Adaptive Protection

Pour activer Adaptive Protection pour votre règle de sécurité, procédez comme suit : Adaptive Protection est appliqué individuellement à chaque règle de sécurité.

Console

Pour activer Adaptive Protection pour une stratégie de sécurité :

  1. Dans Google Cloud Console, accédez à la page Sécurité du réseau.

    Accéder à la page "Sécurité du réseau"

  2. Sur la page Règles, cliquez sur le nom d'une stratégie de sécurité.

  3. Cliquez sur Modifier.

  4. Sous Adaptive Protection, sélectionnez Activer.

  5. Cliquez sur Update (Mettre à jour).

Pour désactiver Adaptive Protection pour une stratégie de sécurité :

  1. Dans Google Cloud Console, accédez à la page Sécurité du réseau.

    Accéder à la page "Sécurité du réseau"

  2. Sur la page Règles, cliquez sur le nom d'une stratégie de sécurité.

  3. Cliquez sur Modifier.

  4. Sous Adaptive Protection, décochez la case Activer.

  5. Cliquez sur Update (Mettre à jour).

gcloud

Pour activer Adaptive Protection pour une stratégie de sécurité :

gcloud compute security-policies update MY-SECURITY-POLICY \
    --enable-layer7-ddos-defense

Pour désactiver Adaptive Protection pour une stratégie de sécurité :

gcloud compute security-policies update MY-SECURITY-POLICY \
    --no-enable-layer7-ddos-defense

Configurer des modèles précis

La fonctionnalité de modèles précis vous permet de configurer des hôtes ou des chemins d'accès en tant qu'unités précises analysées par Adaptive Protection. Dans les exemples suivants, vous créez des unités de trafic précises pour chaque hôte, personnalisez un bloc de trafic précis et configurez Adaptive Protection pour qu'il agisse lorsque le trafic dépasse vos requêtes de base par seconde (RPS). Pour en savoir plus sur les modèles précis, consultez la présentation d'Adaptive Protection.

Configurer des unités de trafic précises

Les exemples de cette section utilisent la commande add-layer7-ddos-defense-threshold-config avec tout ou partie des options suivantes:

Option Description
--threshold-config-name Nom de la configuration du seuil.
--traffic-granularity-configs Options de configuration permettant à Adaptive Protection de fonctionner avec la précision de service spécifiée.
--auto-deploy-impacted-baseline-threshold Seuil applicable à l'estimation de l'impact d'Adaptive Protection sur le trafic de référence de la règle d'atténuation suggérée par rapport à une attaque détectée. Les défenses automatiques ne sont appliquées que si le seuil n’est pas dépassé.
--auto-deploy-expiration-sec Durée des actions (le cas échéant) effectuées par le déploiement automatique.
--detection-load-threshold Seuil de détection basé sur la charge du service de backend.
--detection-absolute-qps Seuil de détection basé sur le nombre de RPS absolu.
--detection-relative-to-baseline-qps Seuil de détection basé sur le RPS par rapport à la moyenne du trafic de référence.

Dans le premier exemple, vous configurez Adaptive Protection pour détecter les attaques et suggérer des mesures d'atténuation indépendantes pour chaque hôte derrière votre service de backend, sans remplacer les seuils par défaut.

gcloud

  1. Créez une stratégie de sécurité nommée POLICY_NAME ou utilisez une stratégie de sécurité existante.
  2. Si Adaptive Protection n'est pas déjà activé, utilisez la commande suivante pour l'activer pour votre règle:
    gcloud compute security-policies update POLICY_NAME 
    --enable-layer7-ddos-defense
  3. Appliquez la stratégie de sécurité à un service de backend avec plusieurs hôtes.
  4. Exécutez la commande add-layer7-ddos-defense-threshold-config suivante avec l'option --traffic-granularity-configs pour configurer une unité de trafic précise:
    gcloud compute security-policies add-layer7-ddos-defense-threshold-config POLICY_NAME 
    --threshold-config-name=per-host-config
    --traffic-granularity-configs=type=HTTP_HEADER_HOST;enableEachUniqueValue=true

Dans le deuxième exemple, vous configurez différents seuils de déploiement automatique et de détection pour tout ou partie des unités de trafic précises que vous avez configurées dans le premier exemple.

gcloud

  1. Si le déploiement automatique d'Adaptive Protection n'est pas déjà activé, créez une règle d'espace réservé.
  2. La commande suivante personnalise le seuil de déploiement automatique pour une unité de trafic précis avec une HTTP_HEADER_HOST de HOST et un HTTP_PATH de PATH. Utilisez la commande suivante pour chaque unité de trafic précis que vous souhaitez personnaliser, en remplaçant les variables selon les besoins pour chaque hôte et chemin d'URL:
    gcloud compute security-policies add-layer7-ddos-defense-threshold-config POLICY_NAME 
    --threshold-config-name=my-host-config
    --auto-deploy-impacted-baseline-threshold=0.01
    --auto-deploy-expiration-sec=3600
    --traffic-granularity-configs=type=HTTP_HEADER_HOST;value=HOST,type=HTTP_PATH;value=PATH

Détecter quand le volume d'attaque dépasse le RPS moyen de référence

Dans l'exemple suivant, vous configurez Adaptive Protection pour ne détecter une attaque que lorsque le volume d'attaque dépasse votre RPS moyen de référence de plus de 50%, et uniquement lorsque la charge du service de backend dépasse 90% de sa capacité.

gcloud

  1. Créez une stratégie de sécurité nommée POLICY_NAME ou utilisez une stratégie de sécurité existante.
  2. Si Adaptive Protection n'est pas déjà activé, utilisez la commande suivante pour l'activer pour votre règle:

    gcloud compute security-policies update POLICY_NAME \
      --enable-layer7-ddos-defense
    
  3. Appliquez la stratégie de sécurité à un service de backend.

  4. Exécutez la commande suivante pour configurer Adaptive Protection avec des seuils de détection personnalisés:

    gcloud compute security-policies add-layer7-ddos-defense-threshold-config POLICY_NAME \
       --threshold-config-name=my-customized-thresholds \
       --detection-load-threshold=0.9 \
       --detection-relative-to-baseline-qps=1.5
    

Étapes suivantes