Partilhar via


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

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

O Azure Policy e o Microsoft Defender for Cloud são ferramentas nativas da nuvem que permitem implementar a implementação de guardrails, controlos, relatórios, alertas e tarefas de correção de forma automatizada e em escala. Ao combiná-los com o Kubernetes habilitado para Azure Arc, você pode estender políticas de governança e verificações de segurança para qualquer cluster Kubernetes em seu ambiente local e/ou multicloud.

Arquitetura

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

Diagrama mostrando a segurança, a governança e a conformidade em escala empresarial para o Kubernetes habilitado para Azure Arc.

Considerações de design

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

Analise as áreas de design de segurança e governança das zonas de aterrissagem do Azure para avaliar o efeito do Kubernetes habilitado para Azure Arc em seus modelos gerais de governança e segurança.

Provisionamento de agentes

Defina uma estratégia para provisionar o agente Kubernetes habilitado para Arco do Azure e use o princípio de menor privilégio ao criar a entidade de serviço de integração. Considere o uso da automação para inscrição em massa.

Gestão de agente

Os agentes do Kubernetes habilitados para Azure Arc desempenham um papel crítico nas operações híbridas de seus clusters Kubernetes habilitados para Azure Arc, pois permitem gerenciar clusters do Azure. Implemente soluções que acompanhem o status de conectividade do agente. Certifique-se de definir um processo para atualizar seus agentes Kubernetes habilitados para Azure Arc.

Controlo de acesso baseado em funções (RBAC)

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

Considere o uso de uma matriz RACI para dar suporte a esse esforço e crie controles na hierarquia de escopo de gerenciamento que você define com base na consistência de recursos e nas diretrizes de gerenciamento de inventário.

Para obter mais informações, consulte Gerenciamento de identidade e acesso para Kubernetes habilitados para Azure Arc.

Gestão de segredos e certificados

Proteja segredos e certificados usando o Azure Key Vault e implantando sua extensão em seus clusters kubernetes habilitados para Azure Arc por meio da CSI (Container Storage Interface).

Residência de dados

Considere em qual região do Azure você planeja provisionar seu cluster Kubernetes habilitado para Azure Arc. Entenda quais dados são coletados de seus recursos e planeje de acordo com os requisitos de residência de dados para sua organização.

Habilite e proteja configurações de GitOps

As configurações do GitOps impõem um estado desejado do sistema e são uma ferramenta importante para rastrear a conformidade do cluster Kubernetes habilitado para Arc. Ao trabalhar com configurações de GitOps, considere proteger o acesso ao seu sistema de controle de origem por meio de controles de rede e acesso apropriados.

Gestão de políticas e relatórios

Defina um plano de governança para seus clusters Kubernetes híbridos que se traduza em políticas do Azure que auditam e impõem padrões organizacionais em escala. Por exemplo, você pode impor uma política sourceControlConfiguration a clusters Kubernetes para garantir que os clusters obtenham sua fonte de verdade para cargas de trabalho e configurações de um repositório git definido e rastreiem a conformidade usando a Política do Azure.

Estratégia de gerenciamento de logs

Analise as disciplinas de gerenciamento, as considerações e recomendações críticas de design da área de design e planeje coletar métricas e logs de seus recursos híbridos em um espaço de trabalho do Log Analytics para análise e auditoria adicionais.

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

Aplique a proteção contra ameaças e introduza controles para detetar configurações incorretas de segurança e rastrear a conformidade. Use a inteligência do Azure para proteger suas cargas de trabalho híbridas contra ameaças. Habilite o monitoramento da linha de base de segurança, o gerenciamento de postura de segurança e a proteção contra ameaças para todas as assinaturas que contêm o Kubernetes habilitado para o Azure Arc habilitando o Microsoft Defender for Containers.

Acesso seguro ao cluster

Planeje para proteger o acesso à sua API do Kubernetes. O recurso de conexão de cluster Kubernetes habilitado para Azure Arc fornece conectividade ao servidor de API sem precisar de nenhuma 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 com autenticação, autorização, segurança e visibilidade de aplicativos baseados em microsserviços. O Kubernetes habilitado para Azure Arc simplifica a implantação do Open Service Mesh (OSM) como uma extensão.

Recomendações de design

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

