Partilhar via


Visão geral das identidades gerenciadas no Serviço Kubernetes do Azure (AKS)

Este artigo fornece uma visão geral das identidades gerenciadas atribuídas pelo sistema e pelo usuário no AKS, incluindo como elas funcionam, atribuições de função e recursos de identidade gerenciada específicos do AKS.

Para habilitar uma identidade gerenciada em um cluster AKS novo ou existente, consulte Usar uma identidade gerenciada no Serviço Kubernetes do Azure (AKS). Para obter mais informações sobre identidades gerenciadas no Azure, consulte a documentação Identidades gerenciadas para recursos do Azure.

Observação

Os tipos de identidade atribuídos pelo sistema e pelo usuário diferem de uma identidade de carga de trabalho, que se destina ao uso por um aplicativo em execução em um pod.

Fluxo de autorização de identidade gerido pelo AKS

Os clusters AKS usam identidades gerenciadas atribuídas pelo sistema ou pelo usuário para solicitar tokens do Microsoft Entra. Esses tokens ajudam a autorizar o acesso a outros recursos em execução no Azure. Você atribui uma função de controle de acesso baseado em função do Azure (Azure RBAC) à identidade gerenciada para conceder-lhe permissões a um recurso específico do Azure. Por exemplo, você pode conceder permissões a uma identidade gerenciada para acessar segredos em um cofre de chaves do Azure para uso pelo cluster.

Comportamento de identidade gerenciado no AKS

Quando você implanta um cluster AKS, uma identidade gerenciada atribuída ao sistema é criada para você por padrão. Você também pode criar o cluster com uma identidade gerenciada atribuída pelo usuário ou atualizar um cluster existente para um tipo diferente de identidade gerenciada.

Se o cluster já usa uma identidade gerenciada e você altera o tipo de identidade (por exemplo, de atribuído pelo sistema para atribuído pelo usuário), há um atraso enquanto os componentes do plano de controle mudam para a nova identidade. Os componentes do plano de controle continuam a usar a identidade antiga até que seu token expire. Depois que o token é atualizado, eles mudam para a nova identidade. Este processo pode demorar várias horas.

Observação

Também é possível criar um cluster com um principal de serviço de aplicação ao invés de uma identidade gerida. No entanto, recomendamos o uso de uma identidade gerida em vez de um principal de serviço de aplicação para segurança e simplicidade de uso. Se tiver um cluster existente que utilize um principal do serviço de aplicação, pode atualizá-lo para usar uma identidade gerida.

Gestão de identidades e credenciais AKS

A plataforma Azure gere tanto identidades geridas atribuídas pelo sistema como pelo utilizador, bem como as suas credenciais, para que possa autorizar o acesso a partir das suas aplicações sem ter de provisionar ou rodar qualquer segredo.

Identidade gerenciada atribuída pelo sistema

A tabela a seguir resume as principais características de uma identidade gerenciada atribuída pelo sistema no AKS:

Creation Ciclo de vida Partilha entre recursos Casos comuns de utilização
Criado como parte de um recurso do Azure, como um cluster AKS Vinculado ao ciclo de vida do recurso pai, para que ele seja excluído quando o recurso pai for excluído Só pode ser associado a um único recurso • Cargas de trabalho contidas em um único recurso do Azure
• Cargas de trabalho que exigem identidades independentes

Identidade gerenciada atribuída pelo usuário

A tabela a seguir resume as principais características de uma identidade gerenciada atribuída pelo usuário no AKS:

Creation Ciclo de vida Partilha entre recursos Casos comuns de utilização
Criado como um recurso autônomo do Azure e deve existir antes da criação do cluster Independente do ciclo de vida de qualquer recurso específico, por isso requer exclusão manual se não for mais necessário Pode ser compartilhado entre vários recursos • Cargas de trabalho que são executadas em vários recursos e podem compartilhar uma única identidade
• Cargas de trabalho que exigem pré-autorização para um recurso seguro como parte de um processo de provisionamento
• Cargas de trabalho em que os recursos são reciclados com frequência, mas precisam de permissões consistentes

Identidade gerida pré-criada do kubelet

Uma identidade gerenciada kubelet pré-criada é uma identidade opcional atribuída pelo usuário que o kubelet pode usar para acessar outros recursos no Azure. Esse recurso habilita cenários como a conexão com o Registro de Contêiner do Azure (ACR) durante a criação do cluster. Se você não especificar uma identidade gerenciada atribuída pelo usuário para o kubelet, o AKS criará uma identidade kubelet atribuída pelo usuário no grupo de recursos do nó. Para uma identidade kubelet atribuída pelo utilizador fora do grupo de recursos do nó de trabalho padrão, é necessário atribuir a função de Operador de Identidade Gerida para a identidade kubelet, no contexto de identidade gerida do plano de controlo.

