Share via


Linha de base de governança, segurança e conformidade para Kubernetes habilitado para Azure Arc

Este artigo fornece as considerações de design importantes e as melhores práticas para segurança, governança e conformidade que você deve usar ao implantar o Kubernetes habilitado para Azure Arc. Embora a documentação da zona de destino em escala empresarial abranja Governança e Segurança como tópicos separados, essas áreas críticas de design são consolidadas em um único tópico para Kubernetes habilitado para Azure Arc.

O Azure Policy e o Microsoft Defender para Nuvem são ferramentas nativas da nuvem que permitem a implementação de verificadores de integridade, controles, relatórios, alertas e tarefas de correção de forma automatizada em escala. Ao combiná-las com o Kubernetes habilitado para Azure Arc, você pode estender as políticas de governança e as verificações de segurança para qualquer cluster do Kubernetes no ambiente local e/ou multicloud.

Arquitetura

O diagrama a seguir mostra uma arquitetura de referência conceitual que descreve as áreas de segurança, conformidade e design de governança para Kubernetes habilitado para Azure Arc:

Diagram showing the Enterprise-scale security, governance, and compliance for Azure Arc-enabled Kubernetes.

Considerações sobre o design

À medida que os recursos híbridos e multicloud se tornam parte do Azure Resource Manager, você pode gerenciá-los e controlá-los no Azure. Esta seção contém as considerações de design que você deve ter em mente ao planejar a segurança e a governança dos recursos de cluster do Kubernetes habilitado para Azure Arc.

Examine as áreas de design segurança e governança das zonas de destino do Azure, para avaliar o efeito do Kubernetes habilitado para Azure Arc nos modelos gerais de governança e segurança.

Provisionamento de agente

Defina uma estratégia para provisionar o agente do Kubernetes habilitado para Azure Arc e use o princípio de privilégios mínimos ao criar a entidade de serviço de integração. Use a automação para registro em massa.

Gerenciamento de agentes

Os agentes do Kubernetes habilitado para Azure Arc desempenham uma função crítica nas operações híbridas dos clusters do Kubernetes habilitado para Azure Arc, pois permitem que você gerencie clusters no Azure. Implemente soluções que acompanham o status de conectividade do agente. Defina um processo para atualizar os agentes do Kubernetes habilitado para Azure Arc.

RBAC (controle de acesso baseado em função)

Defina funções de administrador, de operações e de desenvolvedor na organização, as quais sejam responsáveis pelas operações diárias nos clusters híbridos. O mapeamento de cada equipe para as ações e responsabilidades determina as funções RBAC (controle de acesso baseado em função) do Azure, bem como o ClusterRoleBinding e o RoleBinding do Kubernetes.

Use uma matriz RACI para dar suporte a esses esforços e compilar controles na hierarquia de escopo de gerenciamento definida com base na consistência dos recursos e nas diretrizes de gerenciamento de inventário.

Para obter mais informações, confira Gerenciamento de identidades e acesso para Kubernetes habilitado para Azure Arc.

Gerenciamento de segredos e certificados

Proteja os segredos e certificados usando o Azure Key Vault e implantando a respectiva extensão nos clusters do Kubernetes habilitado para Azure Arc por meio da CSI (Interface de Armazenamento de Contêiner).

Residência de dadosResidência de dados

Considere em qual região do Azure você planeja provisionar o cluster do Kubernetes habilitado para Azure Arc. Entenda quais dados são coletados dos recursos e planeje de acordo, com base nos requisitos de residência de dados da organização.

Habilitar e proteger as configurações do GitOps

As configurações do GitOps impõem o estado desejado do sistema e são uma ferramenta importante para acompanhar a conformidade do cluster do Kubernetes habilitado para Arc. Ao trabalhar com as configurações do GitOps, proteja o acesso ao sistema de controle do código-fonte por meio de controles de acesso e rede apropriados.

Gerenciamento de política e relatório

Defina um plano de governança para os clusters híbridos do Kubernetes que são convertidos em políticas do Azure que auditam e impõem padrões organizacionais em escala. Por exemplo, você pode impor uma política sourceControlConfiguration aos clusters do Kubernetes, para garantir que os clusters obtenham a fonte de verdade para cargas de trabalho e configurações de um repositório Git definido e acompanhar a conformidade usando o Azure Policy.

Estratégia de gerenciamento de logs

Examine as considerações e recomendações de design da área de design crítica para disciplinas de gerenciamento e planeje coletar métricas e logs dos recursos híbridos em um workspace do Log Analytics para análise e auditoria adicionais.