Provisionamento de agentes

  • Defina uma estratégia para integrar seus clusters no Azure Arc, incluindo um método de automação para registro em massa. Estabeleça um plano formal que leve em conta o escopo de sua 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 agentes como parte de seus pipelines de integração contínua e implantação contínua (CI/CD). 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 "Kubernetes Cluster - Azure Arc Onboarding"), já que ele só pode ser usado para integrar o Kubernetes, não desfazendo o processo ou excluindo o recurso.

Gestão de agente

Os agentes do Azure Arc são componentes-chave do Kubernetes habilitado para Azure Arc, contendo vários componentes lógicos que desempenham um papel 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 tarefas operacionais nele. Desenvolva um plano de como você será notificado se esses cenários acontecerem e como sua organização deve responder.

Você pode usar o Log de Atividades do Azure para configurar alertas de integridade de recursos e permanecer informado sobre o status de integridade atual e histórico dos pods do seu agente. Para entender como gerenciar adequadamente seu agente, revise a área de design crítico de gerenciamento.

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

Controlo de acesso baseado em funções (RBAC)

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

Siga o princípio de menor privilégio ao atribuir funções como "Colaborador" ou "Proprietário" que podem executar operações como implantar extensões que executam ações como "ClusterAdmin" e têm um efeito em todo o cluster. Essas funções devem ser usadas com cautela para limitar o possível "raio de explosão" ou eventualmente serem substituídas por funções personalizadas.

Você deve aplicar o mesmo princípio RBAC aos dados confidenciais enviados para o espaço de trabalho do Azure Monitor Log Analytics. O Kubernetes habilitado para Arco do Azure fornece acesso RBAC aos dados de log coletados pelo agente do Log Analytics, armazenados no espaço de trabalho do Log Analytics no qual seu cluster está registrado. Para saber como implementar o acesso granular ao Espaço de Trabalho do Log Analytics, revise Projetando sua implantação do Azure Monitor Logs.

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

Nota

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 de alterações feitas em seu cluster, bem como quaisquer eventos de autorização.

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

  • Acesso condicional com ID do Microsoft Entra. Você pode encontrar mais informações sobre Acesso Condicional na visão geral do Acesso Condicional.
  • Regras de acesso Just-In-Time (JIT) para tarefas que precisam de permissões elevadas. Ter acesso permanente para alguns usuários a informações confidenciais ou definições críticas de configuração de rede no Kubernetes cria um caminho potencial para contas comprometidas ou atividades de ameaças internas. O gerenciamento de acesso privilegiado pode ajudá-lo a proteger sua organização contra violações e ajudá-lo a atender às práticas recomendadas de conformidade, limitando o acesso permanente a dados confidenciais ou o acesso a definições de configuração críticas.

Gestão de segredos e certificados

Não armazene segredos ou certificados em código de aplicativo ou sistemas de arquivos. Os segredos devem ser armazenados em armazenamentos de chaves e fornecidos aos contêineres em tempo de execução, conforme necessário.

Considere usar a extensão Azure Key Vault para gerenciar segredos e certificados em seus clusters Kubernetes habilitados para Azure Arc. A extensão Key Vault permite que você gerencie o ciclo de vida do certificado em suas implantações do Kubernetes, conforme mostrado no diagrama a seguir.

Diagrama mostrando a integração do Kubernetes habilitado para o Azure Arc e o Key Vault.

Habilite e proteja configurações de GitOps

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

O uso do GitOps pode simplificar a implantação de vários aplicativos em clusters e ambientes enquanto rastreia e impõe o estado desejado do sistema declarativamente com o Git. Quando você usa o Git como sua única fonte de verdade e como a ferramenta central para todas as implantações, ele se torna a melhor maneira de rastrear estados de cluster, contabilizar 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 configurações do GitOps, certifique-se de proteger o acesso ao repositório e suas chaves e definir permissões de ramificação. Para obter mais informações, consulte a área de design crítica para GitOps.

Gestão de políticas e relatórios

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

O Kubernetes habilitado para o Azure Arc dá suporte à Política do Azure na camada de Gerenciamento de Recursos do Azure e também a imposições de política no cluster estendendo o Gatekeeper for Open Policy Agent. Você pode implementar qualquer uma das políticas internas para alcançar rapidamente a conformidade e a aplicação em escala. O diagrama a seguir ilustra como a Política do Azure aplica imposições e salvaguardas em escala a clusters Kubernetes habilitados para Azure Arc.

