Nesta página, você encontra uma visão geral das práticas recomendadas de segurança para aumentar a segurança e a proteção de dados das suas Cloud Workstations. Esta lista não é uma checklist abrangente que garante a segurança nem substitui suas posturas de segurança atuais.
O objetivo é fornecer um guia sobre as práticas recomendadas de segurança possibilitadas pelos Cloud Workstations. Adicione essas recomendações ao seu portfólio de soluções de segurança, quando aplicável, como parte dos esforços para criar uma abordagem de segurança em camadas. Uma abordagem de segurança em camadas é um dos principais princípios de segurança para executar serviços seguros e em conformidade no Google Cloud.
Contexto
O serviço Cloud Workstations oferece imagens de base predefinidas para uso com o serviço. O serviço recria e republica essas imagens semanalmente para garantir que o software agrupado inclua os patches de segurança mais recentes. Além disso, o serviço usa um valor padrão de tempo limite de execução na sua configuração da estação de trabalho para garantir que as estações de trabalho sejam atualizadas automaticamente e que as imagens sem patch não permaneçam ativas.
No entanto, Google Cloud não é proprietário de todos os pacotes agrupados nessas imagens. Os gerenciadores de pacotes podem priorizar atualizações de maneira diferente, dependendo de como um bug ou vulnerabilidades e exposições comuns (CVEs) afetam o produto. Se um produto usar apenas uma parte de uma biblioteca, ele poderá não ser afetado por descobertas em outras partes dela. Por isso, embora existam descobertas de CVE em verificações de vulnerabilidade das nossas imagens, o Cloud Workstations ainda consegue oferecer um produto seguro.
Cloud Workstations podem fazer isso porque oferecem um sistema de autenticação e autorização que ajuda a garantir que apenas o desenvolvedor designado possa acessar a estação de trabalho. Como em qualquer ambiente de desenvolvimento, os desenvolvedores precisam aplicar práticas recomendadas ao usar a estação de trabalho. Para ter o máximo de segurança possível, execute apenas códigos confiáveis, opere apenas em entradas confiáveis e acesse apenas domínios confiáveis. Além disso, não é recomendável usar estações de trabalho para hospedar servidores de produção nem compartilhar uma única estação de trabalho com vários desenvolvedores.
Se quiser mais controle sobre a segurança das imagens de estação de trabalho da sua organização, crie suas próprias imagens de contêiner personalizadas.
Restringir o acesso à rede pública
Desative os endereços IP públicos nas estações de trabalho usando a configuração delas e configure regras de firewall que limitam o acesso a destinos da Internet pública não necessários para o trabalho diário no Cloud Workstations.
Se você desativar os endereços IP públicos, configure o Acesso privado do Google ou o Cloud NAT na sua rede.
Se você usa o Acesso privado do Google e
private.googleapis.com
ou restricted.googleapis.com
para
o Artifact Registry, configure os registros DNS para
domínios
*.pkg.dev
.
Restringir o acesso SSH direto
Restrinja o acesso SSH direto às VMs no projeto que hospeda os Cloud Workstations para que o acesso só seja possível pelo gateway dos Cloud Workstations, em que as políticas de gerenciamento de identidade e acesso (IAM) são aplicadas e os registros de fluxo da VPC podem ser ativados.
Para desativar o acesso SSH direto à VM, execute o seguinte comando da Google Cloud CLI:
gcloud workstations configs update CONFIG \ --cluster=CLUSTER \ --region=REGION \ --project=PROJECT \ --disable-ssh-to-vm
Limitar o acesso a recursos sensíveis
Configure um perímetro de serviço do VPC Service Controls para limitar o acesso a recursos sensíveis das suas estações de trabalho, evitando a exfiltração de dados e código-fonte.
Siga o princípio de privilégio mínimo
Siga o princípio de privilégio mínimo para permissões e alocação de recursos.
Permissões do IAM
Use a configuração padrão do Identity and Access Management, limitando o acesso à estação de trabalho a um único desenvolvedor. Isso ajuda a garantir que cada desenvolvedor esteja usando uma instância de estação de trabalho exclusiva com uma VM subjacente distinta, aumentando o isolamento do ambiente. Os editores de código e aplicativos do Cloud Workstations são executados em um contêiner no modo privilegiado e com acesso root, para aumentar a flexibilidade do desenvolvedor. Isso fornece uma estação de trabalho exclusiva por desenvolvedor e ajuda a garantir que, mesmo que um usuário saia desse contêiner, ele ainda esteja dentro da VM, sem acesso a recursos externos adicionais.
Configure permissões do IAM para limitar o acesso não administrador à modificação de configurações de estação de trabalho e imagens de contêiner no Artifact Registry.
Além disso, o Google recomenda que você configure permissões do IAM limitando o acesso não administrador a qualquer um dos recursos do Compute Engine no projeto que hospeda os Cloud Workstations.
Para mais informações, consulte Como usar o IAM com segurança.
Permissões do Cloud KMS
Para oferecer melhor suporte ao princípio de privilégio mínimo, recomendamos que você mantenha os recursos do Cloud KMS e do Cloud Workstations em projetos Google Cloud separados. Crie seu projeto de chave do Cloud KMS
sem um owner
no nível do projeto e atribua um
administrador da organização
concedido no nível da organização.
Ao contrário de um owner
, um Administrador da organização não pode gerenciar ou usar chaves diretamente. Elas estão restritas à definição de políticas do IAM,
que restringem quem pode gerenciar e usar chaves.
Isso também é chamado de separação de tarefas,que é o conceito de garantir que um indivíduo não tenha todas as permissões necessárias para concluir uma ação maliciosa. Para mais informações, consulte separação de deveres.
Aplicar atualizações e patches automáticos de imagem
Verifique se as estações de trabalho estão usando a versão mais recente das imagens de base do Cloud Workstations, que contém os patches e correções de segurança mais recentes. O valor do tempo limite de execução na configuração da estação de trabalho ajuda a garantir que as estações de trabalho criadas com essa configuração sejam atualizadas automaticamente na próxima sessão para corresponder à versão mais recente da imagem do contêiner definida na configuração da estação de trabalho.
- Se a organização usa uma das imagens de base do Cloud Workstations, a
estação de trabalho recebe automaticamente as atualizações na
configuração da estação de trabalho na próxima vez que ela for desligada e
reiniciada. Definir
runningTimeout
ou usar o padrão ajuda a garantir que essas estações de trabalho sejam desligadas. - Se a sua organização usa uma imagem personalizada, recrie a imagem regularmente.
Manter imagens personalizadas
Você é responsável por manter e atualizar pacotes e dependências personalizados adicionados em imagens personalizadas.
Se você estiver criando imagens personalizadas, recomendamos o seguinte:
Execute uma ferramenta de verificação de contêineres, como o Artifact Analysis, para inspecionar outras dependências adicionadas.
Agende builds para recriar imagens semanalmente ou saiba como automatizar a recriação de imagens de contêiner.
Configurar os registros de fluxo de VPC
Ao criar um cluster de estação de trabalho, o Cloud Workstations associa o cluster a uma sub-rede específica, e todas as estações de trabalho são colocadas nessa sub-rede. Para ativar os registros de fluxo de VPC, ative o registro em log para essa sub-rede. Para mais informações, consulte Ativar os registros de fluxo de VPC para uma sub-rede atual.
Ativar a detecção de ameaças à VM no Security Command Center
O Security Command Center é uma solução de gerenciamento de riscos baseada na nuvem que ajuda os profissionais de segurança a prevenir, detectar e responder a problemas de segurança. Como as estações de trabalho são executadas em uma VM dedicada por estação, a Detecção de ameaças a máquinas virtuais pode ser usada para detectar aplicativos potencialmente maliciosos, como software de mineração de criptomoedas, rootkits no modo kernel e malware em execução na estação de trabalho.
Ao avaliar os resultados das VMs, é possível encontrar a estação de trabalho atribuída à VM inspecionando os rótulos da estação de trabalho na VM ou usando os registros da plataforma de estações de trabalho para pesquisar atribuições históricas.