Ce tutoriel vous explique comment protéger Compute Engine à l'aide d'un périmètre de service et comment résoudre un problème d'entrée pour autoriser l'accès à Compute Engine.
VPC Service Controls vous permet de définir un périmètre de service autour des ressources des services gérés par Google afin de contrôler les communications avec et entre ces services. Vous pouvez établir un périmètre zéro confiance autour de vos ressources sensibles, en limitant l'accès aux adresses IP, aux utilisateurs et aux appareils autorisés. Cette fonctionnalité vous permet de définir des règles de sécurité qui empêchent l'accès aux services gérés par Google en dehors d'un périmètre approuvé, de bloquer l'accès aux données depuis des emplacements non approuvés et de limiter les risques d'exfiltration des données.
Ce tutoriel s'adresse aux administrateurs d'organisation Trusted Cloud qui souhaitent découvrir les concepts de base de VPC Service Controls.
Objectifs
- Comprendre les principes de base de VPC Service Controls.
- Créer un périmètre de service
- Protéger un projet à l'aide de VPC Service Controls.
- Résolvez un problème de non-respect des règles d'entrée VPC Service Controls.
Coûts
Dans ce document, vous utilisez les composants facturables suivants de Trusted Cloud by S3NS :
Pour obtenir une estimation des coûts en fonction de votre utilisation prévue, utilisez le simulateur de coût.
Une fois que vous avez terminé les tâches décrites dans ce document, vous pouvez éviter de continuer à payer des frais en supprimant les ressources que vous avez créées. Pour en savoir plus, consultez la section Effectuer un nettoyage.
Avant de commencer
Vous devez disposer d'une Trusted Cloud ressource Organisation. Si vous n'avez pas encore de compte Google Workspace ou Cloud Identity, vous devez en acquérir un. Une ressource Organisation sera alors automatiquement créée pour vous.
Créez un dossier,
Exercise
, au niveau de l'organisation.Créez deux projets,
My-Project-1
etMy-Project-2
, dans le dossierExercise
de la même organisation.Assurez-vous de disposer des autorisations et des rôles suivants au niveau de l'organisation :
Autorisations et rôles requis pour configurer VPC Service Controls.
Autorisations et rôles requis pour gérer Compute Engine.
Créer un périmètre de service
Créez un périmètre de service qui protège l'API Compute Engine dans le projet My-Project-2
:
Dans la console Trusted Cloud , accédez à la page VPC Service Controls.
Accéder à VPC Service Controls
Assurez-vous d'être dans le champ d'application de l'organisation.
Cliquez sur Gérer les règles.
Créez une règle d'accès dont la portée est limitée au dossier
Exercise
.Créez un périmètre en indiquant les informations suivantes :
Titre :
MyFirstPerimeter
Type de périmètre : Standard
Mode d'application : Application forcée
Ressources à protéger : projet
My-Project-2
Services restreints : API Compute Engine
Vérifier le périmètre
Dans cette section, vous pouvez envoyer des demandes d'accès aux ressources des projets pour confirmer si le périmètre protège les ressources souhaitées.
Accédez au projet
My-Project-1
et vérifiez que vous pouvez accéder à Compute Engine en accédant à la page Instances de VM.Accéder à la page Instances de VM
Vous devriez pouvoir y accéder, car
My-Project-1
n'est pas protégé par le périmètre que vous avez créé précédemment.Accédez au projet
My-Project-2
et vérifiez que vous pouvez accéder à Compute Engine en accédant à la page Instances de VM.Vous devriez constater que VPC Service Controls refuse votre demande d'accès à Compute Engine, car le périmètre
MyFirstPerimeter
protègeMy-Project-2
et l'API Compute Engine.
Résoudre un problème de non-respect
Les journaux d'audit de VPC Service Controls incluent des détails sur les requêtes adressées à des ressources protégées et la raison pour laquelle VPC Service Controls a refusé la requête. Vous avez besoin de ces informations pour identifier et résoudre le problème de non-respect dans le projet My-Project-2
.
Consulter les journaux d'audit
Recherchez l'ID unique du non-respect de VPC Service Controls dans les journaux d'audit du projet
My-Project-2
:-
Dans la console Trusted Cloud , accédez à la page Explorateur de journaux.
Accéder à l'explorateur de journaux
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Sélectionnez le projet
My-Project-2
.Pour afficher tous les journaux d'audit, saisissez la requête suivante dans le champ de l'éditeur de requête :
resource.type="audited_resource" protoPayload.metadata."@type"="type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"
Cliquez sur Exécuter la requête.
Cette requête affiche tous les journaux d'audit VPC Service Controls. Pour trouver les détails de l'infraction concernant l'accès à l'API Compute Engine dans le projet
My-Project-2
, consultez le dernier journal des erreurs.Pour en savoir plus, consultez Afficher les journaux.
-
Dans le volet Résultats de la requête, cliquez sur VPC Service Controls à côté du refus que vous souhaitez résoudre, puis sur Dépanner le refus.
La page de l'outil de dépannage de VPC Service Controls s'ouvre. Cette page indique la raison de la non-conformité et d'autres informations, par exemple si la non-conformité concerne l'entrée ou la sortie.
Dans ce tutoriel, recherchez les informations suivantes :
"principalEmail": "USER@DOMAIN" "callerIp": "PUBLIC_IP_ADDRESS" "serviceName": "compute.googleapis.com" "servicePerimeterName": "accessPolicies/POLICY_NUMBER/servicePerimeters/MyFirstPerimeter "ingressViolations": [ { "targetResource": "projects/PROJECT_NUMBER", "servicePerimeter": "accessPolicies/POLICY_NUMBER/servicePerimeters/MyFirstPerimeter" } ], "violationReason": "NO_MATCHING_ACCESS_LEVEL", "resourceNames": "PROJECT_ID"
Le motif de la violation est le suivant :
"NO_MATCHING_ACCESS_LEVEL"
. Le non-respect de la règle"NO_MATCHING_ACCESS_LEVEL"
se produit lorsque l'adresse IP, le type d'appareil ou l'identité de l'utilisateur ne correspondent à aucune règle d'entrée ni à aucun niveau d'accès associés au périmètre. Si l'adresse IP de l'appelant est manquante ou apparaît en tant qu'adresse IP interne dans le journal, cette violation peut être due à un service Trusted Cloud qui n'est pas compatible avec VPC Service Controls.
Pour corriger ce refus dans le projet My-Project-2
, deux options s'offrent à vous :
Créez un niveau d'accès qui autorise l'accès à l'adresse IP de votre système au projet situé dans le périmètre.
Créez une règle d'entrée qui autorise l'accès à un client API depuis l'extérieur du périmètre aux ressources situées à l'intérieur du périmètre.
La section suivante explique comment résoudre ce refus en créant un niveau d'accès.
Créer un niveau d'accès
Dans la console Trusted Cloud , accédez à la page Access Context Manager au niveau du dossier
Exercise
.Créez un niveau d'accès en fournissant les informations suivantes :
Pour Créer des conditions en, sélectionnez Mode de base.
Pour Lorsque la condition est remplie, renvoyer, sélectionnez Vrai.
Sélectionnez l'attribut Sous-réseaux d'IP, puis spécifiez l'adresse IP publique de votre système.
Sélectionnez l'attribut Zones géographiques, puis indiquez votre zone géographique.
Ce niveau d'accès n'autorise l'accès que lorsque l'adresse IP et la zone géographique correspondent.
Accédez à la page VPC Service Controls au niveau de l'organisation.
Sélectionnez la règle d'accès que vous avez créée précédemment dans ce tutoriel.
Ajoutez le niveau d'accès que vous avez créé au niveau du dossier
Exercise
au périmètreMyFirstPerimeter
.
Tester l'accès
Après avoir ajouté le niveau d'accès, vérifiez que vous pouvez accéder à Compute Engine dans le projet My-Project-2
et créer une instance de VM.
Dans la console Trusted Cloud , accédez à la page Instances de VM.
Au bout d'une minute environ, Compute Engine crée une instance de VM. Cette action permet de vérifier que vous disposez d'un accès complet à Compute Engine protégé à l'intérieur du périmètre.
Effectuer un nettoyage
Pour éviter que les ressources utilisées lors de ce tutoriel soient facturées sur votre compte Google Cloud, supprimez le projet contenant les ressources, ou conservez le projet et supprimez les ressources individuelles.
Supprimer le projet
- In the Trusted Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Supprimer des ressources individuelles
Supprimer des instances de VM
- In the Trusted Cloud console, go to the VM instances page.
- Select the checkbox for the instance that you want to delete.
- To delete the instance, click More actions, click Delete, and then follow the instructions.
Supprimer des ressources VPC Service Controls
Supprimez le niveau d'accès que vous avez créé au niveau du dossier
Exercise
.