Proteção contra ameaças e gerenciamento da postura de segurança na nuvem

Imponha a proteção contra ameaças e apresente controles para detectar as configurações incorretas de segurança e acompanhar a conformidade. Use a inteligência do Azure para proteger as cargas de trabalho híbridas contra ameaças. Permita o monitoramento da linha de base de segurança, o gerenciamento da postura de segurança e a proteção contra ameaças para todas as assinaturas que contêm o Kubernetes habilitado para Azure Arc, habilitando o Microsoft Defender para Contêineres.

Acesso seguro ao cluster

Planeje proteger o acesso à API do Kubernetes. O recurso de conexão de cluster do Kubernetes habilitado para Azure Arc fornece conectividade com o servidor de API, sem a necessidade de ter uma porta de entrada habilitada.

Melhorar a observabilidade e a segurança dos microsserviços

A implementação de uma malha de serviço pode ajudar na autenticação, autorização, segurança e visibilidade de aplicativos baseados em microsserviço. O Kubernetes habilitado para Azure Arc simplifica a implantação do OSM (Open Service Mesh) como extensão.

Recomendações sobre design

Esta seção contém as considerações de design que você deve seguir ao planejar a segurança e a governança dos recursos de cluster do Kubernetes habilitado para Azure Arc.

Provisionamento de agente

  • Defina uma estratégia para integrar os clusters ao Azure Arc, incluindo um método de automação para registro em massa. Estabeleça um plano formal que leve em conta o escopo da implantação e inclua objetivos, critérios de seleção, critérios de sucesso, planos de treinamento, reversão e riscos.

  • Você pode usar uma entidade de serviço para integrar o provisionamento de agente como parte dos pipelines de CI/CD (integração contínua e implantação contínua). Você deve limitar os privilégios dessa entidade de serviço e atribuir apenas as funções necessárias para integrar o Kubernetes ao Azure (a função "Cluster do Kubernetes – Integração do Azure Arc"), pois ele só pode ser usado para integrar o Kubernetes, e não para desfazer o processo ou excluir o recurso.

Gerenciamento de agentes

Os agentes do Azure Arc são componentes principais do Kubernetes habilitado para Azure Arc, contendo vários componentes lógicos que desempenham uma função nas operações de segurança, governança e gerenciamento.

Se um agente parar de enviar pulsações para o Azure, ficar offline ou perder a conectividade com o Azure, você não poderá executar as tarefas operacionais. Desenvolva um plano de como você será notificado se esses cenários acontecerem e como a organização deve responder.

Você pode usar o Log de Atividades do Azure para configurar alertas de integridade de recursos e se manter informado sobre o status de integridade atual e histórico dos pods do agente. Para entender como gerenciar corretamente o agente, examine a área de design crítica para gerenciamento.

Se o serviço não receber uma pulsação do agente por 15 minutos, o cluster do Kubernetes habilitado para Azure Arc será exibido como offline. Para garantir que o agente possa se conectar com segurança aos pontos de extremidade do Azure Arc, examine a área de design crítica para conectividade do Kubernetes habilitada para Azure Arc.

RBAC (controle de acesso baseado em função)

Depois de integrar um cluster do Kubernetes, você poderá atribuir o RBAC do Azure ao recurso de cluster do Kubernetes habilitado para Azure Arc.

Siga o princípio de privilégios mínimos ao atribuir funções como "Colaborador" ou "Proprietário", que podem executar operações como a implantação de extensões, que executam ações como "ClusterAdmin" e afetam todo o cluster. Essas funções devem ser usadas com cuidado para limitar o possível "raio de explosão" ou devem ser eventualmente substituídas por funções personalizadas.

Você deve aplicar o mesmo princípio RBAC aos dados confidenciais enviados para o workspace do Log Analytics do Azure Monitor. O Kubernetes habilitado para Azure Arc fornece acesso RBAC aos dados de log coletados pelo agente do Log Analytics, armazenados no workspace do Log Analytics em que o cluster está registrado. Para saber como implementar o acesso granular ao Workspace do Log Analytics, examine Design de implantação dos Logs do Azure Monitor.

A integração do cluster Kubernetes habilitado para Arco do Azure com a ID do Microsoft Entra permite que você use as atribuições de função do Azure para obter um controle mais granular sobre quem tem acesso e permissões para recursos de cluster do Kubernetes habilitados para Arco do Azure.

Observação

Essa integração funciona nativamente com os tipos de objeto Kubernetes ClusterRoleBinding e RoleBinding e consolida efetivamente a autorização para seu cluster Kubernetes com o Microsoft Entra ID como o serviço central de gerenciamento de identidade e acesso. Usando o Microsoft Entra ID, você obtém auditoria completa e rastreamento das alterações feitas no cluster, bem como quaisquer eventos de autorização.

