Les sections suivantes expliquent comment Google Cloud Armor interagit avec d'autres produits et fonctionnalités Google Cloud.
Règles de pare-feu VPC et Google Cloud Armor
Les stratégies de sécurité Google Cloud Armor et les règles de pare-feu VPC ont des fonctions différentes :
- Les stratégies de sécurité Google Cloud Armor offrent une sécurité périphérique et agissent sur le trafic client vers les GFE (Google Front End).
- Les règles de pare-feu VPC autorisent ou refusent le trafic vers et depuis vos backends. Vous devez créer des règles de pare-feu autorisant le trafic entrant, dont les cibles sont les VM de backend à équilibrage de charge et dont les sources sont des plages d'adresses IP utilisées par des équilibreurs de charge d'application externes globaux ou des équilibreurs de charge d'application classiques. Ces règles autorisent les GFE et les systèmes de vérification de l'état à communiquer avec vos VM de backend.
Prenons l'exemple d'un scénario dans lequel vous souhaitez autoriser uniquement le trafic provenant plage CIDR 100.1.1.0/24 et plage CIDR 100.1.2.0/24 pour accéder à vos d'un équilibreur de charge d'application externe global ou classique. Votre objectif est de vous assurer que le trafic ne peut pas atteindre directement les instances backend à équilibrage de charge. Dans d'autres uniquement le trafic externe transmis par proxy via l'équilibreur de charge d'application externe global ou un équilibreur de charge d'application classique avec une stratégie de sécurité associée doit atteindre Compute Engine.
Dans l'illustration précédente, vous atteignez vos objectifs de sécurité en configurant votre déploiement Google Cloud comme suit :
- Créez deux groupes d'instances, un dans la région
us-west1
et l'autre dans la régioneurope-west1
. - Déployez des instances d'application backend sur les VM dans les groupes d'instances.
- Créez un équilibreur de charge d'application externe global ou un équilibreur de charge d'application classique en Niveau Premium. Configurez un mappage d'URL simple et un service de backend unique dont les backends sont les deux groupes d'instances que vous avez créés à l'étape précédente. Assurez-vous que la règle de transfert de l'équilibreur de charge utilise l'adresse IP externe
120.1.1.1
. - Configurez une stratégie de sécurité Google Cloud Armor qui autorise le trafic provenant des plages CIDR 100.1.1.0/24 et 100.1.2.0/24 et refuse tout autre trafic.
- Associez cette stratégie au service de backend de l'équilibreur de charge. Pour obtenir des instructions, consultez la page Configurer des stratégies de sécurité. Les équilibreurs de charge HTTP(S) externes avec des mappages d'URL plus complexes peuvent référencer plusieurs services de backend. Vous pouvez associer la stratégie de sécurité à un ou plusieurs des services de backend, si nécessaire.
- Configurez des règles de pare-feu autorisant le trafic entrant un équilibreur de charge d'application externe global ou l'équilibreur de charge d'application classique. Pour plus d'informations, consultez la section Règles de pare-feu.
Google Cloud Armor avec des équilibreurs de charge d'application externes et IAP
Identity-Aware Proxy (IAP) vérifie l'identité d'un utilisateur, puis détermine si cet utilisateur doit être autorisé à accéder à une application. À activer IAP pour l'équilibreur de charge d'application externe global d'un équilibreur de charge d'application classique, vous l'activez services de backend de l'équilibreur de charge. De même, les stratégies de sécurité périphériques Google Cloud Armor sont associées aux services de backend d'un équilibreur de charge d'application externe global ou d'un équilibreur de charge d'application classique.
Si les stratégies de sécurité Google Cloud Armor et IAP activée pour un service de backend, l'ordre de leur évaluation dépend de l'équilibreur de charge:
Pour un service de backend d'un équilibreur de charge d'application externe global, l'évaluation Google Cloud Armor intervient en premier. Si Google Cloud Armor bloque une requête, IAP n'évalue pas la requête. Si Google Cloud Armor autorise une requête, IAP évalue ensuite la requête. La requête est bloquée si IAP le fait ne pas authentifier la requête.
Pour un service de backend d'un équilibreur de charge d'application classique, l'évaluation IAP intervient en premier. Si IAP authentifie une requête, Google Cloud Armor l'évalue. Si une requête échoue à l'authentification IAP, Google Cloud Armor n'évalue pas la requête.
Pour plus d'informations sur IAP et les configurations associées, consultez la documentation Identity-Aware Proxy.
Google Cloud Armor avec des déploiements hybrides
Dans un déploiement hybride, un équilibreur de charge d'application externe global ou un équilibreur de charge d'application classique a besoin d'accéder à une application source de contenu s'exécutant en dehors de Google Cloud, par exemple dans une autre de l'infrastructure du fournisseur de services cloud. Vous pouvez utiliser Google Cloud Armor pour protéger ce type de déploiements.
Dans le schéma suivant, l'équilibreur de charge comporte deux services de backend. L'un dispose d'un groupe d'instances comme backend. L'autre service de backend dispose d'un NEG Internet comme backend, lequel est associé à une application qui s'exécute dans le centre de données d'un fournisseur tiers.
Lorsque vous associez une stratégie de sécurité Google Cloud Armor au service de backend doté d'un NEG Internet comme backend, Google Cloud Armor inspecte chaque requête L7 qui parvient à l'équilibreur de charge d'application externe global ou à l'équilibreur de charge d'application classique destiné à ce service de backend.
La protection Google Cloud Armor pour les déploiements hybrides est soumise aux mêmes limites que celles qui s'appliquent aux NEG Internet.
Google Cloud Armor avec l'objet Entrée de Google Kubernetes Engine (GKE)
Après avoir configuré une règle de sécurité Google Cloud Armor, vous pouvez utiliser l'objet Kubernetes Ingress pour l'activer avec GKE.
Vous pouvez référencer votre stratégie de sécurité avec une ressource BackendConfig
en ajoutant son nom à BackendConfig
. Le fichier manifeste BackendConfig
suivant spécifie une règle de sécurité nommée example-security-policy
:
apiVersion: cloud.google.com/v1
kind: BackendConfig
metadata:
namespace: cloud-armor-how-to
name: my-backendconfig
spec:
securityPolicy:
name: "example-security-policy"
Pour en savoir plus sur les fonctionnalités d'entrée, consultez la section Configurer les fonctionnalités d'entrée.
Google Cloud Armor avec Cloud CDN
Pour protéger les serveurs d'origine CDN, vous pouvez utiliser Google Cloud Armor avec Cloud CDN. Google Cloud Armor protège votre serveur d'origine CDN contre les attaques d'applications, limite les dix risques les plus importants selon OWASP, et applique une stratégie de filtrage de couche 7. Deux types de règles de sécurité affectent le fonctionnement de Google Cloud Armor avec Cloud CDN : les règles de sécurité périphérique et les règles de sécurité de backend.
Stratégies de sécurité Edge
Vous pouvez utiliser des règles de sécurité périphérique pour les services de backend compatibles avec Cloud CDN et les buckets de backend Cloud Storage derrière l'équilibreur de charge d'application externe global ou l'équilibreur de charge d'application classique. Utilisez des règles de sécurité périphérique pour filtrer les requêtes avant que le contenu ne soit diffusé à partir du cache.
Règles de sécurité de backend
Lorsque les règles de sécurité de backend Google Cloud Armor sont appliquées aux services de backend avec Cloud CDN activé, elles ne s'appliquent qu'aux requêtes acheminées vers le service de backend. Ces requêtes incluent les requêtes de contenu dynamiques et les défauts de cache (miss), c'est-à-dire les requêtes qui manquent ou contournent le cache Cloud CDN.
Lorsque des stratégies de sécurité de périphérie et de sécurité de backend sont associées au même service de backend, les règles de sécurité du backend ne s'appliquent qu'en cas de défaut de cache (miss) Requêtes ayant transmis des stratégies de sécurité périphériques
Le schéma suivant illustre exclusivement le fonctionnement des stratégies de sécurité de backend avec les origines Cloud CDN, une fois les requêtes autorisées par les règles de sécurité périphérique.
Pour plus d'informations sur Cloud CDN, consultez la documentation Cloud CDN.
Google Cloud Armor avec des fonctions Cloud Run, App Engine ou Cloud Run
Vous pouvez utiliser les stratégies de sécurité Google Cloud Armor avec un backend de NEG sans serveur qui pointe vers un service Cloud Run, App Engine ou fonctions Cloud Run.
Toutefois, lorsque vous utilisez Google Cloud Armor avec des NEG sans serveur, Cloud Run, ou fonctions Cloud Run, vous devez prendre des pour s'assurer que tous les accès au point de terminaison sans serveur sont filtrés à l'aide d'un Stratégie de sécurité Google Cloud Armor.
Les utilisateurs disposant de l'URL par défaut d'une application sans serveur peuvent contourner la charge et accéder directement à l'URL du service. Cela permet de contourner les règles de sécurité de Google Cloud Armor. Pour résoudre ce problème, désactivez l'URL par défaut que Google Cloud attribue automatiquement aux services Cloud Run ou aux fonctions Cloud Run (2e génération). Pour protéger App Engine applications, vous pouvez utiliser contrôles d'entrée.
Si vous utilisez des contrôles d'entrée pour vous assurer que vos contrôles d'accès sont appliqués à l'ensemble du trafic entrant, vous pouvez utiliser internal-and-gclb
lorsque vous configurez des fonctions Cloud Run ou Cloud Run. Cela n'autorise que le trafic interne et le trafic envoyé à une adresse IP externe exposée par l'équilibreur de charge d'application externe global ou l'équilibreur de charge d'application classique. Trafic généré par
les messages envoyés à ces URL par défaut en dehors de votre réseau privé sont bloqués.
Cela empêche les utilisateurs de contourner
des contrôles d'accès (tels que les stratégies de sécurité Google Cloud Armor) configurés
via l'équilibreur de charge d'application
externe global ou classique.
Pour en savoir plus sur les NEG sans serveur, consultez les pages Présentation des groupes de points de terminaison du réseau sans serveur et Configurer des NEG sans serveur.
Étape suivante
- Configurez des stratégies, des règles et des expressions de sécurité.
- Découvrez les fonctionnalités des niveaux Cloud Armor Enterprise.
- Résoudre les problèmes