Présentation des règles du proxy Web sécurisé

Cette page décrit les attributs source et les attributs de destination des règles du proxy Web sécurisé. En outre, cette page explique le proxying basé sur des règles du protocole TCP (Transmission Control Protocol) et comment configurer des règles de proxy TCP pour votre application.

Les règles du proxy Web sécurisé reposent sur les deux paramètres suivants:

Par défaut, le proxy Web sécurisé est configuré de manière à refuser tout trafic Web sortant (HTTP ou HTTPS) via le proxy, sauf si vous incluez une règle spécifique dans la stratégie de votre instance de proxy Web sécurisé.

Attributs de source pour les règles

Utilisez les attributs suivants pour permettre à votre instance de proxy Web sécurisé d'identifier la source du trafic:

  • Comptes de service: utilisez des comptes de service pour identifier la source de trafic et configurer les règles du proxy Web sécurisé.
  • Tags sécurisés: utilisez des tags Resource Manager pour contrôler l'accès à vos ressources Google Cloud .
  • Adresses IP : attribuez les adresses IP de votre entreprise (ou les adresses IP statiques) que le proxy Web sécurisé utilise pour le trafic sortant. Google Cloud

Identités compatibles

Vous pouvez utiliser des règles de sécurité basées sur l'identité de la source (comptes de service et tags sécurisés) pour sécuriser le trafic Web de plusieurs Google Cloud services. Le tableau suivant indique si différents services Google Cloud sont compatibles avec l'utilisation de règles de sécurité basées sur l'identité de la source.

Google Cloud  services Assistance concernant les comptes de service Compatibilité avec les tags sécurisés
VM
Nœud GKE
Conteneur GKE 1 1
VPC direct pour Cloud Run 1
Connecteur d'accès au VPC sans serveur 2 2
Cloud VPN 1 1
Cloud Interconnect sur site 1 1
Équilibreur de charge d'application
Équilibreur de charge réseau
1 Non compatible avec Google Cloud.
2 L'adresse IP source est unique et peut être utilisée à la place.

Le tableau suivant indique si différentes architectures de cloud privé virtuel (VPC) sont compatibles avec l'utilisation de règles de sécurité basées sur l'identité de la source:

VPC Architecture du VPC Assistance
Dans le VPC Inter-projet (VPC partagé)
Dans le VPC Interrégional
VPC croisé Lien d'appairage croisé (VPC de pair)
VPC croisé Private Service Connect croisé
VPC croisé Interconnexion des spokes Network Connectivity Center

Attributs de destination pour les règles

Avec le proxy Web sécurisé, vous pouvez configurer des règles pour votre application en fonction des domaines de destination et des chemins d'URL complets (si l'inspection TLS est activée).

Utilisez les attributs suivants pour permettre à votre instance de proxy Web sécurisé de déterminer la destination du trafic autorisé:

  • Port de destination: port en amont vers lequel votre instance de proxy Web sécurisé envoie du trafic. Pour en savoir plus, consultez la section Attributs disponibles pour SessionMatcher et ApplicationMatcher.
  • Listes d'URL: utilisez des listes d'URL pour définir les URL auxquelles vos utilisateurs peuvent accéder. Pour en savoir plus, consultez la section Listes d'URL.

Pour le trafic de destination basé sur HTTP, vous pouvez utiliser l'attribut de destination host() pour votre application.

Pour le trafic de destination basé sur HTTPS, vous pouvez utiliser divers attributs request.* liés à la destination (par exemple, request.method) pour votre application.

Pour en savoir plus sur les attributs de destination que vous pouvez utiliser pour le trafic HTTP et HTTPS, consultez la section Attributs.

Règles de proxy TCP

Avec votre instance de proxy Web sécurisé, vous pouvez configurer des règles de proxy pour le trafic TCP (protocole TCP), y compris le trafic qui n'est pas associé aux protocoles Web. Par exemple, vous pouvez choisir d'autoriser ou de bloquer le trafic des sites Web ou des applications qui envoient du trafic à partir de ports autres que 80 (HTTP) ou 443 (HTTPS).

