Esta página explica o que é o Policy Controller e como pode usá-lo para ajudar a garantir que os seus clusters e cargas de trabalho do Kubernetes estão a ser executados de forma segura e em conformidade.
Esta página destina-se a administradores de TI, operadores e especialistas em segurança que definem soluções de TI e arquitetura de sistemas de acordo com a estratégia da empresa e garantem que todos os recursos em execução na plataforma na nuvem cumprem os requisitos de conformidade organizacional através do fornecimento e da manutenção da automatização para auditar ou aplicar. Para saber mais sobre as funções comuns e as tarefas de exemplo que referimos no conteúdo, consulte o artigo Funções e tarefas comuns do utilizador do GKE. Google Cloud
O Policy Controller permite a aplicação e a imposição de políticas programáveis para os seus clusters do Kubernetes. Estas políticas atuam como salvaguardas e podem ajudar com as práticas recomendadas, a segurança e a gestão da conformidade dos seus clusters e frota. Baseado no projeto de código aberto Open Policy Agent Gatekeeper , o Policy Controller está totalmente integrado com o Google Cloud, inclui um painel de controlo integrado, para observabilidade e é fornecido com uma biblioteca completa de políticas pré-criadas para controlos de segurança e conformidade comuns.
Vantagens do Controlador de políticas
- Integrado com Google Cloud: os administradores da plataforma podem instalar o Policy Controller através da Google Cloud consola, do Terraform ou da CLI Google Cloud em qualquer cluster ligado à sua frota. O Policy Controller funciona com outros Google Cloud serviços, como o Config Sync, as métricas e o Cloud Monitoring.
- Suporta vários pontos de aplicação: além da auditoria e do controlo de admissão para o seu cluster, o Policy Controller pode, opcionalmente, ativar uma abordagem de mudança para a esquerda para analisar e detetar alterações não conformes antes da aplicação.
- Pacotes de políticas pré-criadas: o Policy Controller inclui uma biblioteca completa de políticas pré-criadas para controlos de segurança e conformidade comuns. Estes incluem pacotes de políticas e a biblioteca de modelos de restrições.
- Suporta políticas personalizadas: se a personalização de políticas for necessária além do que está disponível através da biblioteca de modelos de restrições, o Policy Controller também suporta o desenvolvimento de modelos de restrições personalizados.
- Observabilidade integrada: o Policy Controller inclui um Google Cloud painel de controlo da consola, que oferece uma vista geral do estado de todas as políticas aplicadas à sua frota (incluindo clusters não registados). No painel de controlo, veja o estado de conformidade e aplicação para ajudar a resolver problemas e receber recomendações opinativas para resolver violações de políticas.
Pacotes de políticas
Pode usar pacotes de políticas para aplicar várias restrições agrupadas num tema específico de segurança, conformidade ou padrão do Kubernetes. Por exemplo, pode usar os seguintes conjuntos de políticas:
- Aplicam muitos dos mesmos requisitos que as PodSecurityPolicies, mas com a capacidade adicional de auditar a sua configuração antes de a aplicar, garantindo que as alterações às políticas não são disruptivas para as cargas de trabalho em execução.
- Use restrições compatíveis com o Cloud Service Mesh para auditar a conformidade das vulnerabilidades de segurança da sua malha e as práticas recomendadas.
- Aplique práticas recomendadas gerais aos recursos do cluster para ajudar a reforçar a sua postura de segurança.
A vista geral dos pacotes do Policy Controller oferece mais detalhes e uma lista dos pacotes de políticas atualmente disponíveis.
Restrições
O Policy Controller aplica a conformidade dos seus clusters através de objetos denominados restrições. Pode pensar nas restrições como os "elementos básicos" da política. Cada restrição define uma alteração específica à API Kubernetes que é permitida ou não permitida no cluster ao qual é aplicada. Pode definir políticas para bloquear ativamente pedidos de API não conformes ou auditar a configuração dos seus clusters e denunciar violações. Em qualquer caso, pode ver mensagens de aviso com detalhes sobre a violação ocorrida num cluster. Com essas informações, pode corrigir os problemas. Por exemplo, pode usar as seguintes restrições individuais:
- Exigir que cada espaço de nomes tenha, pelo menos, uma etiqueta. Esta restrição pode ser usada para garantir uma monitorização precisa do consumo de recursos quando usar a medição de utilização do GKE, por exemplo.
- Restrinja os repositórios a partir dos quais é possível extrair uma determinada imagem de contentor. Esta restrição garante que qualquer tentativa de extrair contentores de origens desconhecidas é recusada, protegendo os seus clusters da execução de software potencialmente malicioso.
- Controlar se um contentor pode ou não ser executado no modo privilegiado. Esta restrição controla a capacidade de qualquer contentor ativar o modo privilegiado, o que lhe dá controlo sobre os contentores (se existirem) que podem ser executados com uma política não restrita.
Estas são apenas algumas das restrições fornecidas na biblioteca de modelos de restrições incluída no Policy Controller. Esta biblioteca contém várias políticas que pode usar para ajudar a aplicar as práticas recomendadas e limitar o risco. Se precisar de mais personalização além do que está disponível na biblioteca de modelos de restrições, também pode criar modelos de restrições personalizados.
As restrições podem ser aplicadas diretamente aos seus clusters através da API Kubernetes ou distribuídas a um conjunto de clusters a partir de uma origem centralizada, como um repositório Git, através da sincronização de configuração.
O que se segue?
- Instale o Policy Controller.
- Saiba mais sobre os conjuntos de políticas.
- Aplique conjuntos de políticas