Gérer les périmètres de service

Cette page explique comment gérer les périmètres de service dans VPC Service Controls. Pour en savoir plus sur la création de périmètres de service, consultez la section Créer des périmètres de service.

Cette page comprend les sections suivantes :

Avant de commencer

Répertorier et décrire les périmètres de service

Pour répertorier les périmètres de service d'une organisation, procédez comme suit :

Console

  1. Dans le menu de navigation de Google Cloud Console, cliquez sur Sécurité, puis sur VPC Service Controls.

    Accéder à la page "VPC Service Controls"

  2. Sur la page VPC Service Controls, dans le tableau, cliquez sur le nom du périmètre de service que vous souhaitez afficher.

gcloud

Pour répertorier les périmètres de service de votre organisation, utilisez la commande list :

gcloud access-context-manager perimeters list \
  [--policy=POLICY_NAME]

Où :

  • POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.

La liste des périmètres de votre organisation devrait apparaître. Exemple :

NAME           TITLE
ProdPerimeter  Production Perimeter

Pour afficher les détails d'un périmètre de service, utilisez la commande describe :

gcloud access-context-manager perimeters \
  describe PERIMETER_NAME \
  [--policy=POLICY_NAME]

Où :

  • PERIMETER_NAME est le nom du périmètre de service pour lequel vous souhaitez obtenir des détails.

  • POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.

Les détails du périmètre devraient s'afficher. Exemple :

accessLevels:
- accessPolicies/626111171578/accessLevels/corpAccess
resources:
- projects/111584792408
restrictedServices:
- bigquery.googleapis.com
- storage.googleapis.com
title: Production Perimeter

Répertorier les périmètres de service (formatés)

L'outil de ligne de commande gcloud vous permet d'obtenir la liste de vos périmètres de service au format YAML ou JSON.

Pour obtenir une liste de périmètres mise en forme, utilisez la commande list.

gcloud access-context-manager perimeters list \
  --format=FORMAT \
  [--policy=POLICY_NAME]

Où :

  • FORMAT est l'une des valeurs suivantes :

    • list (format YAML)

    • json (format JSON)

  • POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.

La sortie YAML sera semblable à ce qui suit :

- name: accessPolicies/165717541651/servicePerimeters/On_Prem
  status: {'resources': ['projects/167410821371'], 'restrictedServices': ['bigquery.googleapis.com', 'storage.googleapis.com']}
  title: On Prem
- name: accessPolicies/165717541651/servicePerimeters/Private
  spec: {'resources': ['projects/136109111311'], 'restrictedServices': ['bigquery.googleapis.com', 'storage.googleapis.com', 'logging.googleapis.com']}
  status: {'resources': ['projects/136109111311', 'projects/401921913171'], 'restrictedServices': ['bigquery.googleapis.com']}
  title: Private
  useExplicitDryRunSpec: True
- name: accessPolicies/165717541651/servicePerimeters/OnpremBridge
  perimeterType: PERIMETER_TYPE_BRIDGE
  status: {'resources': ['projects/167410821371']}
  title: OnpremBridge

La sortie JSON sera semblable à ce qui suit :

[
  {
    "name": "accessPolicies/165717541651/servicePerimeters/On_Prem",
    "status": {
      "resources": [
        "projects/167410821371"
      ],
      "restrictedServices": [
        "bigquery.googleapis.com",
        "storage.googleapis.com"
      ]
    },
    "title": "On Prem"
  },
  {
    "name": "accessPolicies/165717541651/servicePerimeters/Private",
    "spec": {
      "resources": [
        "projects/136109111311"
      ],
      "restrictedServices": [
        "bigquery.googleapis.com",
        "storage.googleapis.com",
        "logging.googleapis.com"
      ]
    },
    "status": {
      "resources": [
        "projects/136109111311",
        "projects/401921913171"
      ],
      "restrictedServices": [
        "bigquery.googleapis.com"
      ]
    },
    "title": "Private",
    "useExplicitDryRunSpec": true
  },
  {
    "name": "accessPolicies/165717541651/servicePerimeters/OnpremBridge",
    "perimeterType": "PERIMETER_TYPE_BRIDGE",
    "status": {
      "resources": [
        "projects/167410821371"
      ]
    },
    "title": "OnpremBridge"
  }
]

Mettre à jour un périmètre de service

Vous pouvez ajouter des projets Google Cloud à un périmètre de service ou en supprimer. Vous pouvez modifier la liste des services Google Cloud limités ou même modifier le titre et la description d'un périmètre de service. Pour ce faire, vous devez fournir la liste complète des ressources.

