1. Introdução
Visão geral
Neste laboratório, você vai reduzir ameaças comuns à infraestrutura de um ambiente de desenvolvimento de IA. Você implementa controles de segurança projetados para proteger os componentes principais desse ambiente.
Contexto
Você é o campeão de segurança na sua equipe de desenvolvimento, e seu objetivo é criar um ambiente que equilibre o mínimo de atrito no uso com a proteção contra ameaças comuns.
A tabela a seguir lista as ameaças que você mais quer mitigar. Cada ameaça é abordada por uma tarefa específica neste laboratório:
Ameaça | Mitigação | Tarefa concluída |
Entrada não autorizada na rede por portas abertas exploradas. | Crie uma VPC particular e limite o acesso da Vertex AI a um único usuário com proxy pelo Google Cloud em vez de um endereço IP público. | Configurar uma base de rede segura |
Escalonamento de privilégios de uma instância de computação comprometida usando credenciais com privilégios excessivos. | Crie e atribua uma conta de serviço com privilégios mínimos à instância da Vertex AI. | Implantar uma instância segura do Vertex AI Workbench |
Tomada de controle da instância do recurso de computação, resultando em adulteração do sistema. | Proteja a instância desativando o acesso root e ativando a Inicialização segura. | Implantar uma instância segura do Vertex AI Workbench |
Exposição pública acidental de dados de treinamento e modelos devido a uma configuração incorreta de armazenamento. | Aplique a prevenção de acesso público no bucket e use controles de acesso uniformes no nível do bucket. | Implantar um bucket seguro do Cloud Storage |
Exclusão ou adulteração maliciosa ou acidental de conjuntos de dados e artefatos de modelo. | Ative o controle de versão de objetos para recuperação e os registros de acesso a dados para uma trilha de auditoria imutável de todas as atividades. | Implantar um bucket seguro do Cloud Storage |
Referência rápida
Ao longo deste laboratório, você vai trabalhar com estes recursos nomeados:
Componente | Nome |
Nome da VPC |
|
Nome da sub-rede |
|
Cloud Router |
|
Cloud NAT |
|
Conta de serviço |
|
Instância da Vertex AI |
|
Bucket de armazenamento |
|
O que você vai aprender
Neste laboratório, você vai aprender a:
- Provisione uma VPC segura com rede privada para reduzir o tráfego indesejado.
- Proteja uma instância do Vertex AI Workbench contra bootkits e escalonamento de privilégios.
- Proteja um bucket do Cloud Storage para reduzir a transferência de dados não monitorada e a exposição pública acidental.
2. Configurar o projeto
Conta do Google
Se você ainda não tiver uma Conta do Google pessoal, crie uma.
Use uma conta pessoal em vez de uma conta escolar ou de trabalho.
Fazer login no console do Google Cloud
Faça login no console do Google Cloud usando uma Conta do Google pessoal.
Ativar faturamento
Resgatar US $5 em créditos do Google Cloud (opcional)
Para fazer este workshop, você precisa de uma conta de faturamento com algum crédito. Se você planeja usar seu próprio faturamento, pule esta etapa.
- Clique neste link e faça login com uma Conta do Google pessoal. Você vai encontrar algo assim:

- Clique no botão CLIQUE AQUI PARA ACESSAR SEUS CRÉDITOS. Isso vai abrir uma página para configurar seu perfil de faturamento

- Clique em Confirmar.
Agora você está conectado a uma conta de faturamento de avaliação do Google Cloud Platform.