Atribuições de função para identidades gerenciadas no AKS

Você pode atribuir uma função RBAC do Azure a uma identidade gerenciada para conceder as permissões de cluster em outro recurso do Azure. O RBAC do Azure dá suporte a definições de função internas e personalizadas que especificam níveis de permissões. Para atribuir uma função, consulte Etapas para atribuir uma função do Azure.

Ao atribuir uma função RBAC do Azure a uma identidade gerenciada, você deve definir o escopo da função. Em geral, é uma prática recomendada limitar o escopo de uma função aos privilégios mínimos exigidos pela identidade gerenciada. Para obter mais informações sobre como definir o escopo das funções do RBAC do Azure, consulte Entender o escopo do RBAC do Azure.

Atribuições de função de identidade gerenciada do plano de controle

Quando você cria e usa sua própria rede virtual, discos do Azure anexados, endereço IP estático, tabela de rotas ou identidade kubelet atribuída pelo usuário onde os recursos estão fora do grupo de recursos do nó de trabalho, a CLI do Azure adiciona a atribuição de função automaticamente. Se você estiver usando um modelo ARM ou outro método, use a ID principal da identidade gerenciada para executar uma atribuição de função.

Se você não estiver usando a CLI do Azure, mas estiver usando sua própria rede virtual, discos do Azure anexados, endereço IP estático, tabela de rotas ou identidade kubelet atribuída pelo usuário que esteja fora do grupo de recursos do nó de trabalho, recomendamos usar uma identidade gerenciada atribuída pelo usuário para o plano de controle.

Quando o plano de controle usa uma identidade gerenciada atribuída ao sistema, a identidade é criada ao mesmo tempo que o cluster, portanto, a atribuição de função não pode ser executada até depois da criação do cluster.

Resumo das identidades gerenciadas usadas pelo AKS

O AKS usa várias identidades gerenciadas para serviços e complementos integrados. A tabela a seguir resume as identidades gerenciadas usadas pelo AKS, seus casos de uso, permissões padrão e se você pode trazer sua própria identidade:

Identidade Nome Caso de uso Permissões padrão Traga a sua própria identidade
Plano de controlo Nome do cluster AKS Usado por componentes do plano de controle AKS para gerenciar recursos de cluster, incluindo balanceadores de carga de entrada e IPs públicos gerenciados pelo AKS, Cluster Autoscaler, Azure Disk, File, Blob CSI drivers Função de colaborador para grupo de recursos Node Suportado
Kubelet Nome-agentpool do cluster AKS Autenticação com o Azure Container Registry (ACR) N/A para Kubernetes versão 1.15 e posterior Suportado
Suplemento AzureNPM Não é necessária identidade N/A Sem suporte
Suplemento Monitoramento de rede AzureCNI Não é necessária identidade N/A Sem suporte
Suplemento azure-policy (gatekeeper) Não é necessária identidade N/A Sem suporte
Suplemento Calico Não é necessária identidade N/A Sem suporte
Suplemento roteamento de aplicativos Gerencia o DNS do Azure e os certificados do Azure Key Vault Segredos do Cofre da Chave Função de utilizador para o Cofre da Chave, função de Colaborador da Zona DNS para zonas DNS, função de Colaborador da Zona DNS Privada para zonas DNS privadas Sem suporte
Suplemento HTTPApplicationRouting Gerencia os recursos de rede necessários Função de Leitor para Grupo de Recursos de Nó, Função de Colaborador para Zona DNS Sem suporte
Suplemento Gateway de aplicativo de ingresso Gerencia os recursos de rede necessários Função de colaborador para o grupo de recursos do nó de rede Sem suporte
Suplemento omsagent Usado para enviar métricas do AKS para o Azure Monitor Função de Publicador de Métricas de Monitoramento Sem suporte
Suplemento Virtual-Node (ACIConnector) Gerencia os recursos de rede necessários para Instâncias de Contêiner do Azure (ACI) Função de colaborador para o grupo de recursos do nó Sem suporte
Suplemento Análise de custos Usado para coletar dados de alocação de custos N/A Suportado
Identidade da carga de trabalho Identificação de carga de trabalho Microsoft Entra Permite que os aplicativos acessem recursos de nuvem com segurança com o ID de carga de trabalho do Microsoft Entra N/A Sem suporte

Próxima etapa: Habilitar identidades gerenciadas no AKS

Para saber como habilitar identidades gerenciadas em um cluster AKS novo ou existente, consulte Usar uma identidade gerenciada no Serviço Kubernetes do Azure (AKS).