A integração com o Microsoft Entra ID também permite acessar recursos avançados de segurança, que você deve usar para configurar:

  • Acesso condicional com Microsoft Entra ID. Você pode encontrar mais informações sobre o Acesso Condicional na visão geral do Acesso Condicional.
  • Regras de acesso JIT para tarefas que precisam de permissões elevadas. Ter acesso permanente para alguns usuários a informações confidenciais ou configurações críticas de rede no Kubernetes cria um possível caminho para as contas comprometidas ou atividades de ameaças internas. O gerenciamento de acesso com privilégios pode ajudar a proteger a organização contra violações e ajuda a seguir as melhores práticas de conformidade, limitando o acesso permanente a dados confidenciais ou acesso a configurações críticas.

Gerenciamento de segredos e certificados

Não armazene segredos ou certificados no código do aplicativo nem em sistemas de arquivos. Segredos devem ser armazenados em repositórios de chaves e fornecidos aos contêineres em runtime conforme necessário.

Use a extensão do Azure Key Vault para gerenciar segredos e certificados nos clusters do Kubernetes habilitado para Azure Arc. A extensão do Key Vault permite que você gerencie o ciclo de vida do certificado nas implantações do Kubernetes, conforme mostrado no diagrama a seguir.

Diagram showing Azure Arc-enabled Kubernetes and Key Vault integration.

Habilitar e proteger as configurações do GitOps

O GitOps é um componente essencial de qualquer estratégia de TI que tenha uma abordagem totalmente automatizada para as operações. O GitOps fornece recursos de escala, consistência, acompanhamento e auditoria para qualquer implantação.

O uso do GitOps pode simplificar a implantação de vários aplicativos em todos os clusters e ambientes ao acompanhar e impor o estado desejado do sistema declarativamente com o Git. Quando você usa o Git como única fonte de verdade e como a ferramenta central para todas as implantações, ele se torna a melhor maneira de controlar os estados do cluster, contabilizar as alterações e aprovações ao longo do tempo, facilitar a investigação de falhas e habilitar a automação em ambientes distribuídos.

Ao adicionar as configurações do GitOps, proteja o acesso ao repositório e às respectivas chaves e defina as permissões de ramificação. Para obter mais informações, examine a área de design crítica do GitOps.

Gerenciamento de política e relatório

A governança orientada por políticas é um princípio fundamental das operações nativas da nuvem e do Microsoft Cloud Adoption Framework para Azure. O Azure Policy fornece o mecanismo para impor padrões corporativos e avaliar a conformidade em escala. Por meio do Azure Policy, você pode implementar a governança para obter consistência nas implantações, conformidade, controle de custos e postura de segurança. No painel de conformidade, você pode ver uma exibição agregada do estado geral do ambiente em escala e encontrar os recursos de correção no nível do cluster.

O Kubernetes habilitado para Azure Arc dá suporte ao Azure Policy na camada de gerenciamento de recursos do Azure e também às imposições de política no cluster, estendendo o Gatekeeper para Open Policy Agent. Você pode implementar qualquer uma das políticas internas para obter rapidamente conformidade e imposição em escala. O diagrama a seguir ilustra como o Azure Policy aplica imposições e proteções em escala aos clusters do Kubernetes habilitado para Azure Arc.

Diagram showing Azure Arc-enabled Kubernetes Policy.

Entenda o escopo da política do Azure e onde você pode aplicá-la (grupo de gerenciamento, assinatura, grupo de recursos ou nível de recurso individual). Use a biblioteca interna do Azure Policy para Kubernetes habilitado para Azure Arc. Crie um design de grupo de gerenciamento de acordo com as práticas recomendadas descritas nas diretrizes de escala empresarial do Cloud Adoption Framework.

  • Determine de quais políticas do Azure você precisa para atender aos requisitos de negócios, regulamentação e segurança da organização para Kubernetes habilitado para Azure Arc em escala.
  • Imponha a marcação e implemente as tarefas de correção.
  • Use o Azure Policy para impor o GitOps e aplicar as configurações em escala.
  • Entenda e avalie as Definições internas do Azure Policy para Kubernetes habilitado para o Azure Arc.
  • As políticas DeployIfNotExists do Azure Policy implantam programaticamente extensões/agentes de serviço de gerenciamento nos clusters habilitados para Arc em escala, incluindo o Azure Monitor.
  • Habilite o Azure Monitor Container Insights para obter conformidade e monitoramento operacional dos clusters do Kubernetes habilitado para Azure Arc.