Si votre charge de travail (telles que vos applications et services) utilise le proxy Web sécurisé comme saut suivant, l'application de règles de proxy TCP est bénéfique. En effet, l'utilisation d'un processus de redirection basé sur les routes redirige le trafic non HTTP(S) et non Web vers votre instance de proxy Web sécurisé. Vous pouvez ainsi empêcher le trafic malveillant d'atteindre votre application et contrôler les applications ou les sites Web pouvant accéder à votre réseau.

Configurer des règles de proxy TCP pour votre application

Pour implémenter des règles de proxy TCP et créer une règle d'autorisation ou de blocage du trafic pour votre application, vous devez spécifier le port de destination. Vous pouvez également inclure l'un des attributs SessionMatcher suivants pour affiner les critères de la règle d'autorisation ou de blocage.

Attribut Type d'attribut Description
source.ip chaîne Adresse IP du client qui a envoyé la requête.
source.port chaîne Port client ayant envoyé la requête.
destination.port chaîne Port en amont auquel votre instance de proxy Web sécurisé envoie le trafic.
source.matchTag(SECURE_TAG) booléen

True, si la source est associée à SECURE_TAG.

L'argument est l'ID permanent du tag sécurisé, par exemple source.matchTag('tagValues/123456').

source.matchServiceAccount(SERVICE_ACCOUNT) booléen True, si la source est associée à SERVICE_ACCOUNT, par exemple source.matchServiceAccount('x@my-project.iam.gserviceaccount.com').
inIpRange(IP_ADDRESS,
IP_RANGE)
booléen True, si IP_ADDRESS est contenu dans IP_RANGE, par exemple inIpRange(source.ip, '1.2.3.0/24'). Les masques de sous-réseau des adresses IPv6 ne peuvent pas excéder /64.

Limites

Le proxy Web sécurisé ne permet pas de configurer des règles de proxy TCP pour les applications UDP (User Datagram Protocol). Par conséquent, le proxy Web sécurisé bloque le trafic des applications basées sur UDP.

Règles de mise en correspondance des hôtes

Lorsque vous configurez des règles de sortie pour votre instance de proxy Web sécurisé, veillez à les définir en fonction de l'hôte de destination des requêtes sortantes. Vous devez également tenir compte du fonctionnement de la mise en correspondance des hôtes en fonction du mode de déploiement de votre instance de proxy Web sécurisé.

Mode proxy explicite

  • Pour les requêtes HTTP non chiffrées, vous pouvez utiliser la règle host() == "myownpersonaldomain.com" dans SessionMatcher. Le proxy Web sécurisé valide cette règle par rapport au champ host dans l'en-tête CONNECT de la requête HTTP.

  • Si vous souhaitez activer l'inspection TLS et définir des règles en fonction de Application Matcher, vous devez définir une règle SessionMatcher qui évalue à TRUE. Par exemple, vous pouvez utiliser la règle host() == "myownpersonaldomain.com" dans SessionMatcher, puis ajouter la règle request.host() == "myownpersonaldomain.com" dans ApplicationMatcher.

    Le proxy Web sécurisé valide d'abord le SessionMatcher par rapport au champ host dans l'en-tête CONNECT de la requête HTTP. Et seulement si la règle SessionMatcher est valide, le proxy Web sécurisé examine les règles ApplicationMatcher.

Mode du saut suivant

  • Pour les requêtes HTTP non chiffrées, vous pouvez utiliser la règle host() == "myownpersonaldomain.com" dans SessionMatcher. Le proxy Web sécurisé valide cette règle par rapport au champ host dans l'en-tête de requête HTTP standard.

    Toutefois, si la requête est chiffrée TLS, le proxy Web sécurisé valide la même règle par rapport à l'en-tête SNI (Server Name Indication) dans la requête sortante.

  • Si vous souhaitez activer l'inspection TLS et définir des règles en fonction de ApplicationMatcher, vous devez définir une règle SessionMatcher qui évalue à TRUE. Par exemple, vous pouvez utiliser la règle host() == "myownpersonaldomain.com" dans SessionMatcher, puis ajouter la règle request.host() == "myownpersonaldomain.com" dans ApplicationMatcher.

    Le proxy Web sécurisé valide d'abord le SessionMatcher par rapport à l'en-tête SNI dans la requête sortante. Et seulement si la règle SessionMatcher est valide, le proxy Web sécurisé examine les règles ApplicationMatcher.