Cette section explique comment mettre à jour des périmètres de service individuels. Pour mettre à jour l'ensemble des périmètres de service de votre organisation en une seule opération, consultez la section Apporter des modifications groupées aux périmètres de service.

Après la mise à jour d'un périmètre de service, la propagation et la prise en compte des modifications peuvent prendre jusqu'à 30 minutes.

Console

  1. Dans le menu de navigation de Google Cloud Console, cliquez sur Sécurité, puis sur VPC Service Controls.

    Accéder à la page "VPC Service Controls"

  2. Sur la page VPC Service Controls, dans le tableau, cliquez sur le nom du périmètre de service que vous souhaitez modifier.

  3. Sur la page Modifier le périmètre de service VPC, mettez à jour le périmètre de service.

  4. Cliquez sur Enregistrer.

gcloud

Pour ajouter des projets à un périmètre, utilisez la commande update et spécifiez les ressources à ajouter :

gcloud access-context-manager perimeters update PERIMETER_NAME \
  --add-resources=PROJECTS \
  [--policy=POLICY_NAME]

Où :

  • PERIMETER_NAME est le nom du périmètre de service pour lequel vous souhaitez obtenir des détails.

  • PROJECTS est une liste d'ID de projet séparés par des virgules. Par exemple, projects/100712 ou projects/100712,projects/233130.

  • POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.

Pour mettre à jour la liste des services limités, exécutez la commande update et spécifiez la liste des services à ajouter, en les séparant par des virgules :

gcloud access-context-manager perimeters update PERIMETER_ID \
  --add-restricted-services=SERVICES \
  [--policy=POLICY_NAME]

Où :

  • PERIMETER_NAME est le nom du périmètre de service pour lequel vous souhaitez obtenir des détails.

  • SERVICES est une liste de services séparés par des virgules. Par exemple, storage.googleapis.com ou storage.googleapis.com,bigquery.googleapis.com.

  • POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.

Ajouter un niveau d'accès à un périmètre existant

Une fois que vous avez créé un niveau d'accès, vous pouvez l'appliquer à un périmètre de service afin de contrôler l'accès.

Après la mise à jour d'un périmètre de service, la propagation et la prise en compte des modifications peuvent prendre jusqu'à 30 minutes.

Console

  1. Dans le menu de navigation de Google Cloud Console, cliquez sur Sécurité, puis sur VPC Service Controls.

    Accéder à la page "VPC Service Controls"

  2. Sur la page VPC Service Controls, dans le tableau, cliquez sur le nom du périmètre de service que vous souhaitez modifier.

  3. Sur la page Modifier le périmètre de service VPC, cliquez sur Sélectionnez le niveau d'accès.

  4. Cochez les cases correspondant aux niveaux d'accès que vous souhaitez appliquer au périmètre de service.

  5. Cliquez sur Enregistrer.

gcloud

Pour ajouter un niveau d'accès à un périmètre de service existant, utilisez la commande update :

gcloud access-context-manager perimeters update PERIMETER_NAME \
  --add-access-levels=LEVEL_NAME \
  [--policy=POLICY_NAME]

Où :

  • PERIMETER_NAME est le nom du périmètre de service.

  • LEVEL_NAME est le nom du niveau d'accès que vous souhaitez ajouter au périmètre.

  • POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.

Supprimer un périmètre de service

Lorsque vous supprimez un périmètre de service, les contrôles de sécurité associés au périmètre ne s'appliquent plus aux projets Google Cloud associés. Il n'y a aucun autre impact sur les projets Google Cloud membres ni sur les ressources associées.

Console

  1. Dans le menu de navigation de Google Cloud Console, cliquez sur Sécurité, puis sur VPC Service Controls.

    Accéder à la page "VPC Service Controls"

  2. Sur la page VPC Service Controls, dans la ligne du tableau correspondant au périmètre que vous souhaitez supprimer, cliquez sur le bouton .

gcloud

Pour supprimer un périmètre de service, utilisez la commande delete :

gcloud access-context-manager perimeters delete PERIMETER_NAME \
  [--policy=POLICY_NAME]

Où :

  • PERIMETER_NAME est le nom du périmètre de service.

  • POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.

Limiter l'accès aux services dans un périmètre avec des services accessibles au VPC

Cette section explique comment activer, ajouter, supprimer et désactiver des services accessibles au VPC.

La fonctionnalité de services accessibles au VPC permet de limiter l'ensemble de services accessibles à partir de points de terminaison du réseau dans votre périmètre de service. Les services accessibles au VPC ne peuvent être ajoutés qu'aux périmètres de service, et non aux liaisons de périmètre.

