Use os VPC Service Controls

Esta página descreve como usar os VPC Service Controls para configurar um bloco de notas do Colab Enterprise num perímetro de serviço.

Vista geral

Os VPC Service Controls são uma Google Cloud funcionalidade que lhe permite configurar um perímetro que ajuda a proteger contra a exfiltração de dados.

Os VPC Service Controls oferecem uma camada adicional de defesa para Google Cloud serviços que é independente da proteção fornecida pela gestão de identidade e de acesso (IAM).

Quando usa o Colab Enterprise num perímetro de serviço, os tempos de execução estão sujeitos ao perímetro de serviço. Por conseguinte, para executar código de bloco de notas que interaja com outras APIs e serviços Google, tem de adicionar esses serviços ao perímetro de serviço.

Para mais informações acerca do VPC Service Controls, consulte o artigo Vista geral do VPC Service Controls.

Limitações conhecidas

Funções necessárias

Para receber as autorizações de que precisa para usar os VPC Service Controls com o Colab Enterprise, peça ao seu administrador para lhe conceder as seguintes funções de IAM no projeto:

Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.

Para mais informações acerca das autorizações dos VPC Service Controls, consulte o artigo Controlo de acesso com a IAM.

Crie um perímetro de serviço

  1. Crie um perímetro de serviço com os VPC Service Controls. Este perímetro de serviço protege os recursos geridos pela Google dos serviços que especificar. Ao criar o perímetro de serviço, faça o seguinte:

    1. Quando for altura de adicionar projetos ao seu perímetro de serviço, adicione o projeto que contém os seus blocos de notas do Colab Enterprise ou crie blocos de notas neste projeto.

    2. Quando for altura de adicionar serviços ao seu perímetro de serviço, adicione o seguinte:

      • API Vertex AI (aiplatform.googleapis.com)
      • API Dataform (dataform.googleapis.com)

    Se criou o seu perímetro de serviço sem adicionar os projetos e os serviços de que precisa, consulte o artigo Gerir perímetros de serviço para saber como atualizar o seu perímetro de serviço.

Conceda acesso à IU do Colab Enterprise

Uma vez que a IU do Colab Enterprise (colab-embedded.cloud.google.com) só está acessível através da Internet, a IU do Colab Enterprise é tratada como fora dos perímetros de serviço. Quando aplica um perímetro de serviço, a interface da consola para os serviços que protegeu pode tornar-se parcial ou totalmente inacessível. Google Cloud Por exemplo, se proteger o Colab Enterprise com o perímetro, a interface do Colab Enterprise na consola Google Cloud torna-se inacessível.

Para permitir o acesso a partir da consola Google Cloud a recursos protegidos por um perímetro, tem de criar um nível de acesso para um intervalo de IPs públicos que inclua as máquinas dos utilizadores que querem usar a consola Google Cloud com APIs protegidas. Por exemplo, pode adicionar o intervalo de IP público da gateway NAT da sua rede privada a um nível de acesso e, em seguida, atribuir esse nível de acesso ao perímetro de serviço.

Se quiser limitar Google Cloud o acesso à consola ao perímetro apenas a um conjunto específico de utilizadores, também pode adicionar esses utilizadores a um nível de acesso. Nesse caso, apenas os utilizadores especificados poderiam aceder à Google Cloud consola.

Configure serviços acessíveis por VPC (opcional)

Quando ativa os serviços acessíveis por VPC para um perímetro, o acesso a partir de pontos finais de rede no interior do perímetro é limitado a um conjunto de serviços que especifica.

Para saber como limitar o acesso no interior do seu perímetro apenas a um conjunto específico de serviços, leia acerca dos serviços acessíveis da VPC.

Use o acesso privado à Google com a sua rede VPC (opcional)

O acesso privado à Google oferece conetividade privada a anfitriões numa rede VPC ou numa rede no local que usa endereços IP privados para aceder a Google Cloud APIs e serviços. Pode estender um perímetro de serviço dos VPC Service Controls a anfitriões nessas redes para controlar o acesso a recursos protegidos. Os anfitriões numa rede VPC têm de ter apenas um endereço IP privado (sem endereço IP público) e estar numa sub-rede com o acesso privado à Google ativado. Para mais informações, consulte a conectividade privada a partir de redes no local.

