Gérer la sécurité des clients Private Service Connect

Cette page décrit comment les clients de services peuvent configurer la sécurité des organisations grand public et des réseaux VPC qui utilisent Private Service Connect.

Les règles d'administration permettent aux administrateurs de contrôler à grande échelle les réseaux VPC ou les organisations auxquels leurs projets peuvent se connecter à l'aide de points de terminaison et de backends Private Service Connect. Les règles de pare-feu VPC et les stratégies de pare-feu permettent aux administrateurs réseau de contrôler l'accès au niveau du réseau aux ressources Private Service Connect. Les règles d'administration et les règles de pare-feu sont complémentaires et peuvent être utilisées ensemble.

Rôles

Pour obtenir les autorisations nécessaires pour gérer des règles d'administration, demandez à votre administrateur de vous accorder le rôle IAM Administrateur des règles d'administration (roles/orgpolicy.policyAdmin) dans l'organisation. Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.

Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.

Pour obtenir les autorisations nécessaires pour créer des règles de pare-feu, demandez à votre administrateur de vous accorder le rôle IAM Administrateur de réseau Compute (roles/compute.networkAdmin) sur le réseau VPC. Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.

Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.

Règles d'administration grand public

Vous pouvez utiliser des règles d'administration avec des contraintes de liste pour contrôler le déploiement des points de terminaison ou des backends Private Service Connect. Si un point de terminaison ou un backend est bloqué par une règle d'administration client, la création de la ressource échoue.

Pour en savoir plus, consultez Règles d'administration côté client.

Empêcher les points de terminaison et les backends de se connecter à des rattachements de service non autorisés

gcloud

  1. Créez un fichier temporaire appelé /tmp/policy.yaml pour stocker la nouvelle règle. Ajoutez le contenu suivant au fichier  :

    name: organizations/CONSUMER_ORG/policies/compute.restrictPrivateServiceConnectProducer
    spec:
      rules:
        - values:
            allowedValues:
            - under:organizations/PRODUCER_ORG_NUMBER
            - under:organizations/43363733858
    

    Remplacez les éléments suivants :

    • CONSUMER_ORG : ID de ressource de l'organisation dans laquelle vous souhaitez contrôler les connexions de point de terminaison et de backend.
    • PRODUCER_ORG_NUMBER : ID de ressource numérique de l'organisation producteur à laquelle vous souhaitez permettre aux points de terminaison et aux backends de se connecter.

    Pour empêcher les points de terminaison et les backends de se connecter aux rattachements de service appartenant à Google, supprimez l'élément suivant de la section allowedValues: - under:organizations/433637338589.

    Pour spécifier des organisations supplémentaires pouvant se connecter aux rattachements de service dans votre projet, incluez des entrées supplémentaires dans la section allowedValues.

    En plus des organisations, vous pouvez spécifier des dossiers et des projets autorisés sous la forme suivante:

    • under:folders/FOLDER_ID

      FOLDER_ID doit être un ID numérique.

    • under:projects/PROJECT_ID

      PROJECT_ID doit être l'ID de la chaîne.

    Par exemple, les éléments suivants peuvent être utilisés pour créer une règle d'administration qui empêche les points de terminaison et les backends de Consumer-org-1 de se connecter aux rattachements de service, sauf si ces rattachements sont associés à une valeur autorisée ou à un descendant d'une valeur autorisée. Les valeurs autorisées sont l'organisation Producer-org-1, le projet Producer-project-1 et le dossier Producer-folder-1.

    name: organizations/Consumer-org-1/policies/compute.restrictPrivateServiceConnectProducer
    spec:
        rules:
          - values:
              allowedValues:
              - under:organizations/Producer-org-1
              - under:projects/Producer-project-1
              - under:folders/Producer-folder-1
    
  2. Appliquez la règle.

    gcloud org-policies set-policy /tmp/policy.yaml
    
  3. Affichez la règle en vigueur.

    gcloud org-policies describe compute.restrictPrivateServiceConnectProducer \
        --effective \
        --organization=CONSUMER_ORG
    

Empêcher les clients de déployer des points de terminaison par type de connexion

