Sécurité de Private Service Connect
Cette page présente la sécurité de Private Service Connect.
Private Service Connect fournit plusieurs commandes pour gérer l'accès aux ressources Private Service Connect. Vous pouvez contrôler qui peut déployer des ressources Private Service Connect, si des connexions peuvent être établies entre les consommateurs et les producteurs, et quel trafic réseau est autorisé à accéder à ces connexions.
Ces commandes sont implémentées à l'aide des éléments suivants:
- Les autorisations IAM (Identity and Access Management) déterminent les principaux IAM autorisés à déployer des ressources Private Service Connect, telles que des points de terminaison, des backends et des services. Un compte principal IAM est un compte Google, un compte de service, un groupe Google, un compte Google Workspace ou un domaine Cloud Identity pouvant accéder à une ressource.
- Les listes d'acceptation et de refus de Private Service Connect et les règles d'administration déterminent si les connexions Private Service Connect peuvent être établies entre les clients individuels et les producteurs.
- Les règles de pare-feu VPC déterminent si certains trafics TCP ou UDP sont autorisés à accéder aux connexions Private Service Connect.
La figure 1 décrit la façon dont ces contrôles interagissent côté client et côté producteur d'une connexion Private Service Connect.
IAM
Resources : toutes
Chaque ressource Private Service Connect est régie par une ou plusieurs autorisations IAM. Ces autorisations permettent aux administrateurs de définir les comptes principaux IAM autorisés à déployer des ressources Private Service Connect.
IAM ne régit pas les principaux IAM pouvant se connecter à une connexion Private Service Connect ni l'utiliser. Pour contrôler les points de terminaison ou les backends pouvant établir une connexion avec un service, utilisez des règles d'administration ou des listes d'acceptation client. Pour contrôler les clients pouvant envoyer du trafic vers les ressources Private Service Connect, utilisez des pare-feu VPC ou des stratégies de pare-feu.
Pour en savoir plus sur les autorisations IAM, consultez la page Autorisations IAM.
Pour en savoir plus sur les autorisations requises pour créer un point de terminaison, consultez la section Créer un point de terminaison.
Pour en savoir plus sur les autorisations requises pour créer un rattachement de service, consultez la page Publier un service avec approbation explicite.
États de connexion
Ressources : points de terminaison, backends et rattachements de service
Les points de terminaison, les backends et les rattachements de service Private Service Connect disposent d'un état de connexion qui décrit l'état de leur connexion. Les ressources client et producteur qui constituent les deux côtés d'une connexion ont toujours le même état. Vous pouvez afficher les états de connexion lorsque vous affichez les détails du point de terminaison, décrivez un backend ou affichez les détails d'un service publié.
Le tableau suivant décrit les états possibles.
État de la connexion | Description |
---|---|
Acceptée | La connexion Private Service Connect est établie. Les deux réseaux VPC disposent d'une connectivité et la connexion fonctionne normalement. |
En attente | La connexion Private Service Connect n'est pas établie et le trafic ne peut pas transiter entre les deux réseaux. Cette connexion peut présenter cet état pour les raisons suivantes :
Les connexions bloquées pour ces raisons restent en attente indéfiniment jusqu'à ce que le problème sous-jacent soit résolu. |
Refusé | La connexion Private Service Connect n'est pas établie. Le trafic réseau ne peut pas transiter entre les deux réseaux. Cette connexion peut présenter cet état pour les raisons suivantes :
|
Attention requise ou Aucune raison spécifiée | Un problème est survenu du côté producteur de la connexion. Certaines connexions peuvent ne pas fonctionner, même si du trafic transite entre les deux réseaux. Par exemple, le sous-réseau NAT du producteur peut être épuisé et ne pas pouvoir allouer d'adresses IP pour de nouvelles connexions. |
Fermée | Le rattachement de service a été supprimé et la connexion Private Service Connect est fermée. Le trafic réseau ne peut pas transiter entre les deux réseaux. Une connexion fermée est un état final. Pour rétablir la connexion, vous devez recréer à la fois le rattachement de service et le point de terminaison ou le backend. |
Configuration du rattachement de service
Vous pouvez contrôler les consommateurs qui peuvent se connecter à un rattachement de service à l'aide des fonctionnalités suivantes.
Préférences de connexion
Ressources : points de terminaison et backends
Chaque rattachement de service possède une préférence de connexion qui indique si les requêtes de connexion sont automatiquement acceptées. Trois options sont proposées :
- Accepter automatiquement toutes les connexions. Le rattachement de service accepte automatiquement toutes les requêtes de connexion entrantes de n'importe quel client. L'acceptation automatique peut être remplacée par une règle d'administration qui bloque les connexions entrantes.
- Accepter les connexions pour les réseaux sélectionnés. Le rattachement de service n'accepte les requêtes de connexion entrantes que si le réseau VPC client cfigure sur la liste d'acceptation des rattachements de service.
- Accepter les connexions pour les projets sélectionnés. Le rattachement de service n'accepte les requêtes de connexion entrantes que si le projet client figure sur la liste d'acceptation des rattachements de service.
Nous vous recommandons d'accepter les connexions pour les projets ou les réseaux sélectionnés. L'acceptation automatique de toutes les connexions peut être appropriée si vous contrôlez l'accès des clients par d'autres moyens et que vous souhaitez offrir un accès permissif à votre service.
Listes d'acceptation et de refus
Ressources : points de terminaison et backends
Les listes d'acceptation des clients et les listes de refus des clients sont une fonctionnalité de sécurité des rattachements de service. Les listes d'acceptation et de rejet permettent aux producteurs de services de spécifier les clients qui peuvent établir des connexions Private Service Connect à leurs services. Les listes d'acceptation des clients spécifient si une connexion est acceptée ou non, tandis que les listes de refus des clients indiquent si une connexion est refusée. Ces deux listes vous permettent de spécifier des clients en fonction du réseau VPC ou du projet de la ressource de connexion. Si vous ajoutez simultanément un projet ou un réseau à la liste d'acceptation et à la liste de refus, les requêtes de connexion de ce projet ou de ce réseau sont refusées. Il n'est pas possible de spécifier des clients par dossier.
Les listes d'acceptation et de refus des clients permettent de spécifier des projets ou des réseaux VPC, mais pas les deux en même temps. Vous pouvez modifier une liste d'un type à un autre sans interrompre les connexions, mais vous devez effectuer la modification en une seule mise à jour. Sinon, certaines connexions peuvent temporairement passer à l'état "En attente".
Les listes de consommateurs déterminent si un point de terminaison peut se connecter à un service publié, mais elles ne contrôlent pas qui peut envoyer des requêtes à ce point de terminaison. Par exemple, supposons qu'un client dispose d'un réseau VPC partagé auquel sont associés deux projets de service. Si un service publié contient service-project1
dans la liste d'acceptation des clients et service-project2
dans la liste de refus des clients, les éléments suivants s'appliquent:
-
Un client dans
service-project1
peut créer un point de terminaison qui se connecte au service publié. -
Un client dans
service-project2
ne peut pas créer de point de terminaison qui se connecte au service publié. -
Un client dans
service-project2
peut envoyer des requêtes au point de terminaison dansservice-project1
, s'il n'existe aucune règle ni aucune stratégie de pare-feu empêchant ce trafic.
Lorsque vous mettez à jour une liste d'acceptation ou de refus client, l'effet sur les connexions existantes varie selon que le rapprochement des connexions est activé ou non. Pour en savoir plus, consultez la section Rapprochement des connexions.
Pour en savoir plus sur la création d'un nouveau rattachement de service incluant des listes d'acceptation ou de refus client, consultez la page Publier un service avec approbation explicite du projet.
Pour savoir comment mettre à jour les listes d'acceptation ou de refus des consommateurs, consultez la section Gérer les requêtes d'accès à un service publié.
Limites de connexion
Ressources : points de terminaison et backends
Les listes d'acceptation des clients sont soumises à des limites de connexion. Ces limites définissent le nombre total de connexions de point de terminaison et de backend Private Service Connect qu'un rattachement de service peut accepter à partir du projet client ou du réseau VPC spécifié.
Les producteurs peuvent utiliser les limites de connexion pour empêcher les clients individuels d'épuiser les adresses IP ou les quotas de ressources du réseau VPC producteur. Chaque connexion Private Service Connect acceptée soustrait la limite configurée pour un projet client ou un réseau VPC. Les limites sont définies lorsque vous créez ou mettez à jour les listes d'acceptation des clients. Vous pouvez afficher les connexions d'un rattachement de service lorsque vous décrivez ce rattachement.
Les connexions propagées ne sont pas comptabilisées dans ces limites.
Par exemple, considérons un rattachement de service doté d'une liste d'acceptation client qui inclut project-1
et project-2
, toutes deux avec une limite d'une connexion. Le projet project-1
demande deux connexions, project-2
demande une connexion et project-3
demande une connexion. Étant donné que project-1
a une limite d'une connexion, la première connexion est acceptée et la seconde reste en attente.
La connexion provenant de project-2
est acceptée, et la connexion provenant de project-3
reste en attente. La deuxième connexion depuis project-1
peut être acceptée en augmentant la limite de project-1
. Si project-3
est ajouté à la liste d'acceptation des clients, cette connexion passe de l'état "En attente" à l'état "Acceptée".
Règles d'administration
Les règles d'administration vous permettent de contrôler de façon générale les projets qui peuvent se connecter à des réseaux VPC ou à des organisations à l'aide de Private Service Connect.
Les règles d'administration décrites sur cette page peuvent bloquer ou rejeter les nouvelles connexions Private Service Connect, mais elles n'affectent pas les connexions existantes.
Une règle d'administration s'applique aux descendants de la ressource à laquelle elle fait référence conformément à l'évaluation hiérarchique. Par exemple, une règle d'administration limitant l'accès à une organisation Google Cloud s'applique également aux dossiers enfants, aux projets et aux ressources de l'organisation. De même, répertorier une organisation en tant que valeur autorisée permet également d'accéder aux enfants de cette organisation.
Pour en savoir plus sur les règles d'administration, consultez Règles d'administration.
Règles d'administration côté client
Vous pouvez utiliser des contraintes de liste pour contrôler le déploiement des points de terminaison et des backends. Si un point de terminaison ou un backend est bloqué par une règle d'administration client, la création de la ressource échoue.
- Utilisez la contrainte de liste
restrictPrivateServiceConnectProducer
pour contrôler les points de terminaison et les backends des rattachements de service auxquels vous pouvez vous connecter en fonction de l'organisation producteur. - Utilisez la contrainte de liste
disablePrivateServiceConnectCreationForConsumers
pour contrôler le déploiement des points de terminaison en fonction de leur type de connexion. Vous pouvez bloquer le déploiement des points de terminaison qui se connectent aux API Google ou aux services publiés.
Empêcher les points de terminaison ou les backends de se connecter aux organisations de producteurs
Ressources : points de terminaison et backends
Les règles d'administration qui utilisent la contrainte de liste restrictPrivateServiceConnectProducer
avec des valeurs autorisées empêchent les points de terminaison et les backends de se connecter aux rattachements de service, sauf si ceux-ci sont associés à l'une des valeurs autorisées de la règle. Une règle de ce type bloque les connexions, même si elles sont autorisées par la liste d'acceptation des clients du rattachement de service.
Par exemple, la règle d'administration suivante s'applique à une organisation nommée Org-A
:
name: organizations/Org-A/policies/compute.restrictPrivateServiceConnectProducer
spec:
rules:
– values:
allowedValues:
- under:organizations/ORG_A_NUMBER
- under:organizations/433637338589
La figure 2 illustre le résultat de cette règle d'administration. La stratégie autorise les valeurs Org-A
(ORG_A_NUMBER
) et Google-org
(433637338589
). Les points de terminaison et les backends créés dans Org-A
peuvent communiquer avec les rattachements de service dans Org-A
, mais pas avec les rattachements de service dans Org-B
.
Vous pouvez autoriser les instances des types de ressources suivants à créer des points de terminaison avec la contrainte compute.restrictPrivateServiceConnectProducer
:
- Organisations
- Dossiers
- Projets
Pour en savoir plus sur la création d'une règle d'administration utilisant la contrainte compute.restrictPrivateServiceConnectProducer
, consultez Empêcher les points de terminaison et les backends de se connecter à des rattachements de service non autorisés.
Empêcher la création de points de terminaison par type de connexion
Ressources concernées : points de terminaison
Vous pouvez utiliser la contrainte de liste disablePrivateServiceConnectCreationForConsumers
pour empêcher la création de points de terminaison selon qu'ils se connectent aux API Google ou aux services publiés (rattachements de service).
Pour en savoir plus sur la création d'une règle d'administration utilisant la contrainte disablePrivateServiceConnectCreationForConsumers
, consultez Empêcher les clients de déployer des points de terminaison par type de connexion.
Règles d'administration côté producteur
Ressources concernées : points de terminaison et backends
Vous pouvez utiliser des règles d'administration avec la contrainte de liste compute.restrictPrivateServiceConnectConsumer
pour contrôler les points de terminaison et les backends pouvant se connecter aux rattachements de service Private Service Connect au sein d'un projet ou d'une organisation producteur. Si un point de terminaison ou un backend est refusé par une règle d'administration du producteur, la création de la ressource réussit, mais la connexion passe à l'état "Refusé".
Le contrôle de l'accès de cette manière est semblable à l'utilisation de listes d'acceptation et de rejet, sauf que les règles d'administration s'appliquent à tous les rattachements de service d'un projet ou d'une organisation plutôt qu'à un rattachement de service individuel.
Vous pouvez utiliser des règles d'administration et des listes ensemble, les règles d'administration appliquant l'accès à un service géré et les listes contrôlant l'accès à des rattachements de service individuels.
Les règles d'administration qui utilisent la contrainte compute.restrictPrivateServiceConnectConsumer
rejettent les connexions à partir de points de terminaison et de backends, sauf si le point de terminaison ou le backend est associé à l'une des valeurs autorisées de la règle. Une règle de ce type rejette les connexions même si elles sont autorisées par une liste d'autorisation.
Par exemple, la règle d'administration suivante s'applique à une organisation nommée "Org-A" :
name: organizations/Org-A/policies/compute.restrictPrivateServiceConnectConsumer
spec:
rules:
- values:
allowedValues:
- under:organizations/ORG_A_NUMBER
La figure 3 illustre le résultat de cette règle d'administration. La valeur Org-A
de la stratégie est autorisée (ORG_A_NUMBER
). Les points de terminaison d'autres réseaux VPC de Org-A
peuvent se connecter aux rattachements de service dans Org-A
. Les points de terminaison de Org-B
qui tentent de se connecter sont refusés.
Une règle d'administration s'applique aux descendants de la ressource à laquelle elle fait référence conformément à l'évaluation hiérarchique. Par exemple, une règle d'administration limitant l'accès à une organisation Google Cloud s'applique également aux dossiers enfants, aux projets et aux ressources de l'organisation. De même, répertorier une organisation en tant que valeur autorisée permet également d'accéder aux enfants de cette organisation.
Vous pouvez autoriser les instances des types de ressources suivants à créer des points de terminaison avec la contrainte restrictPrivateServiceConnectConsumer
:
- Organisations
- Dossiers
- Projets
Pour en savoir plus sur l'utilisation des règles d'administration avec les producteurs de services, consultez la section Règles d'administration des producteurs.
Interaction entre les listes d'acceptation des clients et les règles d'administration
Les listes d'acceptation des clients et les règles d'administration déterminent si une connexion peut être établie entre deux ressources Private Service Connect. Les connexions sont bloquées si une liste d'acceptation ou une règle d'administration de l'organisation refuse la connexion.
Par exemple, une règle avec la contrainte restrictPrivateServiceConnectConsumer
peut être configurée pour bloquer les connexions en dehors de l'organisation du producteur. Même si un rattachement de service est configuré pour accepter automatiquement toutes les connexions, la règle de l'organisation bloque toujours les connexions provenant de l'extérieur de l'organisation du producteur. Nous vous recommandons d'utiliser à la fois les listes d'acceptation et les règles d'administration pour renforcer la sécurité.
Pare-feu
Resources : toutes
Vous pouvez utiliser des règles de pare-feu VPC et des stratégies de pare-feu pour contrôler l'accès au niveau du réseau aux ressources Private Service Connect.
Pour en savoir plus sur les règles de pare-feu VPC en général, consultez la page Règles de pare-feu VPC.
Pour en savoir plus sur l'utilisation des règles de pare-feu VPC pour limiter l'accès aux points de terminaison ou aux backends d'un réseau VPC client, consultez la section Utiliser des règles de pare-feu pour limiter l'accès aux points de terminaison ou aux backends.