Diagrama mostrando a Política do Kubernetes habilitada para Azure Arc.

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 da Política do Azure para Kubernetes habilitados 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 quais políticas do Azure você precisa para atender aos requisitos de negócios, regulatórios e de segurança da sua organização para o Kubernetes habilitado para Azure Arc em escala.
  • Imponha a marcação e implemente tarefas de correção.
  • Use a Política do Azure para impor o GitOps e aplicar configurações em escala.
  • Entenda e avalie as definições internas da Política do Azure para o Kubernetes habilitado para Azure Arc.
  • As políticas DeployIfNotExists da Política do Azure implantam programaticamente extensões/agentes de serviço de gerenciamento em seus clusters habilitados para Arc em escala, incluindo o Azure Monitor.
  • Habilite o Azure Monitor Container Insights para conformidade e monitoramento operacional de clusters Kubernetes habilitados para Azure Arc.

Estratégia de gerenciamento de logs

Projete e planeje a implantação do espaço de trabalho do Log Analytics, que é o armazenamento onde os dados são coletados, agregados e posteriormente analisados. Como o espaço de trabalho do Log Analytics representa uma localização geográfica de seus dados, para oferecer suporte a um nível de isolamento e escopo para configurações como retenção de dados, você deve determinar o número de espaços de trabalho necessários e como eles são mapeados para sua estrutura organizacional.

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

Para obter mais informações, revise as práticas recomendadas para projetar sua implantação do Azure Monitor Logs.

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

  • O Microsoft Defender for Cloud fornece uma plataforma unificada de gerenciamento de segurança segmentada como CSPM (gerenciamento de postura de segurança na nuvem) e CWPP (plataforma de proteção de carga de trabalho na nuvem). Para aumentar a segurança em sua zona de aterrissagem híbrida, você precisa proteger os dados e ativos hospedados no Azure e em outros lugares.
  • O Microsoft Defender for Containers estende os recursos do Microsoft Defender for Cloud para o Kubernetes habilitado para Azure Arc. Para aumentar a segurança na sua zona de aterragem híbrida, considere:
    • Usando a extensão do Kubernetes habilitada para ArcGIS do Azure para integrar recursos do Kubernetes habilitados para Arc no Microsoft Defender for Cloud.
    • Habilitando o plano Microsoft Defender for Containers para todas as assinaturas. Por padrão, o plano é configurado para implantar automaticamente a extensão do Defender em qualquer cluster Kubernetes habilitado para Arc que esteja integrado à mesma assinatura. Opcionalmente, você pode modificar essa configuração.
    • Verificar se a extensão do Defender está implantada em seus clusters.
    • Usando a integração de gerenciamento de eventos e informações de segurança (SIEM) com o Microsoft Defender for Cloud e o Microsoft Sentinel.

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

Um diagrama representando o Microsoft Defender para Azure Arc-enabled Kubernetes.

Se você usar o Microsoft Container Registry como um registro privado central do Docker para armazenar e gerenciar suas imagens de contêiner, deverá usar o Microsoft Defender for Containers para verificar as imagens em busca de vulnerabilidades.

Certifique-se de revisar a topologia de rede e a área de design crítico de 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. Usando a conexão de cluster Kubernetes habilitada para Azure Arc, você pode se conectar com segurança a clusters Kubernetes habilitados para Azure Arc em qualquer lugar sem precisar habilitar qualquer porta de entrada no firewall. O acesso ao servidor de API do seu Kubernetes habilitado para Azure Arc oferece os seguintes benefícios:

  • Permite depuração interativa e solução de problemas.
  • Permite o uso de agentes/corredores hospedados de Pipelines do Azure, Ações do GitHub ou qualquer outro serviço de CI/CD hospedado, sem exigir agentes auto-hospedados.
  • Fornece acesso de cluster aos serviços do Azure para locais personalizados e outros recursos criados sobre eles.

Observabilidade e segurança de microsserviços

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

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

  • Acessos não autorizados
  • Ataques de deteção
  • Transferência de dados não autorizada
  • Falsificações de identidade

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

Próximos passos

Para obter mais informações sobre sua jornada de nuvem híbrida e multicloud, consulte os artigos a seguir.