Contrôler l'accès à Vertex AI Workbench

Vous pouvez accorder ou restreindre l'accès à Vertex AI Workbench pour une organisation ou un projet. Pour ce faire, vous devez définir une règle d'administration à l'aide du type de règle GDCHRestrictedService, qui vous permet de limiter les services que vous pouvez utiliser sur Google Distributed Cloud (GDC) air-gapped. Lorsqu'elle est appliquée, la règle empêche l'utilisation des API auxquelles elle fait référence.

Par exemple, vous pouvez utiliser ce type de règle pour limiter l'utilisation de Vertex AI Workbench à des projets spécifiques. Seules les organisations ou les projets non soumis à des restrictions peuvent créer ou modifier des notebooks JupyterLab. Vous pouvez également utiliser la règle pour restreindre complètement l'accès au service Vertex AI Workbench, car vous souhaitez effectuer des tests avant d'autoriser vos équipes à l'utiliser.

Cette page explique comment accorder et limiter l'accès à Vertex AI Workbench à l'aide du type de règle GDCHRestrictedService. Pour en savoir plus sur les règles d'administration et sur la façon de modifier la règle d'administration GDCHRestrictedService, consultez Configurer les règles d'administration.

Avant de commencer

  • Pour obtenir les autorisations nécessaires pour accorder ou restreindre l'accès à Vertex AI Workbench pour une organisation ou un projet, demandez à l'administrateur IAM de votre organisation de vous accorder le rôle de cluster Administrateur des règles de service restreintes GDC (gdchrestrictedservice-policy-admin). Ce rôle n'est pas lié à un espace de noms. Pour en savoir plus sur ce rôle, consultez Préparer les autorisations IAM.

  • Définissez le chemin d'accès au fichier kubeconfig de votre serveur d'API de gestion :

    export KUBECONFIG=MANAGEMENT_API_SERVER_KUBECONFIG
    

Créer des restrictions

Les sections suivantes expliquent comment créer, modifier, supprimer et afficher les restrictions pour des services spécifiques dans les espaces de noms de votre projet.

Créer ou modifier des restrictions

  • Pour créer ou mettre à jour des restrictions pour votre organisation, exécutez la commande suivante :

    kubectl --kubeconfig=${KUBECONFIG} apply -f  - <<EOF
    apiVersion: constraints.gatekeeper.sh/v1beta1
    kind: GDCHRestrictedService
    metadata:
      name: NAME
    spec:
      match:
        scope: "Namespaced"
        namespaces: PROJECT_NAMESPACE
        kinds:
        - apiGroups:
          - "aiplatform.gdc.goog"
          kinds:
          - Notebook
    EOF
    

Supprimer une restriction

  • Pour supprimer les restrictions, exécutez la commande suivante :

    kubectl delete GDCHRestrictedService NAME 
    

Décrire une restriction

  • Pour décrire les restrictions, exécutez la commande suivante :

    kubectl describe GDCHRestrictedService NAME 
    

Restreindre l'accès à Vertex AI Workbench pour votre organisation

Pour restreindre l'accès à Vertex AI Workbench pour votre organisation, modifiez le type de règle GDCHRestrictedService en ajoutant le groupe d'API aiplatform.gdc.goog et le type Notebook au champ kinds de la règle.

L'exemple suivant montre à quoi ressemble le champ kinds dans le type de règle GDCHRestrictedService lorsque vous limitez l'accès à Vertex AI Workbench pour l'ensemble de votre organisation :

apiVersion: constraints.gatekeeper.sh/v1beta1
kind: GDCHRestrictedService
metadata:
  name: restrict-notebook-for-organization
spec:
  match:
    scope: "Namespaced"
    kinds:
    - apiGroups:
      - "aiplatform.gdc.goog"
      kinds:
      - Notebook

[...]

Pour restaurer l'accès d'une organisation à Vertex AI Workbench, consultez Accorder l'accès à Vertex AI Workbench à votre organisation.

Restreindre l'accès à Vertex AI Workbench pour un projet

Pour restreindre l'accès à Vertex AI Workbench pour un projet, modifiez le type de règle GDCHRestrictedService en ajoutant le groupe d'API aiplatform.gdc.goog et le type Notebook au champ kinds de la règle pour l'espace de noms du projet.

La différence avec la restriction d'accès pour une organisation est que vous devez spécifier l'espace de noms que la règle doit affecter. Ajoutez le champ namespaces à la règle avec l'espace de noms de votre projet.

L'exemple suivant montre à quoi ressemble le champ kinds dans le type de stratégie GDCHRestrictedService lorsque vous limitez l'accès à Vertex AI Workbench pour un projet :

apiVersion: constraints.gatekeeper.sh/v1beta1
kind: GDCHRestrictedService
metadata:
  name: restrict-notebook-for-organization
spec:
  match:
    scope: "Namespaced"
    namespaces: [PROJECT_NAMESPACE]
    kinds:
    - apiGroups:
      - "aiplatform.gdc.goog"
      kinds:
      - Notebook

[...]

Remplacez PROJECT_NAMESPACE par l'espace de noms du projet pour lequel vous souhaitez restreindre l'accès à Vertex AI Workbench.

Accorder l'accès à Vertex AI Workbench pour votre organisation

Par défaut, les organisations Distributed Cloud ont accès à Vertex AI Workbench. Toutefois, si vous avez limité l'accès à Vertex AI Workbench pour votre organisation, vous pouvez l'accorder à nouveau.

Pour accorder l'accès à Vertex AI Workbench pour tous les projets de votre organisation, procédez comme suit :

  1. Identifiez le type de règle GDCHRestrictedService dans votre organisation.

  2. Recherchez le groupe d'API aiplatform.gdc.goog et le type Notebook dans le règlement.

  3. Si le groupe d'API aiplatform.gdc.goog et le type Notebook sont les seuls contenus du champ kinds de la règle, supprimez la ressource GDCHRestrictedService.

  4. Si la règle GDCHRestrictedService contient d'autres services restreints, supprimez le groupe d'API aiplatform.gdc.goog et le type Notebook du champ kinds, puis enregistrez les modifications apportées à la règle.