Questa pagina spiega cos'è Policy Controller e come puoi utilizzarlo per contribuire a garantire l'esecuzione sicura e conforme dei tuoi cluster e carichi di lavoro Kubernetes.
Questa pagina è rivolta ad amministratori IT, operatori e specialisti della sicurezza che definiscono le soluzioni IT e l'architettura di sistema in base alla strategia aziendale e assicurano che tutte le risorse in esecuzione all'interno della piattaforma cloud soddisfino i requisiti di conformità dell'organizzazione fornendo e gestendo l'automazione per il controllo o l'applicazione. Per scoprire di più su i ruoli comuni e sulle attività di esempio a cui facciamo riferimento nei contenuti di Google Cloud , consulta Ruoli e attività comuni per gli utenti di GKE Enterprise.
Policy Controller consente l'applicazione, anche forzata, dei criteri programmabili per i tuoi cluster Kubernetes. Questi criteri fungono da barriere e possono aiutarti con la gestione di best practice, sicurezza e conformità dei tuoi cluster e del tuo parco risorse. Basato sul progetto open source Open Policy Agent Gatekeeper, Policy Controller è completamente integrato con Google Cloud, include una dashboard integrata per l'osservabilità e una libreria completa di criteri predefiniti per i controlli di sicurezza e conformità più comuni.
Policy Controller è disponibile con una licenza della versione Enterprise di Google Kubernetes Engine (GKE).
Vantaggi di Policy Controller
- Integrato con Google Cloud: gli amministratori della piattaforma possono installare Policy Controller utilizzando la console Google Cloud , Terraform o Google Cloud CLI su qualsiasi cluster collegato al tuo parco risorse. Policy Controller funziona con altri serviziGoogle Cloud come Config Sync, metriche e Cloud Monitoring.
- Supporta più punti di applicazione: oltre al controllo di audit e di ammissione per il cluster, Policy Controller può attivare facoltativamente un approccio di tipo shift-left per analizzare e rilevare le modifiche non conformi prima dell'applicazione.
- Bundle di criteri predefiniti: Policy Controller include una libreria completa di criteri predefiniti per i controlli di sicurezza e conformità più comuni. Sono inclusi sia i bundle di norme, creati e gestiti da Google, sia la libreria di modelli di vincoli.
- Supporta i criteri personalizzati: se è richiesta una personalizzazione dei criteri oltre a quanto è disponibile utilizzando la libreria dei modelli di vincolo, Policy Controller supporta inoltre lo sviluppo di modelli di vincolo personalizzati.
- Osservabilità integrata: Policy Controller include una dashboard della console Google Cloud , che fornisce una panoramica dello stato di tutti i criteri applicati al tuo parco risorse (inclusi i cluster non registrati). Nella dashboard puoi visualizzare lo stato di conformità e di applicazione delle norme al fine di correggere i problemi e ricevere suggerimenti utili per risolvere le violazioni.
Bundle di criteri
Puoi utilizzare i pacchetti di criteri per applicare una serie di vincoli raggruppati in base a uno standard, a un tema di sicurezza o di conformità Kubernetes specifico. Questi set di norme vengono creati e gestiti da Google e sono quindi pronti per essere utilizzati senza dover scrivere codice. Ad esempio, puoi utilizzare i seguenti set di norme:
- Applica molti degli stessi requisiti di PodSecurityPolicies, ma con la possibilità aggiuntiva di controllare la configurazione prima di applicarla, assicurandoti che eventuali modifiche ai criteri non interrompano i carichi di lavoro in esecuzione.
- Utilizza vincoli compatibili con Cloud Service Mesh per verificare la conformità delle vulnerabilità e delle best practice per la sicurezza del mesh.
- Applica le best practice generali alle risorse del cluster per rafforzare la tua strategia di sicurezza.
La panoramica dei pacchetti di controller dei criteri fornisce ulteriori dettagli e un elenco dei pacchetti di criteri attualmente disponibili.
Vincoli
Policy Controller applica la conformità dei cluster utilizzando oggetti chiamati vincoli. Puoi considerare i vincoli come i "mattoni" delle norme. Ogni vincolo definisce una modifica specifica all'API Kubernetes consentita o non consentita nel cluster a cui viene applicata. Puoi impostare criteri per bloccare attivamente le richieste API non conformi o controllare la configurazione dei tuoi cluster e segnalare le violazioni. In entrambi i casi, puoi visualizzare i messaggi di avviso con i dettagli della violazione che si è verificata in un cluster. Con queste informazioni, puoi risolvere i problemi. Ad esempio, puoi utilizzare i seguenti vincoli individuali:
- Richiedi che ogni spazio dei nomi abbia almeno un'etichetta. Questo vincolo può essere utilizzato per garantire un monitoraggio accurato del consumo di risorse, ad esempio quando utilizzi la misurazione dell'utilizzo di GKE.
- Limita i repository da cui è possibile estrarre una determinata immagine container. Questo vincolo garantisce che qualsiasi tentativo di estrarre i container da origini sconosciute venga negato, proteggendo i cluster dall'esecuzione di software potenzialmente dannoso.
- Controlla se un contenitore può essere eseguito in modalità privilegiata. Questo vincolo controlla la possibilità di qualsiasi contenitore di attivare la modalità privilegiata, che ti consente di controllare quali contenitori (se presenti) possono essere eseguiti con criteri non limitati.
Questi sono solo alcuni dei vincoli forniti nella libreria di modelli di vincoli inclusa in Policy Controller. che contiene numerosi criteri che puoi utilizzare per applicare le best practice e limitare i rischi. Se hai bisogno di una maggiore personalizzazione rispetto a quella disponibile nella libreria dei modelli di vincolo, puoi anche creare modelli di vincolo personalizzati.
I vincoli possono essere applicati direttamente ai cluster utilizzando l'API Kubernetes o distribuiti a un insieme di cluster da un'origine centralizzata, come un repository Git, utilizzando Config Sync.