Gérer la sécurité pour les consommateurs Private Service Connect

Cette page explique comment les consommateurs de services peuvent configurer la sécurité pour les organisations consommatrices et les réseaux VPC qui utilisent Private Service Connect.

Les règles d'administration permettent aux administrateurs de contrôler de façon générale 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 aux ressources Private Service Connect au niveau du réseau Google Cloud. Les règles de pare-feu et les règles d'administration 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 page Gérer l'accès aux projets, aux dossiers et aux organisations.

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 page Gérer l'accès aux projets, aux dossiers et aux organisations.

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

Ressources : points de terminaison et backends

gcloud

  1. Créez un fichier temporaire nommé /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/433637338589
    

    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 à des 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 l'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

Ressources : points de terminaison

gcloud

  1. Créez un fichier temporaire nommé /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

Resources : toutes

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é.

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é (cliquez pour agrandir).
  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
    

Utiliser des règles de pare-feu pour limiter l'accès aux points de terminaison ou aux backends

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 sortant des VM taguées vers le sous-réseau de point de terminaison ou de 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