Configurar uma conta de faturamento pessoal
Se você configurou o faturamento usando créditos do Google Cloud, pule esta etapa.
Para configurar uma conta de faturamento pessoal, acesse este link e ative o faturamento no console do Cloud.
Algumas observações:
- A conclusão deste laboratório custa menos de US $1 em recursos do Cloud.
- Siga as etapas no final deste laboratório para excluir recursos e evitar mais cobranças.
- Novos usuários podem aproveitar a avaliação sem custos financeiros de US$300.
Criar um projeto (opcional)
Se você não tiver um projeto atual que gostaria de usar para este laboratório, crie um novo aqui.
3. Ative as APIs
Configure o Cloud Shell
Depois que o projeto for criado, siga estas etapas para configurar o Cloud Shell.
Iniciar o Cloud Shell
Acesse shell.cloud.google.com e, se aparecer um pop-up pedindo autorização, clique em Autorizar.
Definir ID do projeto
Execute o seguinte comando no terminal do Cloud Shell para definir o ID do projeto correto. Substitua <your-project-id> pelo ID do projeto copiado da etapa de criação acima.
gcloud config set project <your-project-id>
Agora você vai ver que o projeto correto está selecionado no terminal do Cloud Shell.
Ativar o Vertex AI Workbench e o Cloud Storage
Para usar os serviços neste laboratório, é necessário ativar as APIs do Compute Engine, do Vertex AI Workbench, do IAM e do Cloud Storage no seu projeto do Google Cloud.
- No terminal, ative as APIs:
gcloud services enable compute.googleapis.com notebooks.googleapis.com aiplatform.googleapis.com iam.googleapis.com storage.googleapis.com
Como alternativa, acesse as páginas respectivas no console e clique em Ativar.
4. Configurar uma base de rede segura
Nesta tarefa, você vai criar um ambiente de rede isolado para todos os seus serviços. Ao usar uma rede particular e controlar os fluxos de dados, você cria uma defesa em várias camadas para reduzir significativamente a superfície de ataque da sua infraestrutura em comparação com recursos acessíveis publicamente. Essa base de rede segura é crucial para proteger seus aplicativos de IA contra acesso não autorizado.
Criar a VPC e a sub-rede
Nesta etapa, você vai configurar uma nuvem privada virtual (VPC) e uma sub-rede. Isso cria um ambiente de rede isolado, que é a primeira linha de defesa contra a entrada não autorizada na rede.
- No console do Google Cloud, acesse Rede VPC > Redes VPC. Use a barra de pesquisa na parte de cima do console do Google Cloud para pesquisar e selecionar "Redes VPC".
- Clique em Criar rede VPC.
- Em Nome, insira
genai-secure-vpc. - Em Modo de criação da sub-rede, selecione Personalizado.
- Em Nova sub-rede, especifique as seguintes propriedades para criar sua sub-rede:
Propriedade
Valor (digite ou selecione)
Nome
genai-subnet-us-central1Região
us-central1Intervalo de endereços IP
10.0.1.0/24Acesso privado do Google
Ativar
- Clique em Criar.
Criar o gateway do Cloud NAT
O gateway do Cloud NAT permite que suas instâncias privadas iniciem conexões de saída (por exemplo, para atualizações de software) sem ter um endereço IP público. Isso significa que a Internet pública não pode iniciar conexões com elas.
- Primeiro, crie um Cloud Router. Use a barra de pesquisa na parte de cima do console do Google Cloud para pesquisar e selecionar "Cloud Router".
- Clique em Criar roteador.
- Configure o Cloud Router com o seguinte:
Propriedade
Valor (digite ou selecione)
Nome
genai-router-us-central1Rede
genai-secure-vpc(a rede VPC que você acabou de criar)Região
us-central1 - Clique em Criar.
- Em seguida, acesse Serviços de rede > Cloud NAT. Use a barra de pesquisa na parte de cima do console do Google Cloud para pesquisar "Cloud NAT" e selecione essa opção.
- Clique em Primeiros passos.
- Configure o gateway do Cloud NAT com o seguinte:
Propriedade
Valor (digite ou selecione)
Nome do gateway
genai-nat-us-central1Rede VPC
genai-secure-vpc(a rede VPC que você criou)Região
us-central1Cloud Router
genai-router-us-central1(o roteador que você acabou de configurar) - Clique em Criar.
5. Implantar uma instância segura do Vertex AI Workbench
Agora que você tem uma base de rede segura, implante uma instância do Vertex AI Workbench reforçada na sua VPC segura. Essa instância do Workbench serve como seu ambiente de desenvolvimento, oferecendo um espaço seguro e isolado para seu trabalho de desenvolvimento de IA. A configuração de rede anterior garante que essa instância não seja exposta diretamente à Internet pública, com base na defesa de várias camadas.
Criar uma conta de serviço com privilégio mínimo
Criar uma conta de serviço dedicada com o mínimo de permissões necessárias apoia o princípio de privilégio mínimo. Se a instância for comprometida, essa prática vai limitar o "raio de explosão", garantindo que ela só possa acessar os recursos e realizar as ações explicitamente necessárias para a função.
- No console do Google Cloud, acesse IAM e administrador > Contas de serviço. Use a barra de pesquisa na parte de cima do console do Google Cloud para pesquisar e selecionar "Contas de serviço".
- Clique em Criar conta de serviço.
- Em Nome da conta de serviço, insira
vertex-workbench-sa. - Clique em Criar e continuar.
- Conceda os seguintes papéis:
Vertex AI UserStorage Object Creator
- Clique em Concluído.
Criar a instância do Workbench
Nesta etapa, você implanta a instância do Vertex AI Workbench. Essa instância é configurada para ser executada na sua VPC privada criada anteriormente, isolando-a ainda mais da Internet pública. Você também aplica outras medidas de reforço de segurança diretamente à instância.
- No menu de navegação do console do Google Cloud (menu de hambúrguer), acesse Vertex AI > Workbench. Use a barra de pesquisa na parte de cima do console do Google Cloud para pesquisar "Workbench" e selecione o resultado com "Vertex AI" como subtítulo.
- Clique em Criar novo e configure:
Propriedade
Valor (digite ou selecione)
Nome
secure-genai-instanceRegião
us-central1 - Clique em Opções avançadas.
- Clique em Tipo de máquina e marque as caixas de seleção para o seguinte:
- inicialização segura;
- Módulo de plataforma confiável e virtual (vTPM)
- Monitoramento de integridade.
- Clique em Rede e configure o seguinte:
Propriedade
Valor (digite ou selecione)
Rede
genai-secure-vpcSub-rede
genai-subnet-us-central1(10.0.1.0/24)Atribuir endereço IP externo
Desmarque, já que você só acessa essa instância por um proxy no Google Cloud.
- Clique em IAM e segurança e configure o seguinte:
Propriedade
Valor (digite ou selecione)
E-mail do usuário
Usuário único e selecione o endereço de e-mail que você usou para fazer login no Google Cloud.
Usar conta de serviço padrão do Compute Engine
Desmarque a caixa de seleção.
E-mail da conta de serviço
Insira o e-mail criado para a conta de serviço com privilégios mínimos (substitua
[PROJECT_ID]pelo seu ID real):vertex-workbench-sa@[PROJECT_ID].iam.gserviceaccount.comAcesso raiz à instância
Desmarque a caixa de seleção.
- Clique em Criar.
Acessar sua instância da Vertex AI
Agora que sua instância do Vertex AI Workbench é provisória, você pode acessá-la com segurança. Você se conecta a ele pelo proxy do Google Cloud, garantindo que a instância permaneça privada e não seja exposta à Internet pública, limitando assim o risco de tráfego indesejado e potencialmente malicioso.
- Acesse Vertex AI > Workbench. Você já pode estar nessa página se o provisionamento da sua instância acabou de ser concluído. Caso contrário, use o menu de navegação do console do Google Cloud (menu de hambúrguer) ou a barra de pesquisa para acessar.
- Encontre sua instância chamada
secure-genai-instancena lista. - À direita da instância, clique no link Abrir JupyterLab.
Isso abre uma nova guia no navegador, acesso à sua instância. Você tem acesso a ela pelo Google Cloud, mas a instância não fica exposta à Internet pública, o que limita o risco de tráfego indesejado e potencialmente malicioso.
6. Implantar um bucket seguro do Cloud Storage
Agora, crie um bucket seguro do Cloud Storage para seus conjuntos de dados. É onde seus dados, modelos e artefatos de treinamento de IA são armazenados. Ao aplicar configurações de segurança fortes a esse bucket, você evita a exposição pública acidental de dados sensíveis e protege contra exclusão e adulteração maliciosas ou acidentais. Isso garante a integridade e a confidencialidade dos seus recursos valiosos de IA.
Criar e configurar o bucket
Nesta etapa, você vai criar seu bucket do Cloud Storage e aplicar as configurações de segurança iniciais. Essas configurações aplicam a prevenção de acesso público e ativam controles de acesso uniformes no nível do bucket, que são essenciais para manter o controle sobre quem pode acessar seus dados.
- No console do Google Cloud, acesse Cloud Storage > Buckets. Use a barra de pesquisa na parte de cima do console do Google Cloud para pesquisar e selecionar "Buckets".
- Clique em Criar.
- Em Começar, defina o Nome como
secure-genai-artifacts-[PROJECT_ID], substituindo[PROJECT_ID]pelo ID do projeto do Google Cloud. - Continue em Escolha onde armazenar seus dados e configure o seguinte:
Propriedade
Valor (digite ou selecione)
Tipo de local
Region
Região
us-central1 - Continue em Escolha como armazenar seus dados e mantenha as configurações padrão.
- Continue em Escolha como controlar o acesso a objetos e mantenha as configurações padrão:
Propriedade
Valor (digite ou selecione)
Motivo
Impedir acesso público
Mantenha a opção Aplicar a prevenção do acesso público selecionada.
A prevenção de acesso público substitui qualquer mudança no IAM que possa expor um objeto à Internet por engano.
Controle de acesso
Mantenha a opção Uniforme selecionada.
Embora as ACLs pareçam a melhor opção para controle refinado, e portanto, privilégio mínimo, elas introduzem complexidade e imprevisibilidade quando combinadas com outros recursos do IAM. Considere as vantagens e desvantagens do acesso uniforme no nível do bucket para evitar a exposição não intencional de dados.
- Continue em Escolher como proteger os dados do objeto e mantenha as configurações padrão:
Propriedade
Valor (digite ou selecione)
Motivo
Política de exclusão reversível (para recuperação de dados)
Mantenha a opção Política de exclusão reversível (para recuperação de dados) selecionada.
Em caso de exclusões acidentais ou maliciosas no bucket, a exclusão reversível permite restaurar o conteúdo dentro do período de retenção.
Controle de versões do objeto (para controle de versões)
Selecione Controle de versões do objeto (para controle de versões).
O controle de versões de objetos permite a recuperação de substituições acidentais ou maliciosas, como se um invasor substituísse um arquivo benigno por um que contenha código de exploração.
Número máximo de versões por objeto
3
Embora isso seja arbitrário e possa aumentar o custo, precisa ser maior que 1 para que você possa reverter para uma versão anterior. Se um invasor puder tentar várias substituições, talvez seja necessária uma estratégia de backup e controle de versões mais robusta.
Expirar versões não atuais após
7
Sete dias é o período recomendado para manter versões mais antigas ativas, mas esse número pode ser maior para armazenamento de longo prazo.
- Clique em Criar.
- Se um pop-up com a mensagem "O acesso público será bloqueado" aparecer, mantenha a caixa padrão ("Aplicar a prevenção do acesso público neste bucket") marcada e clique em Confirmar.
Ativar a proteção de dados e a geração de registros
Para garantir a imutabilidade e a capacidade de auditoria dos seus dados, ative o controle de versões de objetos e configure os registros de acesso a dados para seu bucket. O controle de versões de objetos permite a recuperação de exclusões ou substituições acidentais, enquanto os registros de acesso a dados fornecem uma trilha de auditoria abrangente de toda a atividade no bucket, essencial para monitoramento de segurança e compliance.
- No console do Google Cloud, acesse IAM e administrador > Registros de auditoria. Use a barra de pesquisa na parte de cima do console do Google Cloud para pesquisar e selecionar "Registros de auditoria".
- Use a pesquisa de filtro para encontrar e selecionar Google Cloud Storage.
- No painel que aparece, marque as caixas Leitura de dados e Gravação de dados.
- Clique em Salvar.
7. Do laboratório à realidade
Você acabou de concluir uma série de etapas em um ambiente de laboratório temporário, mas os princípios e as configurações que aplicou são o blueprint para proteger projetos de IA no mundo real no Google Cloud. Saiba como traduzir o que você aprendeu para seu próprio trabalho, passando de um laboratório simples para uma configuração pronta para produção.
Pense nos recursos que você acabou de criar (a VPC particular, a instância reforçada do Workbench e o bucket seguro) como um modelo inicial seguro para qualquer novo projeto de IA. Seu objetivo é tornar essa base segura o caminho padrão e fácil para você e sua equipe.
A rede segura: seu espaço de trabalho particular
Como usar isso na sua configuração
Toda vez que você inicia um novo projeto de IA (por exemplo, "customer-churn-prediction", "image-classification-model"), você replicaria essa configuração de rede. Você criaria uma VPC dedicada (churn-pred-vpc) ou usaria uma rede compartilhada e pré-aprovada. Essa é a "sandbox" isolada do seu projeto. Seu ambiente de desenvolvimento, como o Vertex AI Workbench que você configurou, fica dentro desse espaço protegido. Você se conectaria a ele pelo proxy seguro (Abrir JupyterLab), sem nunca expô-lo à Internet pública.
Conectando à produção
Em um ambiente de produção, você levaria esse conceito ainda mais longe considerando:
- Infraestrutura como código (IaC): em vez de usar o Console do Cloud, você define essa rede usando ferramentas como Terraform ou Cloud Deployment Manager. Isso permite implantar uma base de rede segura para um novo projeto em minutos, garantindo que ela seja repetível e auditável.
- VPC compartilhada: em organizações maiores, uma equipe central de rede geralmente gerencia uma VPC compartilhada. Como desenvolvedor, você receberia permissão para iniciar suas instâncias e serviços em sub-redes específicas dentro dessa rede segura gerenciada centralmente. O princípio é o mesmo: você ainda está operando em um espaço particular, mas ele faz parte de uma infraestrutura maior e compartilhada.
- VPC Service Controls: para máxima segurança, envolva todo esse ambiente em um perímetro do VPC Service Controls. Esse é um recurso eficiente que impede a exfiltração de dados, garantindo que serviços como o Cloud Storage só possam ser acessados por recursos autorizados dentro do perímetro da sua rede particular.
Computação reforçada: seu hub seguro de desenvolvimento e treinamento
Como usar isso na sua configuração
O secure-genai-instance é sua máquina de desenvolvimento de IA para o dia a dia. Use a interface do JupyterLab para:
- Escreva e teste o código do modelo em notebooks.
- Instale as bibliotecas Python (
pip install ...). - Faça experimentos com conjuntos de dados pequenos a médios. A segurança configurada (sem IP público, conta de serviço com privilégios mínimos, sem acesso root, inicialização segura) é executada de maneira transparente em segundo plano. Você pode se concentrar no seu trabalho de IA sabendo que a instância está protegida contra ataques comuns.
Conectando à produção
Normalmente, não é possível executar treinamento em grande escala em uma única instância do Workbench em produção. Em vez disso, você pode colocar seu trabalho em produção das seguintes maneiras:
- Do notebook ao pipeline: você pega o código do notebook e o formaliza em um script. Esse script seria executado como um job de treinamento personalizado da Vertex AI ou como uma etapa em um pipeline da Vertex AI.
- Conteinerização: você empacotaria o código de treinamento e as dependências em um contêiner do Docker e o armazenaria no Artifact Registry. Isso garante que seu código seja executado em um ambiente consistente e previsível sempre.
- A conta de serviço é fundamental: a conta de serviço
vertex-workbench-saque você criou é essencial. Em produção, os jobs automatizados do Vertex AI Training seriam executados usando essa mesma conta de serviço de privilégio mínimo (ou uma semelhante), garantindo que o job automatizado tenha apenas as permissões de que realmente precisa.
O armazenamento seguro: seu repositório central de artefatos
Como usar isso na sua configuração
O bucket secure-genai-artifacts é a única fonte de verdade para os dados do seu projeto. Não é apenas para o conjunto de dados inicial. Você pode usar esse recurso para armazenar:
- Dados de treinamento brutos e pré-processados.
- Checkpoints do modelo durante execuções de treinamento longas.
- Os artefatos finais do modelo treinado (arquivos
.pkl,.pbou.h5). - Resultados e registros de avaliação. As configurações de segurança aplicadas (prevenção de acesso público, acesso uniforme no nível do bucket, controle de versões e registro de auditoria) permitem que você use esse bucket como um armazenamento central, protegido contra vazamentos e exclusões acidentais.
Conectando à produção
Para gerenciar e governar seus princípios em um ambiente de produção, considere também:
- Políticas de ciclo de vida: para gerenciar custos, configure políticas de ciclo de vida para mover automaticamente versões ou conjuntos de dados de modelos mais antigos para classes de armazenamento mais baratas (como Nearline ou Coldline) ou excluí-los após um determinado período.
- Permissões entre projetos: em um pipeline de produção, uma equipe de engenharia de dados pode preencher esse bucket de um projeto diferente do Google Cloud. O acesso uniforme no nível do bucket que você ativou simplifica e protege o gerenciamento dessas permissões do IAM entre projetos, sem ACLs complexas (e, portanto, fáceis de configurar incorretamente).
Visão geral: tornar a segurança o padrão
Ao adotar esse modelo, você muda sua postura de segurança de uma reflexão tardia para a base. Você não é mais apenas um desenvolvedor, mas um defensor da segurança da sua equipe. Quando um novo membro entra na equipe, você não dá a ele uma máquina insegura e voltada ao público. Você dá acesso a um ambiente seguro e pré-configurado em que a maneira segura de trabalhar também é a mais fácil. Essa abordagem reduz diretamente o risco para a empresa, evitando causas comuns de violações de dados e comprometimento do sistema, permitindo que sua equipe inove e crie aplicativos de IA avançados com confiança.
8. Parabéns!
Parabéns! Você criou e auditou uma infraestrutura segura e de várias camadas para seu ambiente de desenvolvimento de IA. Você criou um perímetro de rede seguro com uma postura de firewall de "negação padrão", implantou uma instância de computação reforçada, protegeu um bucket de dados e usou registros para verificar se os controles funcionam exatamente como esperado.
Recapitulação
Neste laboratório, você fez o seguinte:
- Provisionamos uma VPC segura com rede privada para reduzir o tráfego indesejado.
- Implantamos uma instância reforçada do Vertex AI Workbench contra bootkits e escalonamento de privilégios.
- Protegemos um bucket do Cloud Storage para reduzir a transferência de dados não monitorada e a exposição pública acidental.
- Implementamos contas de serviço com privilégio mínimo para limitar o possível "raio de explosão".
- Ativamos o controle de versões de objetos e os registros de acesso a dados para proteção de dados e uma trilha de auditoria imutável.