Pour en savoir plus sur la fonctionnalité de services accessibles au VPC, consultez la documentation sur les services accessibles au VPC.

Activer les services accessibles au VPC

Pour activer les services accessibles au VPC pour votre périmètre de service, utilisez la commande suivante :

gcloud access-context-manager perimeters update PERIMETER_NAME \
  --enable-vpc-accessible-services \
  --add-vpc-allowed-services=SERVICES \
  [--policy=POLICY_NAME]

Où :

  • PERIMETER_NAME est le nom du périmètre de service.

  • SERVICES est une liste d'un ou de plusieurs services, séparés par des virgules, auxquels vous souhaitez autoriser l'accès aux réseaux à l'intérieur de votre périmètre. L'accès à des services non inclus dans cette liste sera impossible.

    Pour inclure rapidement les services protégés par le périmètre, ajoutez RESTRICTED-SERVICES à la liste de SERVICES. Vous pouvez inclure d'autres services en plus de RESTRICTED-SERVICES.

  • POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.

Par exemple, si vous souhaitez que les réseaux VPC de votre périmètre n'aient accès qu'aux services Logging et Cloud Storage, utilisez la commande suivante :

gcloud access-context-manager perimeters update example_perimeter \
  --enable-vpc-accessible-services \
  --add-vpc-allowed-services=RESTRICTED-SERVICES,logging.googleapis.com,storage.googleapis.com \
  --policy=11271009391

Ajouter un service aux services accessibles au VPC

Pour ajouter des services supplémentaires aux services accessibles au VPC pour votre périmètre, utilisez la commande suivante :

gcloud access-context-manager perimeters update PERIMETER_NAME \
  --add-vpc-allowed-services=SERVICES \
  [--policy=POLICY_NAME]

Où :

  • PERIMETER_NAME est le nom du périmètre de service.

  • SERVICES est une liste d'un ou de plusieurs services, séparés par des virgules, auxquels vous souhaitez autoriser l'accès aux réseaux à l'intérieur de votre périmètre.

    Pour inclure rapidement les services protégés par le périmètre, ajoutez RESTRICTED-SERVICES à la liste de SERVICES. Vous pouvez inclure des services distincts en plus de RESTRICTED-SERVICES.

  • POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.

Par exemple, si vous aviez déjà activé les services accessibles au VPC et que vous souhaitez que les réseaux VPC de votre périmètre aient également accès au service Pub/Sub, utilisez la commande suivante :

gcloud access-context-manager perimeters update example_perimeter \
  --add-vpc-allowed-services=RESTRICTED-SERVICES,pubsub.googleapis.com \
  --policy=11271009391

Supprimer un service des services accessibles au VPC

Pour supprimer des services des services accessibles au VPC pour votre périmètre de service, utilisez la commande suivante :

gcloud access-context-manager perimeters update PERIMETER_NAME \
  --remove-vpc-allowed-services=SERVICES \
  [--policy=POLICY_NAME]

Où :

  • PERIMETER_NAME est le nom du périmètre de service.

  • SERVICES est une liste d'un ou de plusieurs services, séparés par des virgules, que vous souhaitez supprimer de la liste des services auxquels les réseaux dans votre périmètre de service sont autorisés à accéder.

  • POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.

Par exemple, si vous avez déjà activé les services accessibles au VPC et que vous ne souhaitez plus que les réseaux VPC de votre périmètre aient accès au service Cloud Storage, utilisez la commande suivante :

gcloud access-context-manager perimeters update example_perimeter \
  --remove-vpc-allowed-services=storage.googleapis.com \
  --policy=11271009391

Désactiver les services accessibles au VPC

Pour désactiver les restrictions de service VPC pour votre périmètre de service, utilisez la commande suivante :

gcloud access-context-manager perimeters update PERIMETER_NAME \
  --no-enable-vpc-accessible-services \
  --clear-vpc-allowed-services \
  [--policy=POLICY_NAME]

Où :

  • PERIMETER_NAME est le nom du périmètre de service.

  • POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.

Par exemple, pour désactiver les restrictions de service VPC pour example_perimeter, utilisez la commande suivante :

gcloud access-context-manager perimeters update example_perimeter \
  --no-enable-vpc-accessible-services \
  --clear-vpc-allowed-services \
  --policy=11271009391

Services accessibles au VPC et API Access Context Manager

L'API Access Context Manager peut également être utilisée pour gérer les services accessibles au VPC. Lors de la création ou de la modification d'un périmètre de service, utilisez l'objet ServicePerimeterConfig dans le corps de la réponse pour configurer vos services accessibles au VPC.