Nesta página, apresentamos uma visão geral das práticas recomendadas de segurança para melhorar a postura de segurança e proteção de dados em torno das suas Cloud Workstations. Esta lista não é uma checklist abrangente que garante a segurança nem uma substituição para suas posturas de segurança atuais.
O objetivo é fornecer um guia com as práticas recomendadas de segurança possibilitadas pelo 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 do Cloud Workstations fornece imagens de base predefinidas para uso com o serviço. O serviço recria e republica essas imagens semanalmente para garantir que o software incluído tenha 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 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, o Google Cloud não é proprietário de todos os pacotes incluídos nessas imagens. Os gerenciadores de pacotes podem priorizar as atualizações de maneira diferente, dependendo de como um bug ou vulnerabilidades e exposições comuns (CVE, na sigla em inglês) afetam o produto. Se um produto usa apenas uma parte de uma biblioteca, ele pode não ser afetado por descobertas em outras partes da biblioteca. Por isso, embora existam descobertas de CVE de verificações de vulnerabilidade das nossas imagens, o Cloud Workstations ainda pode fornecer um produto seguro.
O Cloud Workstations pode fazer isso porque oferece 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 as práticas recomendadas ao usar a estação de trabalho. Para garantir a máxima segurança, execute apenas códigos confiáveis, opere apenas com 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 ou compartilhar uma única estação de trabalho com vários desenvolvedores.
Se você quiser ter mais controle sobre a segurança das imagens de estação de trabalho da sua organização, também poderá criar suas próprias imagens de contêiner personalizadas.
Usar o Secure Web Proxy para controlar o acesso à Internet e melhorar a prevenção contra perda de dados (DLP)
Para bloquear todo o acesso à Internet pública, por exemplo, para prevenção contra perda de dados (DLP), desative os endereços IP públicos nas configurações da estação de trabalho.
Se você desativar os endereços IP públicos, configure o
Acesso privado do Google
ou o Cloud NAT na 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.
No entanto, se os desenvolvedores precisarem acessar determinados sites externos nas estações de trabalho, use o Secure Web Proxy para fornecer acesso auditável a esses sites, o que inclui proteções de DLP.
O Secure Web Proxy ajuda as organizações a aplicar o acesso à internet granular, controlando o tráfego de saída com base na origem, na identidade, no destino e no tipo de solicitação. É possível definir essas políticas em um contexto do Google Cloud Identity and Access Management (IAM), usando contas de serviço e tags seguras para restringir o tráfego, por exemplo, a um destino específico.
O Secure Web Proxy também oferece um serviço de inspeção TLS escalonável que permite aplicar políticas ao tráfego TLS criptografado interceptado.
O Secure Web Proxy se integra ao Cloud Logging para registrar métricas e registros de transações. Para identificar a estação de trabalho de origem de uma determinada entrada de registro, encontre o endereço IP da VM na entrada de registro e use os registros da plataforma da estação de trabalho para correlacionar esse endereço IP com a estação de trabalho correspondente.
É possível usar uma imagem personalizada
para definir https_proxy e http_proxy como o Secure Web Proxy nas
estações de trabalho.
Restringir o acesso SSH direto
Restrinja o acesso SSH direto às VMs no projeto que hospeda o Cloud Workstations para que o acesso seja possível apenas pelo gateway do Cloud Workstations, em que as políticas do Identity and Access Management (IAM) são aplicadas e os registros de fluxo de 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 confidenciais das suas estações de trabalho, impedindo a exfiltração de código-fonte e dados.
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 use 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 os aplicativos do Cloud Workstations são executados em um contêiner no modo privilegiado e com acesso raiz, 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 escape desse contêiner, ele ainda esteja dentro da VM, sem acesso a outros recursos externos.
Configure as permissões do IAM que limitam o acesso de não administradores para modificar as configurações da estação de trabalho e as imagens de contêiner no Artifact Registry.
Além disso, o Google recomenda que você configure permissões do IAM limitando o acesso de administrador a qualquer um dos recursos subjacentes do Compute Engine no projeto que hospeda o Cloud Workstations.
Para mais informações, consulte Como usar o IAM com segurança.
Permissões do Cloud KMS
Para atender melhor ao princípio de privilégio mínimo, recomendamos que você mantenha
os recursos do Cloud KMS e do Cloud Workstations em
projetos do Google Cloud separados. Crie o projeto de chave do Cloud KMS
sem um owner no nível do projeto e designe 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. Eles são restritos à definição de políticas do IAM,
que restringem quem pode gerenciar e usar chaves.
Isso também é conhecido como segregação de funções, que é o conceito de garantir que um indivíduo não tenha todas as permissões necessárias para concluir uma ação mal-intencionada. Para mais informações, consulte segregação de funções.
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 as correções e os patches 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 usar uma das imagens de base do Cloud Workstations, a
estação de trabalho vai receber automaticamente as atualizações da
configuração da estação de trabalho na próxima vez que ela for encerrada e
reiniciada. Definir
runningTimeoutou usar o padrão ajuda a garantir que essas estações de trabalho sejam encerradas. - Se a 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 a 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.
- Programe builds para recriar imagens semanalmente ou saiba como automatizar as recriações de imagens de contêiner.
Configurar os registros de fluxo de VPC
Quando você cria 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 a geração de registros para essa sub-rede. Para mais informações, consulte Ativar os registros de fluxo de VPC para uma sub-rede atual.
Ativar a VM Threat Detection 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, 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 as descobertas para 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 procurar atribuições históricas.