Questa pagina fornisce una panoramica delle best practice per la sicurezza consigliate per migliorare la sicurezza e la protezione dei dati di Cloud Workstations. Questo elenco non è un elenco di controllo completo che assicura garanzie di sicurezza o un sostituto delle tue attuali security posture.
L'obiettivo è fornirti una guida alle best practice per la sicurezza rese possibili da Cloud Workstations. Aggiungi questi consigli al tuo portfolio di soluzioni di sicurezza, se applicabili, nell'ambito degli sforzi per creare un approccio di sicurezza a più livelli. Un approccio di sicurezza a più livelli è uno dei principi di sicurezza fondamentali per l'esecuzione di servizi sicuri e conformi su Google Cloud.
Sfondo
Il servizio Cloud Workstations fornisce immagini di base predefinite da utilizzare con il servizio. Il servizio ricrea e ripubblica queste immagini settimanalmente per garantire che il software in bundle includa le patch di sicurezza più recenti. Inoltre, il servizio utilizza un valore predefinito di timeout di esecuzione nella configurazione della workstation per garantire che le workstation vengano aggiornate automaticamente e che le immagini senza patch non rimangano attive.
Tuttavia, Google Cloud non è proprietaria di tutti i pacchetti inclusi in queste immagini. I gestori di pacchetti potrebbero dare priorità agli aggiornamenti in modo diverso a seconda dell'impatto di un bug o di vulnerabilità ed esposizioni comuni (CVE) sul loro prodotto. Se un prodotto utilizza solo una parte di una libreria, potrebbe non essere interessato dai risultati in altre parti della libreria. Per questo motivo, anche se esistono risultati CVE dalle scansioni delle vulnerabilità delle nostre immagini, Cloud Workstations è comunque in grado di fornire un prodotto sicuro.
Cloud Workstations può farlo perché fornisce un sistema di autenticazione e autorizzazione che contribuisce a garantire che solo lo sviluppatore designato possa accedere alla propria workstation. Come per qualsiasi ambiente di sviluppo, gli sviluppatori devono applicare le best practice quando utilizzano la propria workstation. Per garantire la massima sicurezza, esegui solo codice attendibile, opera solo su input attendibili e accedi solo a domini attendibili. Inoltre, ti sconsigliamo di utilizzare le workstation per ospitare server di produzione o di condividere una singola workstation con più sviluppatori.
Se vuoi avere un maggiore controllo sulla sicurezza delle immagini delle workstation della tua organizzazione, puoi anche creare le tue immagini container personalizzate.
Utilizza Secure Web Proxy per controllare l'accesso a internet e migliorare la prevenzione della perdita di dati (DLP)
Per bloccare tutti gli accessi alla rete internet pubblica, ad esempio per la prevenzione della perdita di dati (DLP), disattiva gli indirizzi IP pubblici nelle configurazioni delle workstation.
Se disabiliti gli indirizzi IP pubblici, devi configurare l'accesso privato Google o Cloud NAT sulla tua rete.
Se utilizzi l'accesso privato Google e private.googleapis.com o restricted.googleapis.com per Artifact Registry, assicurati di configurare i record DNS per i domini
*.pkg.dev.
Tuttavia, se i tuoi sviluppatori hanno bisogno di accedere a determinati siti web esterni dalle loro workstation, utilizza Secure Web Proxy per fornire un accesso verificabile a questi siti, che include protezioni DLP.
Secure Web Proxy aiuta le organizzazioni ad applicare un accesso a internet granulare, controllando il traffico in uscita in base all'origine, all'identità, alla destinazione e al tipo di richiesta. Puoi definire queste policy all'interno di un contesto di Google Cloud Identity and Access Management (IAM), utilizzando service account e tag sicuri per limitare il traffico, ad esempio, a una destinazione specifica.
Secure Web Proxy offre anche un servizio di ispezione TLS scalabile che consente di applicare policy al traffico TLS criptato intercettato.
Secure Web Proxy si integra con Cloud Logging per registrare metriche e log delle transazioni. Per identificare la workstation di origine per una determinata voce di log, trova l'indirizzo IP della VM nella voce di log, quindi utilizza i log della piattaforma della workstation per correlare l'indirizzo IP alla workstation corrispondente.
Puoi utilizzare un'immagine personalizzata per impostare https_proxy e http_proxy su Secure Web Proxy nelle tue workstation.
Limita l'accesso SSH diretto
Assicurati di limitare l'accesso SSH diretto alle VM nel progetto che ospita Cloud Workstations, in modo che l'accesso sia possibile solo tramite il gateway Cloud Workstations, dove vengono applicate le policy di Identity and Access Management (IAM) e possono essere abilitati i log di flusso VPC.
Per disattivare l'accesso SSH diretto alla VM, esegui il seguente comando di Google Cloud CLI:
gcloud workstations configs update CONFIG \
--cluster=CLUSTER \
--region=REGION \
--project=PROJECT \
--disable-ssh-to-vm
Limita l'accesso alle risorse sensibili
Configura un perimetro di servizio dei Controlli di servizio VPC per limitare l'accesso alle risorse sensibili dalle tue workstation, impedendo l'esfiltrazione di codice sorgente e dati.
Segui il principio del privilegio minimo
Segui il principio del privilegio minimo per le autorizzazioni e l'allocazione delle risorse.
Autorizzazioni IAM
Utilizza la configurazione predefinita di Identity and Access Management, limitando l'accesso alla workstation a un singolo sviluppatore. In questo modo, ogni sviluppatore utilizza un'istanza di workstation univoca con una VM sottostante distinta, aumentando l'isolamento dell'ambiente. Gli editor di codice e le applicazioni di Cloud Workstations vengono eseguiti all'interno di un container in modalità con privilegi e con accesso root, per una maggiore flessibilità per gli sviluppatori. In questo modo, ogni sviluppatore ha una workstation unica e, anche se un utente esce dal container, si trova comunque all'interno della sua VM, senza poter accedere ad altre risorse esterne.
Configura le autorizzazioni IAM che limitano l'accesso amministrativo per modificare le configurazioni delle workstation e le immagini container su Artifact Registry.
Inoltre, Google consiglia di configurare le autorizzazioni IAM per limitare l'accesso non amministrativo a tutte le risorse Compute Engine sottostanti nel progetto che ospita le tue workstation Cloud Workstations.
Per saperne di più, consulta Utilizzo sicuro di IAM.
Autorizzazioni Cloud KMS
Per supportare meglio il principio del privilegio minimo, ti consigliamo di conservare le risorse Cloud KMS e Cloud Workstations in progetti Google Cloud separati. Crea il progetto di chiavi Cloud KMS senza un owner a livello di progetto e designa un Amministratore organizzazione
concesso a livello di organizzazione.
A differenza di un owner, un Organization Admin non può gestire o utilizzare direttamente le chiavi. Possono solo impostare policy IAM, che limitano chi può gestire e utilizzare le chiavi.
Questo concetto è noto anche come separazione dei compiti e consiste nel garantire che un singolo individuo non disponga di tutte le autorizzazioni necessarie per poter completare un'azione dannosa. Per saperne di più, consulta la sezione sulla separazione dei compiti.
Applica patch e aggiornamenti automatici delle immagini
Assicurati che le tue workstation utilizzino l'ultima versione delle immagini di base di Cloud Workstations, che contiene le correzioni e le patch di sicurezza più recenti. Il valore del timeout di esecuzione nella configurazione della workstation contribuisce a garantire che le workstation create con questa configurazione vengano aggiornate automaticamente alla sessione successiva, in modo da corrispondere all'ultima versione dell'immagine container definita nella configurazione della workstation.
- Se la tua organizzazione utilizza una delle immagini di base di Cloud Workstations, la workstation applica automaticamente gli aggiornamenti alla configurazione della workstation al successivo arresto e riavvio della workstation. L'impostazione
runningTimeouto l'utilizzo del valore predefinito consente di garantire l'arresto di queste workstation. - Se la tua organizzazione utilizza un'immagine personalizzata, assicurati di ricrearla regolarmente.
Gestisci le immagini personalizzate
Sei responsabile della manutenzione e dell'aggiornamento dei pacchetti e delle dipendenze personalizzati aggiunti alle immagini personalizzate.
Se crei immagini personalizzate, ti consigliamo di:
- Esegui uno strumento di scansione dei container come Artifact Analysis per ispezionare eventuali dipendenze aggiuntive che hai aggiunto.
- Pianifica le build per ricreare le immagini settimanalmente o scopri come automatizzare la ricostruzione delle immagini container.
Configura i log di flusso VPC
Quando crei un cluster di workstation, Cloud Workstations lo associa a una subnet specifica e tutte le workstation vengono inserite in quella subnet. Per abilitare i log di flusso VPC, assicurati di attivare il logging per la subnet. Per saperne di più, consulta Abilita i log di flusso VPC per una subnet esistente.
Abilita VM Threat Detection in Security Command Center
Security Command Center è una soluzione di gestione dei rischi basata su cloud che aiuta i professionisti della sicurezza a prevenire, rilevare e rispondere ai problemi di sicurezza. Poiché le workstation vengono eseguite su una VM dedicata per workstation, Virtual Machine Threat Detection può essere utilizzato per rilevare applicazioni potenzialmente dannose, come software di mining di criptovalute, rootkit in modalità kernel e malware in esecuzione nella workstation.
Quando valuti i risultati per le VM, puoi trovare la workstation assegnata alla VM esaminando le etichette della workstation sulla VM o utilizzando i log della piattaforma delle workstation per cercare le assegnazioni storiche.