Questa pagina fornisce una panoramica delle best practice per la sicurezza consigliate per aumentare la sicurezza e la protezione dei dati delle tueCloud Workstationsd. Questo elenco non è un elenco di controllo completo che garantisce la sicurezza o una sostituzione delle tue posture di sicurezza esistenti.
L'obiettivo è fornirti una guida alle best practice per la sicurezza rese possibili da Cloud Workstations. Aggiungi questi consigli al tuo portafoglio di soluzioni di sicurezza, se applicabili, nell'ambito degli sforzi per creare un approccio alla sicurezza a più livelli. Un approccio alla 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 ricompila e ripubblica queste immagini settimanalmente per contribuire a garantire che il software in bundle includa le patch di sicurezza più recenti. Inoltre, il servizio utilizza un valore timeout di esecuzione predefinito 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 è proprietario di tutti i pacchetti inclusi in queste immagini. I gestori di pacchetti potrebbero dare la 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 dalle scoperte 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 workstation. Per garantire la massima sicurezza possibile, esegui solo codice attendibile, opera solo su input attendibili e accedi solo a domini attendibili. Inoltre, è sconsigliato utilizzare le workstation per ospitare server di produzione o 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 immagini container personalizzate.
Limitare l'accesso alla rete pubblica
Disattiva gli indirizzi IP pubblici
sulle workstation utilizzando la configurazione della workstation e
configura le regole firewall
limitando l'accesso alle destinazioni internet pubbliche non necessarie per il lavoro quotidiano
da Cloud Workstations.
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
.
Limitare 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 applicati i criteri di Identity and Access Management (IAM) e dove possono essere attivati i log di flusso VPC.
Per disattivare l'accesso SSH diretto alla VM, esegui questo comando Google Cloud CLI:
gcloud workstations configs update CONFIG \ --cluster=CLUSTER \ --region=REGION \ --project=PROJECT \ --disable-ssh-to-vm
Limitare l'accesso alle risorse sensibili
Configura un perimetro di servizio Controlli di servizio VPC per limitare l'accesso alle risorse sensibili dalle workstation, impedendo l'esfiltrazione di dati e codice sorgente.
Seguire 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 Cloud Workstations vengono eseguiti all'interno di un container in esecuzione in modalità con privilegi e con accesso root, per una maggiore flessibilità per gli sviluppatori. In questo modo viene fornita una workstation unica per sviluppatore e si contribuisce a garantire che, anche se un utente esce da questo container, rimanga all'interno della sua VM, senza poter accedere a risorse esterne aggiuntive.
Configura le autorizzazioni IAM limitando l'accesso non amministrativo alla modifica delle configurazioni delle workstation e delle immagini container su Artifact Registry.
Inoltre, Google consiglia di configurare le autorizzazioni IAM limitando l'accesso non amministrativo a qualsiasi risorsa Compute Engine sottostante nel progetto che ospita lCloud Workstationsud.
Per ulteriori informazioni, consulta la sezione Utilizzare IAM in modo sicuro.
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 dell'organizzazione
concesso a livello di organizzazione.
A differenza di un owner
, un
amministratore dell'organizzazione
non può gestire o utilizzare
le chiavi direttamente. Sono limitati all'impostazione di criteri IAM,
che limitano chi può gestire e utilizzare le chiavi.
Questo concetto è anche noto come separazione dei compiti,che consiste nell'assicurarsi che un individuo non disponga di tutte le autorizzazioni necessarie per poter completare un'azione dannosa. Per ulteriori informazioni, consulta la sezione Separazione dei compiti.
Applicare aggiornamenti e patch automatici delle immagini
Assicurati che le workstation utilizzino l'ultima versione delle immagini di base di Cloud Workstations, che contiene le patch e le correzioni di sicurezza più recenti. Il valore di timeout di esecuzione nella configurazione della workstation contribuisce a garantire che le workstation create con questa configurazione vengano aggiornate automaticamente nella 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 rileva automaticamente gli aggiornamenti alla configurazione della workstation al successivo arresto e riavvio. L'impostazione
runningTimeout
o l'utilizzo di quella predefinita contribuisce a garantire l'arresto di queste workstation. - Se la tua organizzazione utilizza un'immagine personalizzata, assicurati di ricompilare regolarmente l'immagine.
Gestire le immagini personalizzate
È tua responsabilità gestire e aggiornare i pacchetti e le dipendenze personalizzati aggiunti alle immagini personalizzate.
Se crei immagini personalizzate, ti consigliamo di:
Esegui uno strumento di scansione dei container come Artifact Analysis per esaminare eventuali dipendenze aggiuntive che hai aggiunto.
Pianifica le build per ricompilare le immagini settimanalmente o scopri come automatizzare le ricompilazioni 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 la registrazione per la subnet. Per maggiori informazioni, consulta Abilitare i log di flusso VPC per una subnet esistente.
Abilita il rilevamento delle minacce per le VM in Security Command Center
Security Command Center è una soluzione di gestione dei rischi basata sul 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.