Gérer les comptes locaux avec l’intégration de Microsoft Entra géré par AKS
Lors du déploiement d’un cluster AKS, les comptes locaux sont activés par défaut. Même lorsque vous activez l’intégration RBAC ou Microsoft Entra, l’accès à --admin
existe toujours, sous forme d’option d’accès par porte dérobée ne pouvant pas être auditée. Cet article vous montre comment désactiver les comptes locaux sur un cluster existant, créer un cluster avec des comptes locaux désactivés et réactiver des comptes locaux sur des clusters existants.
Avant de commencer
- Consultez l’intégration de Microsoft Entra géré par AKS pour obtenir une vue d’ensemble et des instructions de configuration.
Désactiver les comptes locaux
Vous pouvez désactiver les comptes locaux à l’aide du paramètre disable-local-accounts
. Le champ properties.disableLocalAccounts
a été ajouté à l’API de cluster managé pour indiquer si la fonctionnalité a été activée ou non sur le cluster.
Remarque
Sur les clusters avec l’intégration de Microsoft Entra activée, les utilisateurs affectés à un groupe d’administrateurs Microsoft Entra spécifié par
aad-admin-group-object-ids
peuvent quand même obtenir l’accès à l’aide d’informations d’identification de non-administrateur. Sur les clusters sans intégration de Microsoft Entra activée etproperties.disableLocalAccounts
défini surtrue
, toute tentative d’authentification avec des informations d’identification d’utilisateur ou d’administrateur échoue.Après avoir désactivé les comptes d’utilisateur locaux sur un cluster AKS existant où les utilisateurs se sont éventuellement authentifiés avec des comptes locaux, l’administrateur doit faire tourner les certificats de cluster pour révoquer les certificats auxquels ils peuvent avoir accès. S’il s’agit d’un nouveau cluster, aucune action n’est nécessaire.
Créer un nouveau cluster sans comptes locaux
Créez un nouveau cluster AKS sans comptes locaux à l’aide de la commande
az aks create
avec l’indicateurdisable-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
Dans la sortie, assurez-vous que les comptes locaux sont désactivés en vérifiant que le champ
properties.disableLocalAccounts
est défini surtrue
."properties": { ... "disableLocalAccounts": true, ... }
Exécutez la
az aks get-credentials
commande pour vous assurer que le cluster est défini pour désactiver les comptes locaux.az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin
Votre sortie doit afficher le message d’erreur suivant indiquant que la fonctionnalité empêche l’accès :
Operation failed with status: 'Bad Request'. Details: Getting static credential isn't allowed because this cluster is set to disable local accounts.
Désactiver les comptes locaux sur un cluster existant
Désactivez les comptes locaux sur un cluster AKS avec l’intégration de Microsoft Entra existant à l’aide de la commande
az aks update
avec le paramètredisable-local-accounts
.az aks update --resource-group <resource-group> --name <cluster-name> --disable-local-accounts
Dans la sortie, assurez-vous que les comptes locaux sont désactivés en vérifiant que le champ
properties.disableLocalAccounts
est défini surtrue
."properties": { ... "disableLocalAccounts": true, ... }
Exécutez la
az aks get-credentials
commande pour vous assurer que le cluster est défini pour désactiver les comptes locaux.az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin
Votre sortie doit afficher le message d’erreur suivant indiquant que la fonctionnalité empêche l’accès :
Operation failed with status: 'Bad Request'. Details: Getting static credential isn't allowed because this cluster is set to disable local accounts.
Réactiver les comptes locaux sur un cluster existant
Ré-activer un compte local désactivé sur un cluster existant à l’aide de la commande
az aks update
avec le paramètreenable-local-accounts
.az aks update --resource-group <resource-group> --name <cluster-name> --enable-local-accounts
Dans la sortie, assurez-vous que les comptes locaux sont ré-activés en vérifiant que le champ
properties.disableLocalAccounts
est défini surfalse
."properties": { ... "disableLocalAccounts": false, ... }
Exécutez la
az aks get-credentials
commande pour vous assurer que le cluster est défini pour activer les comptes locaux.az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin
Votre sortie doit afficher le message suivant indiquant que vous avez correctement activé les comptes locaux sur le cluster :
Merged "<cluster-name>-admin" as current context in C:\Users\<username>\.kube\config
Étapes suivantes
- Découvrez-en plus sur l’intégration d’Azure RBAC pour l’autorisation Kubernetes.
Azure Kubernetes Service