Controlar o acesso ao Vertex AI Workbench

Ao configurar uma política da organização GDCHRestrictedService, é possível controlar o acesso ao Vertex AI Workbench no Google Distributed Cloud (GDC) com isolamento físico. Quando aplicada, essa política bloqueia as APIs que ela referencia para que apenas organizações ou projetos não restritos possam criar e atualizar notebooks do JupyterLab. É possível limitar o Vertex AI Workbench a projetos específicos ou restringir o acesso em toda a organização durante os testes.

Para mais informações sobre políticas da organização, consulte Configurar políticas da organização.

Antes de começar

  • Para receber as permissões necessárias para conceder ou restringir o acesso ao Vertex AI Workbench para uma organização ou um projeto, peça ao administrador da organização do IAM para conceder a você o papel de cluster de administrador da política de serviço restrita do GDC (gdchrestrictedservice-policy-admin). Esse papel não está vinculado a um namespace. Para mais informações sobre esse papel, consulte Preparar permissões do IAM.

  • Defina o caminho para o kubeconfig do servidor de API de gerenciamento:

    export KUBECONFIG=MANAGEMENT_API_SERVER_KUBECONFIG
    

Criar restrições

As seções a seguir descrevem como criar, atualizar, excluir e visualizar restrições para serviços específicos nos namespaces do projeto.

Criar ou atualizar restrições

  • Para criar ou atualizar restrições para sua organização, execute:

    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
    

Excluir uma restrição

  • Para excluir restrições, execute:

    kubectl delete GDCHRestrictedService NAME 
    

Descrever uma restrição

  • Para descrever as restrições, execute:

    kubectl describe GDCHRestrictedService NAME 
    

Restringir o acesso ao Vertex AI Workbench para sua organização

Para restringir o acesso ao Vertex AI Workbench para sua organização, edite o tipo de política GDCHRestrictedService adicionando o grupo de APIs aiplatform.gdc.goog e o tipo Notebook ao campo kinds da política.

O exemplo a seguir mostra como o campo kinds aparece no tipo de política GDCHRestrictedService quando você restringe o acesso ao Vertex AI Workbench para toda a organização:

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

# [...]

Para restaurar o acesso de uma organização ao Vertex AI Workbench, consulte Conceder acesso ao Vertex AI Workbench para sua organização.

Restringir o acesso ao Vertex AI Workbench para um projeto

Para restringir o acesso ao Vertex AI Workbench em um projeto, edite o tipo de política GDCHRestrictedService adicionando o grupo de APIs aiplatform.gdc.goog e o tipo Notebook ao campo kinds da política para o namespace do projeto.

A diferença em relação à restrição de acesso para uma organização é que você precisa especificar o namespace que será afetado pela política. Adicione o campo namespaces à política com o namespace do projeto.

O exemplo a seguir mostra como o campo kinds aparece no tipo de política GDCHRestrictedService quando você restringe o acesso ao Vertex AI Workbench para um projeto:

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

# [...]

Substitua PROJECT_NAMESPACE pelo namespace do projeto em que você quer restringir o acesso ao Vertex AI Workbench.

Conceder acesso ao Vertex AI Workbench para sua organização

Por padrão, as organizações do Distributed Cloud têm acesso ao Vertex AI Workbench. No entanto, se você restringiu o acesso ao Vertex AI Workbench para sua organização, pode conceder acesso novamente.

Siga estas etapas para conceder acesso à Vertex AI Workbench para todos os projetos da sua organização:

  1. Identifique o tipo de política GDCHRestrictedService na sua organização.

  2. Encontre o grupo de APIs aiplatform.gdc.goog e o tipo Notebook na política.

  3. Se o grupo de APIs aiplatform.gdc.goog e o tipo Notebook forem o único conteúdo no campo kinds da política, exclua o recurso GDCHRestrictedService.

  4. Se a política GDCHRestrictedService tiver outros serviços restritos, remova o grupo de APIs aiplatform.gdc.goog e o tipo Notebook do campo kinds e salve as alterações na política.