Utiliser VPC Service Controls
Cette page explique comment utiliser VPC Service Controls pour configurer un notebook Colab Enterprise dans un périmètre de service.
Présentation
VPC Service Controls est une fonctionnalité Google Cloud qui vous permet de configurer un périmètre pour vous protéger contre l'exfiltration de données.
VPC Service Controls offre un niveau de protection supplémentaire pour les servicesGoogle Cloud , indépendamment de la protection fournie par Identity and Access Management (IAM).
Lorsque vous utilisez Colab Enterprise dans un périmètre de service, les environnements d'exécution sont soumis à ce périmètre. Par conséquent, pour exécuter du code de notebook qui interagit avec d'autres API et services Google, vous devez ajouter ces services au périmètre de service.
Pour en savoir plus sur VPC Service Controls, consultez la page Présentation de VPC Service Controls.
Limitations connues
Colab Enterprise utilise Dataform pour stocker les notebooks.
Pour en savoir plus sur l'utilisation de VPC Service Controls avec Dataform, consultez Configurer VPC Service Controls pour Dataform.
L'interface utilisateur Colab Enterprise n'est accessible que depuis la console Google Cloud . Pour en savoir plus sur les limites de VPC Service Controls pour la consoleGoogle Cloud , consultez les limites de la consoleGoogle Cloud .
Si votre périmètre de service a besoin d'accéder aux services Vertex AI, consultez Limites de VPC Service Controls avec Colab Enterprise.
Rôles requis
Pour obtenir les autorisations nécessaires pour utiliser les VPC Service Controls avec Colab Enterprise, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le projet :
-
Éditeur Access Context Manager (
roles/accesscontextmanager.policyEditor
) -
Utilisateur Colab Enterprise (
roles/aiplatform.colabEnterpriseUser
)
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.
Pour en savoir plus sur les autorisations VPC Service Controls, consultez Contrôle des accès avec IAM.
Créer un périmètre de service
Créez un périmètre de service à l'aide de VPC Service Controls. Ce périmètre de service protège les ressources de services gérées par Google que vous spécifiez. Lors de la création du périmètre de service, procédez comme suit :
Au moment de l'ajout des projets au périmètre de service, ajoutez le projet qui contient vos notebooks Colab Enterprise ou créez des notebooks dans ce projet.
Au moment de l'ajout des services au périmètre de service, ajoutez les éléments suivants :
- API Vertex AI (
aiplatform.googleapis.com
) - API Dataform (
dataform.googleapis.com
)
- API Vertex AI (
Si vous avez créé le périmètre de service sans ajouter les projets et services nécessaires, consultez la section Gérer les périmètres de service et mettez le périmètre de service à jour.
Accorder l'accès à l'interface utilisateur Colab Enterprise
Comme l'UI Colab Enterprise (colab-embedded.cloud.google.com
) n'est accessible que par Internet, elle est considérée comme étant extérieure aux périmètres de service. Lorsque vous appliquez un périmètre de service, l'interface de la console Google Cloud pour les services que vous avez protégés peut devenir partiellement ou totalement inaccessible. Par exemple, si vous protégez Colab Enterprise avec le périmètre, l'interface Colab Enterprise de la console Google Cloud devient inaccessible.
Pour autoriser l'accès de la console Google Cloud aux ressources protégées par un périmètre, vous devez créer un niveau d'accès pour une plage d'adresses IP publique incluant les machines des utilisateurs souhaitant utiliser la console Google Cloud avec des API protégées. Par exemple, vous pouvez ajouter la plage d'adresses IP publique de la passerelle NAT de votre réseau privé à un niveau d'accès, puis attribuer ce niveau d'accès au périmètre de service.
Si vous souhaitez limiter l'accès de la console Google Cloud au périmètre pour un groupe d'utilisateurs spécifique, vous pouvez également ajouter ces utilisateurs à un niveau d'accès. Dans ce cas, seuls les utilisateurs spécifiés pourront accéder à la consoleGoogle Cloud .
Configurer des services accessibles par VPC (facultatif)
Lorsque vous activez les services accessibles par VPC pour un périmètre, l'accès depuis les points de terminaison du réseau à l'intérieur de votre périmètre est limité à un ensemble de services que vous spécifiez.
Pour savoir comment limiter l'accès dans votre périmètre à un ensemble spécifique de services uniquement, consultez Services accessibles par VPC.
Utiliser l'accès privé à Google avec votre réseau VPC (facultatif)
L'accès privé à Google offre une connectivité privée aux hôtes d'un réseau VPC ou sur site qui utilisent des adresses IP privées pour accéder aux API et services Google Cloud . Vous pouvez étendre un périmètre de service VPC Service Controls aux hôtes de ces réseaux afin de contrôler l'accès aux ressources protégées. Les hôtes d'un réseau VPC doivent posséder une adresse IP privée uniquement (pas d'adresse IP publique) et se trouver dans un sous-réseau avec l'accès privé à Google activé. Pour en savoir plus, consultez la section Connectivité privée à partir de réseaux sur site.
Pour vous assurer de pouvoir utiliser l'accès privé à Google avec votre réseau VPC, vous devez configurer certains enregistrements DNS.
Configurer les entrées DNS à l'aide de Cloud DNS
Les environnements d'exécution Colab Enterprise utilisent plusieurs domaines qu'un réseau VPC ne gère pas par défaut. À l'aide de Cloud DNS, ajoutez des enregistrements DNS pour faire en sorte que votre réseau VPC gère correctement les requêtes envoyées à ces domaines. Pour en savoir plus sur les routes VPC, consultez Routes.
Cette section vous explique comment créer une zone gérée pour un domaine, ajouter une entrée DNS qui acheminera la requête et exécuter la transaction. Répétez ces étapes pour chacun des différents domaines devant être capable de gérer les requêtes, en commençant par *.aiplatform.googleapis.com
.
Dans Cloud Shell ou dans tout environnement dans lequel Google Cloud CLI est installé, saisissez les commandes suivantes de la CLI gcloud.
-
Pour créer une zone gérée privée pour l'un des domaines que votre réseau VPC doit gérer :
gcloud dns managed-zones create ZONE_NAME \ --visibility=private \ --networks=https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME \ --dns-name=DNS_NAME. \ --description="Description of your managed zone"
Remplacez les éléments suivants :
-
ZONE_NAME
: nom de la zone à créer. Vous devez utiliser une zone distincte pour chaque domaine. Cette zone est utilisée dans chacune des étapes suivantes. -
PROJECT_ID
: ID du projet hébergeant votre réseau VPC. -
NETWORK_NAME
: nom du réseau VPC que vous avez créé précédemment. -
DNS_NAME
: partie du nom de domaine qui suit*.
. Par exemple, le nom DNS de*.aiplatform.googleapis.com
estaiplatform.googleapis.com
.
-
-
Lancez une transaction.
gcloud dns record-sets transaction start --zone=ZONE_NAME
-
Ajoutez l'enregistrement DNS A suivant afin de rediriger le trafic vers les adresses IP restreintes de Google.
gcloud dns record-sets transaction add \ --name=DNS_NAME. \ --type=A 199.36.153.4 199.36.153.5 199.36.153.6 199.36.153.7 \ --zone=ZONE_NAME \ --ttl=300
-
Ajoutez l'enregistrement DNS CNAME suivant pour pointer vers l'enregistrement A que vous venez d'ajouter. Ainsi, tout le trafic correspondant au domaine est redirigé vers les adresses IP mentionnées à l'étape précédente.
gcloud dns record-sets transaction add \ --name=\*.DNS_NAME. \ --type=CNAME DNS_NAME. \ --zone=ZONE_NAME \ --ttl=300
-
Exécutez la transaction.
gcloud dns record-sets transaction execute --zone=ZONE_NAME
-
Répétez ces étapes pour chacun des domaines suivants. À chaque fois, remplacez ZONE_NAME et DNS_NAME par les valeurs appropriées pour le domaine. Les valeurs de PROJECT_ID et NETWORK_NAME doivent rester inchangées. N'oubliez pas que vous avez déjà effectué la configuration pour
*.aiplatform.googleapis.com
.*.aiplatform.googleapis.com
*.aiplatform-notebook.googleusercontent.com
*.aiplatform-notebook.cloud.google.com
Pour en savoir plus sur la configuration d'une connectivité privée, consultez Configurer une connectivité privée aux API et services Google.
Autoriser l'accès contextuel depuis l'extérieur du périmètre de service à l'aide de règles d'entrée
Vous pouvez autoriser l'accès contextuel aux ressources limitées par un périmètre en fonction d'attributs clients. Vous pouvez spécifier des attributs clients, tels que le type d'identité (compte de service ou utilisateur), l'identité, les données de l'appareil et l'origine du réseau (adresse IP ou réseau VPC).
Par exemple, vous pouvez configurer des règles d'entrée pour autoriser l'accès Internet aux ressources d'un périmètre en fonction de la plage d'adresses IPv4 et IPv6. Pour en savoir plus sur l'utilisation des règles d'entrée pour configurer l'accès contextuel, consultez la page Accès contextuel.
Configurer l'échange de données sécurisé à l'aide de règles d'entrée et de sortie
Vous ne pouvez inclure votre projet que dans un seul périmètre de service. Si vous souhaitez autoriser la communication au-delà des limites du périmètre, configurez des règles d'entrée et de sortie. Par exemple, vous pouvez spécifier des règles d'entrée et de sortie pour permettre aux projets de plusieurs périmètres de partager des journaux situés dans un autre périmètre. Pour en savoir plus sur les cas d'utilisation d'échange de données sécurisé, consultez Échange de données sécurisé.
Étapes suivantes
En savoir plus sur VPC Service Controls
En savoir plus sur les environnements d'exécution Colab Enterprise