Gerenciar contas locais com a integração do Microsoft Entra gerenciada pelo Microsoft Entra
Ao implantar um cluster do AKS, as contas locais são habilitadas por padrão. Mesmo ao habilitar a integração do RBAC ou do Microsoft Entra, o acesso --admin
ainda existe como uma opção de backdoor não auditável. Este artigo mostra como desabilitar contas locais em um cluster existente, criar um novo cluster com contas locais desabilitadas e reabilitar contas locais em clusters existentes.
Antes de começar
- Consulte Integração do Microsoft Entra gerenciada pelo AKS para obter uma visão geral e instruções de instalação.
Desabilitar contas locais
Você pode desabilitar contas locais usando o parâmetro disable-local-accounts
. O campo properties.disableLocalAccounts
foi adicionado à API de cluster gerenciado para indicar se o recurso está habilitado no cluster.
Observação
Em clusters com a integração do Microsoft Entra habilitada, os usuários atribuídos a um grupo de administradores do Microsoft Entra especificado por
aad-admin-group-object-ids
ainda podem obter acesso usando credenciais de não administrador. Em clusters sem a integração do Microsoft Entra habilitada eproperties.disableLocalAccounts
definido comotrue
, qualquer tentativa de autenticação com credenciais de usuário ou administrador falhará.Depois de desabilitar contas de usuário locais em um cluster do AKS existente em que os usuários podem ter se autenticado usando contas locais, o administrador precisa girar os certificados de cluster para revogar os certificados aos quais eles podem ter acesso. Se esse for um novo cluster, nenhuma ação será necessária.
Criar um novo cluster sem contas locais
Crie um novo cluster do AKS sem nenhuma conta local usando o comando
az aks create
com o sinalizadordisable-local-accounts
.az aks create \ --resource-group <resource-group> \ --name <cluster-name> \ --enable-aad \ --aad-admin-group-object-ids <aad-group-id> \ --disable-local-accounts \ --generate-ssh-keys
Na saída, confirme se as contas locais estão desabilitadas, verificando se o campo
properties.disableLocalAccounts
está definido comotrue
."properties": { ... "disableLocalAccounts": true, ... }
Execute o comando
az aks get-credentials
para garantir que o cluster esteja configurado para desabilitar contas locais.az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin
Sua saída deve mostrar a seguinte mensagem de erro indicando que o recurso está impedindo o acesso:
Operation failed with status: 'Bad Request'. Details: Getting static credential isn't allowed because this cluster is set to disable local accounts.
Desabilitar contas locais em um cluster existente
Desabilite contas locais em um cluster do AKS habilitado para integração com o Microsoft Entra existente usando o comando
az aks update
com o parâmetrodisable-local-accounts
.az aks update --resource-group <resource-group> --name <cluster-name> --disable-local-accounts
Na saída, confirme se as contas locais estão desabilitadas, verificando se o campo
properties.disableLocalAccounts
está definido comotrue
."properties": { ... "disableLocalAccounts": true, ... }
Execute o comando
az aks get-credentials
para garantir que o cluster esteja configurado para desabilitar contas locais.az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin
Sua saída deve mostrar a seguinte mensagem de erro indicando que o recurso está impedindo o acesso:
Operation failed with status: 'Bad Request'. Details: Getting static credential isn't allowed because this cluster is set to disable local accounts.
Reabilitar contas locais em um cluster existente
Habilite novamente uma conta local desabilitada em um cluster existente usando o comando
az aks update
com o parâmetroenable-local-accounts
.az aks update --resource-group <resource-group> --name <cluster-name> --enable-local-accounts
Na saída, confirme se as contas locais foram habilitadas novamente verificando se o campo
properties.disableLocalAccounts
está definido comofalse
."properties": { ... "disableLocalAccounts": false, ... }
Execute o comando
az aks get-credentials
para garantir que o cluster esteja configurado para habilitar contas locais.az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin
Sua saída deve mostrar a seguinte mensagem indicando que você habilitou com êxito as contas locais no cluster:
Merged "<cluster-name>-admin" as current context in C:\Users\<username>\.kube\config
Próximas etapas
- Saiba mais sobre a Integração do RBAC do Azure para Autorização do Kubernetes.
Azure Kubernetes Service