Para se certificar de que pode usar o acesso privado da Google com a sua rede VPC, tem de configurar alguns registos DNS.

Configure as suas entradas de DNS através do Cloud DNS

Os ambientes de execução do Colab Enterprise usam vários domínios que uma rede VPC não processa por predefinição. Para garantir que a sua rede VPC processa corretamente os pedidos enviados para esses domínios, use o Cloud DNS para adicionar registos de DNS. Para mais informações sobre as rotas de VPC, consulte o artigo Rotas.

Esta secção mostra como criar uma zona gerida para um domínio, adicionar uma entrada de DNS que encaminhe o pedido e executar a transação. Repita estes passos para cada um dos vários domínios para os quais tem de processar pedidos, começando por *.aiplatform.googleapis.com.

No Cloud Shell ou em qualquer ambiente onde a CLI do Google Cloud esteja instalada, introduza os seguintes comandos da CLI gcloud.

  1. Para criar uma zona gerida privada para um dos domínios que a sua rede VPC tem de processar:

        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"
        

    Substitua o seguinte:

    • ZONE_NAME: um nome para a zona a criar. Tem de usar uma zona separada para cada domínio. Este nome de zona é usado em cada um dos passos seguintes.
    • PROJECT_ID: o ID do projeto que aloja a sua rede VPC.
    • NETWORK_NAME: o nome da rede VPC que criou anteriormente.
    • DNS_NAME: a parte do nome do domínio que aparece depois do *.. Por exemplo, *.aiplatform.googleapis.com tem um nome DNS de aiplatform.googleapis.com.
  2. Inicie uma transação.

        gcloud dns record-sets transaction start --zone=ZONE_NAME
        
  3. Adicione o seguinte registo A de DNS. Isto redireciona o tráfego para os endereços IP restritos da 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
        
  4. Adicione o seguinte registo CNAME de DNS para apontar para o registo A que acabou de adicionar. Isto redireciona todo o tráfego correspondente ao domínio para os endereços IP indicados no passo anterior.

        gcloud dns record-sets transaction add \
            --name=\*.DNS_NAME. \
            --type=CNAME DNS_NAME. \
            --zone=ZONE_NAME \
            --ttl=300
        
  5. Execute a transação.

        gcloud dns record-sets transaction execute --zone=ZONE_NAME
        
  6. Repita estes passos para cada um dos seguintes domínios. Para cada repetição, altere ZONE_NAME e DNS_NAME para os valores adequados para esse domínio. Mantenha PROJECT_ID e NETWORK_NAME sempre iguais. Já concluiu estes passos para *.aiplatform.googleapis.com.

    • *.aiplatform.googleapis.com
    • *.aiplatform-notebook.googleusercontent.com
    • *.aiplatform-notebook.cloud.google.com

Para saber como configurar a conetividade privada, leia o artigo Configure a conetividade privada às APIs Google e aos serviços.

Permita o acesso sensível ao contexto a partir do exterior de um perímetro de serviço através de regras de entrada

Pode permitir o acesso sensível ao contexto a recursos restritos por um perímetro com base em atributos do cliente. Pode especificar atributos do cliente, como o tipo de identidade (conta de serviço ou utilizador), a identidade, os dados do dispositivo e a origem da rede (endereço IP ou rede VPC).

Por exemplo, pode configurar regras de entrada para permitir o acesso à Internet a recursos dentro de um perímetro com base no intervalo de endereços IPv4 e IPv6. Para mais informações sobre a utilização de regras de entrada para configurar o acesso sensível ao contexto, consulte o artigo Acesso sensível ao contexto.

Configure a troca de dados segura através de regras de entrada e saída

Só pode incluir o seu projeto num perímetro de serviço. Se quiser permitir a comunicação através do limite do perímetro, configure regras de entrada e saída. Por exemplo, pode especificar regras de entrada e saída para permitir que projetos de vários perímetros partilhem registos num perímetro separado. Para saber mais acerca dos exemplos de utilização da troca de dados segura, leia o artigo Troca de dados segura.

O que se segue?