Considerações sobre gerenciamento de identidade e acesso para o AKS
Este artigo fornece considerações de design e recomendações para gerenciamento de identidade e acesso quando você usa o Serviço Kubernetes do Azure (AKS). Há vários aspetos do gerenciamento de identidade e acesso, incluindo identidades de cluster, identidades de carga de trabalho e acesso de operador.
Considerações de design
- Decida qual identidade de cluster usar (identidade gerenciada ou entidade de serviço).
- Decida como autenticar o acesso ao cluster: com base em certificados de cliente ou através do Microsoft Entra ID.
- Decida sobre um cluster de multilocação e como configurar o controle de acesso baseado em função (RBAC) no Kubernetes.
- Escolha um método para isolamento. Os métodos incluem namespace, política de rede (permitido apenas pelo Azure CNI), computação (pool de nós) e cluster.
- Determine as funções RBAC do Kubernetes e a alocação de computação por equipe de aplicativo, para isolamento.
- Decida se as equipes de aplicativos podem ler outras cargas de trabalho em seus clusters ou em outros clusters.
- Determine as permissões para funções RBAC do Azure personalizadas para sua zona de aterrissagem do AKS.
- Decida quais permissões são necessárias para a função SRE (engenharia de confiabilidade do site) para permitir que essa função administre e solucione problemas de todo o cluster.
- Decida quais permissões são necessárias para SecOps.
- Decida quais permissões são necessárias para o proprietário da zona de pouso.
- Decida quais permissões as equipes de aplicativos precisarão implantar no cluster.
- Decida se você precisa de identidades de carga de trabalho (ID de carga de trabalho do Microsoft Entra). Você pode precisar deles para serviços como a integração do Azure Key Vault e o Azure Cosmos DB.
Recomendações de design
- Identidades de cluster.
- Use sua própria identidade gerenciada para seu cluster AKS.
- Defina funções RBAC personalizadas do Azure para sua zona de aterrissagem do AKS para simplificar o gerenciamento das permissões necessárias para identidade gerenciada por cluster.
- Acesso ao cluster.
- Use o Kubernetes RBAC com o Microsoft Entra ID para limitar privilégios e minimizar privilégios de administrador. Isso ajuda a proteger a configuração e o acesso secreto.
- Use a integração do Microsoft Entra gerenciada pelo AKS para que você possa usar o Microsoft Entra ID para autenticação e acesso de operador e desenvolvedor.
- Defina as funções RBAC necessárias e as associações de função no Kubernetes.
- Use funções do Kubernetes e associações de funções para grupos do Microsoft Entra para engenharia de confiabilidade de site (SRE), SecOps e acesso de desenvolvedor.
- Considere usar o RBAC do Azure para Kubernetes, que permite o gerenciamento unificado e o controle de acesso entre recursos do Azure, AKS e recursos do Kubernetes. Quando o RBAC do Azure para Kubernetes está habilitado, você não precisa gerenciar separadamente identidades de usuário e credenciais para o Kubernetes. Os principais do Microsoft Entra serão validados exclusivamente pelo Azure RBAC, mas os usuários regulares do Kubernetes e as contas de serviço serão validados exclusivamente pelo Kubernetes RBAC.
- Conceda ao SRE acesso total just-in-time, conforme necessário.
- Use o Gerenciamento Privilegiado de Identidades no Microsoft Entra ID e o gerenciamento de identidade e acesso nas zonas de aterrissagem do Azure.
- Use o ID de carga de trabalho do Microsoft Entra para Kubernetes. Quando você implementa essa federação, os desenvolvedores podem usar contas de serviço e federação nativas do Kubernetes para acessar recursos gerenciados pelo Microsoft Entra ID, como o Azure e o Microsoft Graph.