Estratégia de gerenciamento de logs

Crie e planeje a implantação do Workspace do Log Analytics, que é o armazenamento em que os dados são coletados, agregados e analisados posteriormente. Como o workspace do Log Analytics representa uma localização geográfica dos dados, para dar suporte a um nível de isolamento e escopo para configurações como a retenção de dados, você deve determinar o número de workspaces necessários e como eles serão mapeados para a estrutura organizacional.

Use um único workspace do Log Analytics do Azure Monitor para gerenciar o RBAC centralizado, a visibilidade e os relatórios, conforme descrito nas Melhores práticas de gerenciamento e monitoramento do Cloud Adoption Framework.

Para obter mais informações, examine as melhores práticas para design de implantação dos Logs do Azure Monitor.

Proteção contra ameaças e gerenciamento da postura de segurança na nuvem

  • O Microsoft Defender para Nuvem fornece uma plataforma de gerenciamento de segurança unificada segmentada como CSPM (gerenciamento da postura de segurança na nuvem) e CWPP (plataforma de proteção de cargas de trabalho na nuvem). Para aumentar a segurança na zona de destino híbrida, você precisa proteger os dados e os ativos hospedados no Azure e em outros lugares.
  • O Microsoft Defender para Contêineres estende os recursos do Microsoft Defender para Nuvem para o Kubernetes habilitado para Azure Arc. Para aumentar a segurança em sua zona de pouso híbrida, considere:
    • Use a extensão do Kubernetes habilitado para Azure Arc para integrar os recursos do Kubernetes habilitado para Arc no Microsoft Defender para Nuvem.
    • Habilite o plano do Microsoft Defender para Contêineres para todas as assinaturas. Por padrão, o plano é configurado para implantar automaticamente a extensão do Defender em qualquer cluster do Kubernetes habilitado para Arc integrado à mesma assinatura. Opcionalmente, você pode modificar essa configuração.
    • Verifique se a extensão do Defender está implantada nos clusters.
    • Use a integração do SIEM (gerenciamento de eventos e informações de segurança) com o Microsoft Defender para Nuvem e o Microsoft Sentinel.

O diagrama a seguir ilustra uma arquitetura de referência conceitual do Microsoft Defender para Nuvem em um recurso de cluster do Kubernetes habilitado para Azure Arc.

A diagram depicting the Microsoft Defender for Azure Arc-enabled Kubernetes.

Se você usar o Registro de Contêiner da Microsoft como registro do Docker privado central para armazenar e gerenciar as imagens de contêiner, deverá usar o Microsoft Defender para Contêineres para verificar as imagens em busca de vulnerabilidades.

Examine a área de design crítica para topologia de rede e conectividade.

Acesso seguro ao cluster

A API do Kubernetes recebe solicitações para executar ações no cluster. Como essa é uma maneira central de interagir e gerenciar um cluster, a API do Kubernetes é uma peça-chave que você deve proteger. Ao usar o cluster do Kubernetes habilitado para Azure Arc, você pode se conectar com segurança aos clusters do Kubernetes habilitado para Azure Arc em qualquer lugar, sem a necessidade de habilitar as portas de entrada no firewall. O acesso ao servidor de API do Kubernetes habilitado para Azure Arc oferece os seguintes benefícios:

  • Habilita a depuração interativa e a solução de problemas.
  • Habilita o uso de agentes/executores hospedados do Azure Pipelines, do GitHub Actions ou de qualquer outro serviço de CI/CD hospedado. sem a necessidade de agentes auto-hospedados.
  • Fornece acesso do cluster aos serviços do Azure para locais personalizados e outros recursos baseados neles.

Observabilidade e segurança de microsserviços

A implementação de uma malha de serviço permite introduzir autenticação e autorização nas conexões de serviços, o que impõe o princípio de privilégios mínimos e cria um ambiente mais seguro. Por padrão, os pods ficam em uma rede confiável simples. Em uma implementação de malha de serviço, um conjunto de sidecars é implantado, os quais atuam como proxies de rede. Esses sidecars gerenciam a comunicação leste-oeste, criptografam o tráfego e melhoram a observabilidade de tráfego em geral.

As implementações de malha de serviço podem proteger contra:

  • Acessos não autorizados
  • Ataques de sniffing
  • Exfiltração dos dados
  • Representações

Para obter mais informações, examine a área de design crítica para implementação do Open Service Mesh.

Próximas etapas

Para obter mais informações sobre seu percurso na nuvem híbrida e multinuvem, confira os artigos a seguir.