gcloud

  1. Créez un fichier temporaire appelé /tmp/policy.yaml pour stocker la nouvelle règle.

    • Pour empêcher les utilisateurs d'une organisation cliente de créer des points de terminaison qui se connectent aux API Google, ajoutez le contenu suivant au fichier :

      name: organizations/CONSUMER_ORG/policies/compute.disablePrivateServiceConnectCreationForConsumers
      spec:
        rules:
          - values:
              allowedValues:
              - SERVICE_PRODUCERS
      
    • Pour empêcher les utilisateurs d'une organisation cliente de créer des points de terminaison qui se connectent à des services publiés, ajoutez le contenu suivant au fichier :

      name: organizations/CONSUMER_ORG/policies/compute.disablePrivateServiceConnectCreationForConsumers
      spec:
        rules:
          - values:
              allowedValues:
              - GOOGLE_APIS
      

    Remplacez CONSUMER_ORG par le nom de l'organisation cliente pour laquelle vous souhaitez contrôler le déploiement des points de terminaison.

  2. Appliquez la règle.

    gcloud org-policies set-policy /tmp/policy.yaml
    
  3. Affichez la règle en vigueur.

    gcloud org-policies describe compute.restrictPrivateServiceConnectProducer \
        --effective \
        --organization=CONSUMER_ORG
    

Règles de pare-feu

Vous pouvez utiliser des règles de pare-feu VPC ou des stratégies de pare-feu pour contrôler l'accès aux ressources Private Service Connect. Les règles de pare-feu de sortie peuvent bloquer ou autoriser l'accès des instances de VM à l'adresse IP ou au sous-réseau des points de terminaison et des backends.

Par exemple, la figure 1 décrit une configuration dans laquelle les règles de pare-feu contrôlent l'accès au sous-réseau auquel le point de terminaison Private Service Connect est connecté.

Figure 1 : Les règles de pare-feu contrôlent le trafic vers le sous-réseau de point de terminaison. Le trafic provenant de vm-1 peut atteindre le sous-réseau de point de terminaison, tandis que le trafic provenant de vm-2 est bloqué.

  1. La règle de pare-feu suivante refuse tout trafic sortant vers le sous-réseau de point de terminaison:

    gcloud compute firewall-rules create deny-all \
        --network=vpc-1 \
        --direction=egress \
        --action=deny \
        --destination-ranges=10.33.0.0/24
        --priority=1000
    
  2. La règle de pare-feu de priorité supérieure suivante autorise le trafic sortant vers le sous-réseau de point de terminaison pour les VM comportant le tag réseau allow-psc:

    gcloud compute firewall-rules create allow-psc \
        --network=vpc-1 \
        --direction=egress \
        --action=allow \
        --target-tags=allow-psc \
        --destination-ranges=10.33.0.0/24
        --priority=100
    

Limiter l'accès aux points de terminaison ou aux backends à l'aide de règles de pare-feu

Pour limiter l'accès des VM au sous-réseau d'un point de terminaison ou d'un backend, procédez comme suit :

  1. Créez une règle de pare-feu pour refuser le trafic sortant vers le sous-réseau backend ou de point de terminaison.

    gcloud compute firewall-rules create deny-all \
        --network=NETWORK \
        --direction=egress \
        --action=deny \
        --destination-ranges=ENDPOINT_SUBNET_RANGE \
        --priority=1000
    

    Remplacez les éléments suivants :

    • NETWORK: nom du réseau de votre point de terminaison ou de votre backend.
    • ENDPOINT_SUBNET_RANGE: plage CIDR d'adresse IP du point de terminaison ou du sous-réseau backend dont vous souhaitez contrôler l'accès.
  2. Créez une deuxième règle de pare-feu pour autoriser le trafic de sortie des VM taguées vers le point de terminaison ou le sous-réseau backend.

    gcloud compute firewall-rules create allow-psc \
        --network=NETWORK \
        --direction=egress \
        --action=allow \
        --target-tags=allow-psc \
        --destination-ranges=ENDPOINT_SUBNET_RANGE \
        --priority=100