Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
A integração com o Microsoft Entra simplifica o processo de integração com o Microsoft Entra. Anteriormente, era necessário criar aplicações cliente e servidor, e o locatário do Microsoft Entra tinha de atribuir permissões de função de Leitores de Diretório. Agora, o provedor de recursos do Serviço Kubernetes do Azure (AKS) gerencia os aplicativos cliente e servidor para você.
Os administradores de cluster podem configurar o controle de acesso baseado em função do Kubernetes (Kubernetes RBAC) com base na identidade do usuário ou na associação ao grupo de diretórios.
Saiba mais sobre o fluxo de integração do Microsoft Entra na documentação do Microsoft Entra.
Limitações
A integração com o Microsoft Entra não pode ser desativada depois de estar ativada num cluster.
Antes de começar
Para instalar o addon AKS, verifique se você tem os seguintes itens:
- Você tem a CLI do Azure versão 2.29.0 ou posterior instalada e configurada. Para localizar a versão, execute o
az --versioncomando. Se precisar de instalar ou atualizar, consulte Install Azure CLI. - Você precisa
kubectlcom uma versão mínima de 1.18.1 oukubelogin. Com a CLI do Azure e o módulo do Azure PowerShell, esses dois comandos são incluídos e gerenciados automaticamente. Ou seja, eles são atualizados por padrão e a execuçãoaz aks install-clinão é necessária ou recomendada. Se você estiver usando um pipeline automatizado, precisará gerenciar atualizações para a versão correta ou mais recente. A diferença entre as versões secundárias do Kubernetes ekubectlnão deve ser mais de uma versão. Caso contrário, ocorrerão problemas de autenticação na versão errada. - Essa configuração requer que você tenha um grupo do Microsoft Entra para seu cluster. Esse grupo é registrado como um grupo de administradores no cluster para conceder permissões de administrador. Se você não tiver um grupo existente do Microsoft Entra, poderá criar um usando o
az ad group createcomando.
Habilite a integração em seu cluster AKS
Primeiro, defina variáveis de ambiente para o grupo de recursos, nome do cluster, IDs de objetos do grupo de administradores Microsoft Entra e ID de inquilino. Reutilize estas variáveis nos comandos que se seguem.
export RESOURCE_GROUP="myResourceGroup"
export CLUSTER_NAME="myManagedCluster"
export AAD_ADMIN_GROUP_OBJECT_IDS="<group-object-id>" # comma-separated for multiple groups
export AAD_TENANT_ID="<tenant-id>"
export LOCATION="centralus"
Criar um novo cluster
Crie um grupo de recursos do Azure usando o
az group createcomando.az group create --name $RESOURCE_GROUP --location $LOCATIONCrie um cluster AKS e habilite o acesso de administração para seu grupo do Microsoft Entra usando o
az aks createcomando.az aks create \ --resource-group $RESOURCE_GROUP \ --name $CLUSTER_NAME \ --enable-aad \ --aad-admin-group-object-ids $AAD_ADMIN_GROUP_OBJECT_IDS \ --aad-tenant-id $AAD_TENANT_ID \ --generate-ssh-keysUma criação bem-sucedida de um cluster Microsoft Entra ID tem a seguinte secção no corpo de resposta.
"AADProfile": { "adminGroupObjectIds": [ "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb" ], "clientAppId": null, "managed": true, "serverAppId": null, "serverAppSecret": null, "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee" }
Usar um cluster existente
Ative a integração com o Microsoft Entra no seu cluster Kubernetes já ativado por RBAC usando o az aks update comando. Certifique-se de definir seu grupo de administradores para manter o acesso no cluster.
az aks update \
--resource-group $RESOURCE_GROUP \
--name $CLUSTER_NAME \
--enable-aad \
--aad-admin-group-object-ids $AAD_ADMIN_GROUP_OBJECT_IDS \
--aad-tenant-id $AAD_TENANT_ID
Uma ativação bem-sucedida de um cluster Microsoft Entra ID tem a seguinte secção no corpo de resposta:
"AADProfile": {
"adminGroupObjectIds": [
"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb"
],
"clientAppId": null,
"managed": true,
"serverAppId": null,
"serverAppSecret": null,
"tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee"
}
Migrar cluster legado para integração
Se o seu cluster usar a integração legada da Microsoft Entra, pode atualizar para a integração da Microsoft Entra através do comando az aks update.
Warning
Os clusters de camada livre podem enfrentar tempo de inatividade do servidor de API durante a atualização. Recomendamos que a atualização seja feita fora do horário habitual de funcionamento.
Após a atualização, o kubeconfig conteúdo é alterado. Você precisa executar az aks get-credentials --resource-group <AKS resource group name> --name <AKS cluster name> para mesclar as novas credenciais no kubeconfig arquivo.
az aks update \
--resource-group $RESOURCE_GROUP \
--name $CLUSTER_NAME \
--enable-aad \
--aad-admin-group-object-ids $AAD_ADMIN_GROUP_OBJECT_IDS \
--aad-tenant-id $AAD_TENANT_ID
Uma migração bem-sucedida de um cluster Microsoft Entra ID tem a seguinte secção no corpo da resposta:
"AADProfile": {
"adminGroupObjectIds": [
"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb"
],
"clientAppId": null,
"managed": true,
"serverAppId": null,
"serverAppSecret": null,
"tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee"
}
Acessar o cluster habilitado
Obtenha as credenciais de usuário para acessar seu cluster usando o
az aks get-credentialscomando.az aks get-credentials --resource-group $RESOURCE_GROUP --name $CLUSTER_NAMESiga as instruções para iniciar sessão.
Exiba os nós no cluster com o
kubectl get nodescomando.kubectl get nodes
Clusters a correr Kubernetes 1.24 ou versões posteriores usam automaticamente o kubelogin formato exec-plugin, pelo que não é necessária conversão manual kubeconfig para iniciar sessão interativa na CLI do Azure. Para cenários não interativos, como pipelines CI, ou para utilizar um método de autenticação diferente, como principal de serviço, identidade gerida, identidade de carga de trabalho ou código do dispositivo, consulte Usar kubelogin para autenticar utilizadores no AKS.
Acesso por vidro quebrado
No raro caso de o login do Microsoft Entra ID no servidor Kubernetes do seu cluster não estar a funcionar — por exemplo, durante um incidente mais amplo do serviço Microsoft Entra — pode recorrer à conta local de administrador do cluster para continuar a operar o cluster até que o login baseado no Entra seja restaurado.
Note
Este recurso só é necessário quando o login baseado no Entra não está disponível. Se o teu problema for um grupo de administradores mal configurado (por exemplo, o grupo foi eliminado ou o ID de objeto errado foi definido), não precisas — atualiza diretamente o grupo de administradores usando az aks update --aad-admin-group-object-ids uma conta que tenha essa Microsoft.ContainerService/managedClusters/write permissão.
Importante
Este fluxo de trabalho contorna a autenticação Microsoft Entra. Use-o apenas como recurso temporário e desative novamente as contas locais assim que o login do Microsoft Entra for restaurado.
Para usar o caminho break-glass, precisa da função Azure Kubernetes Service Contributor no recurso do cluster. Esta função concede a Microsoft.ContainerService/managedClusters/write permissão necessária para reativar contas locais, além de acesso à credencial local de administrador do cluster. É avaliado pelo Azure Resource Manager, por isso funciona independentemente do trajeto de autenticação do Microsoft Entra para o servidor API Kubernetes.
Se as contas locais estiverem desativadas no cluster, reative-as temporariamente.
az aks update --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --enable-local-accountsRecupere a credencial local do administrador do cluster usando o
az aks get-credentialscomando com a--adminbandeira. Esta credencial é um kubeconfig baseado em certificados que contorna o Microsoft Entra.az aks get-credentials --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --adminUse
kubectlpara operar o cluster enquanto o Microsoft Entra não está disponível. Quando o login do Microsoft Entra voltar a funcionar, desative as contas locais para devolver o cluster à sua base segura.az aks update --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --disable-local-accounts
Passos seguintes
- Fortaleça o login no seu cluster com Acesso Condicional para acesso ao cluster e ao nó.
- Use acesso privilegiado just-in-time com Gestão de Identidade Privilegiada para acesso a clusters e nós.
- Saiba mais sobre a integração do Microsoft Entra com o Kubernetes RBAC.
- Saiba mais sobre os conceitos de identidade AKS e Kubernetes.
- Saiba como usar o kubelogin para todos os métodos de autenticação Microsoft Entra suportados no AKS.
- Utilize modelos Azure Resource Manager para criar clusters habilitados pelo Microsoft Entra ID.