Créer un périmètre de service

Cette page explique comment créer un périmètre de service.

Avant de commencer

Créer un périmètre de service

Cette section explique comment créer un périmètre de service, y compris comment inclure des projets et protéger des services.

Lorsque vous créez un périmètre de service, vous pouvez éventuellement autoriser l'accès aux services protégés à l'extérieur du périmètre et indiquer les services accessibles à d'autres services et utilisateurs à l'intérieur du périmètre. Si vous préférez, vous pouvez configurer ces paramètres après avoir créé un périmètre.

Une fois le périmètre de service créé, la prise en compte et la propagation 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. Si vous y êtes invité, sélectionnez votre organisation. Les périmètres ne peuvent pas être créés au niveau du projet.

  3. En haut de la page VPC Service Controls, sélectionnez un mode de périmètre. Par défaut, le mode application forcée est sélectionné. Si vous souhaitez créer un périmètre en mode simulation, cliquez sur Mode de simulation.

    Les périmètres en mode application forcée empêchent activement l'accès aux services protégés. Les périmètres en mode simulation consignent les violations du périmètre comme si les services étaient protégés, mais n'empêchent pas l'accès à ces services. Pour plus d'informations sur les modes application forcée et de simulation, consultez la page sur les périmètres de service.

  4. Cliquez sur Nouveau périmètre.

  5. Sur la page Nouveau périmètre de service VPC, saisissez un nom dans le champ Nom du périmètre.

  6. Sélectionnez les projets que vous souhaitez sécuriser au sein du périmètre :

    1. Sous Projets à protéger, cliquez sur Ajouter des projets.

    2. Pour ajouter un projet au périmètre, cochez la case associée à ce projet dans la fenêtre Ajouter des projets.

    3. Cliquez sur Ajouter n projets, où n correspond au nombre de projets que vous avez sélectionnés à l'étape précédente.

  7. Sélectionnez les services que vous souhaitez sécuriser au sein du périmètre :

    1. Sous Services à protéger, cliquez sur Ajouter des services.

    2. Pour sécuriser des services dans le périmètre, dans la fenêtre Spécifier les services à limiter, cochez la case correspondant à ces services.

    3. Cliquez sur Ajouter n services, où n correspond au nombre de services que vous avez sélectionnés à l'étape précédente.

  8. (Facultatif) Si vous souhaitez définir les services accessibles dans un périmètre (par exemple, à partir de VM d'un réseau VPC hébergé par l'un des projets que vous avez précédemment sélectionnés) :

    1. Sous Services accessibles par VPC, cliquez sur Ajouter des services VPC limités. Vous ne pouvez rendre des services accessibles que si vous les protégez également à l'aide du périmètre.

      Vous pouvez également ajouter des services accessibles après la création d'un périmètre.

    2. Dans la fenêtre Spécifier les services à limiter, cochez la case située à côté de chaque ligne correspondant à un service que vous souhaitez rendre accessible dans votre périmètre.

    3. Cliquez sur Ajouter n services, où n correspond au nombre de services que vous avez sélectionnés à l'étape précédente.

  9. (Facultatif) Si vous souhaitez autoriser les requêtes adressées à des services protégés depuis l'extérieur du périmètre :

    1. Cochez la case Sélectionnez le niveau d'accès.

      Vous pouvez également ajouter des niveaux d'accès après la création d'un périmètre.

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

  10. Cliquez sur le bouton Enregistrer.

gcloud

Pour créer un périmètre, exécutez la commande create.

gcloud [beta] access-context-manager perimeters [dry-run] create NAME \
  --title=TITLE \
  --resources=PROJECTS \
  --restricted-services=RESTRICTED-SERVICES \
  [--levels=LEVELS] \
  [--enable-vpc-accessible-services] \
  [--add-vpc-allowed-services=ACCESSIBLE-SERVICES] \
  --policy=POLICY_NAME

Où :

  • beta et dry-run ne sont obligatoires que si vous souhaitez créer le périmètre en mode de simulation. Par exemple, gcloud beta access-context-manager perimeters dry-run create ....

  • NAME est le nom du périmètre.

  • TITLE est le titre lisible du périmètre.

  • PROJECTS est une liste d'un ou de plusieurs numéros de projet, séparés par une virgule. Par exemple, projects/12345 ou projects/12345,projects/67890. Seuls les numéros de projet sont acceptés. Vous ne pouvez pas utiliser le nom ni l'ID du projet.

  • RESTRICTED-SERVICES est une liste d'un ou de plusieurs services, séparés par une virgule. Par exemple, storage.googleapis.com ou storage.googleapis.com,bigquery.googleapis.com.

  • POLICY_NAME est le nom (au format numérique) de la règle d'accès de votre organisation. Exemple :330193482019 Vous ne devez inclure le nom de la règle que si vous n'avez pas défini de règle d'accès par défaut.

Options supplémentaires :

  • --levels n'est requis que si vous souhaitez ajouter des niveaux d'accès lors de la création du périmètre. LEVELS est une liste d'un ou de plusieurs niveaux d'accès, séparés par une virgule, que vous souhaitez appliquer au périmètre de service.

    Vous pouvez également ajouter des niveaux d'accès après avoir créé le périmètre.

  • --enable-vpc-accessible-services et --add-vpc-allowed-services ne sont obligatoires que si vous souhaitez ajouter des services accessibles par VPC lors de la création du périmètre. ACCESSIBLE-SERVICES est une liste d'un ou de plusieurs services, séparés par une virgule, 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.

    Vous ne pouvez rendre un service accessible que si vous le protégez également lors de la configuration du périmètre.

    Pour inclure rapidement tous les services protégés par un périmètre, spécifiez RESTRICTED-SERVICES dans la liste de ACCESSIBLE-SERVICES. Exemple : --add-vpc-allowed-services=RESTRICTED-SERVICES.

    Vous pouvez également définir des services accessibles par VPC après avoir créé le périmètre.

Par exemple, la commande suivante crée un périmètre nommé ProdPerimeter, qui inclut les projets example-project et example-project2, et limite les API Cloud Storage et BigQuery.

gcloud access-context-manager perimeters \
  create ProdPerimeter --title="Production Perimeter" \
  --resources=projects/12345,projects/67890 \
  --restricted-services=storage.googleapis.com,bigquery.googleapis.com \
  --policy=330193482019

API

Pour créer un périmètre de service, appelez accessPolicies.servicePerimeters.create.

POST https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/servicePerimeters

Où :

  • POLICY_NAME est le nom (au format numérique) de la règle d'accès de votre organisation. Exemple :330193482019

Corps de la requête

Le corps de la requête doit inclure une ressource ServicePerimeter qui définit le périmètre de service.

Pour la ressource ServicePerimeter, spécifiez PERIMETER_TYPE_REGULAR pour perimeterType.

Mode de simulation

Le périmètre proposé doit être inclus en tant que spec, et useExplicitDryRunSpec doit être défini sur "true".

Corps de la réponse

Si la requête aboutit, le corps de la réponse de l'appel contient une ressource Operation qui fournit des détails sur l'opération POST.

Étape suivante