Partager via


Activer l’authentification Microsoft Entra pour les clusters Kubernetes

S’applique à : AKS sur Azure Local, version 23H2

AKS activé par Azure Arc simplifie le processus d’authentification avec l’intégration d’ID Microsoft Entra. Pour l’autorisation, les administrateurs de cluster peuvent configurer le contrôle d’accès en fonction du rôle Kubernetes (Kubernetes RBAC) ou le contrôle d’accès en fonction du rôle Azure (Azure RBAC) en fonction de l’appartenance au groupe d’annuaires de l’intégration de l’ID Microsoft Entra.

L’authentification Microsoft Entra est fournie aux clusters AKS Arc avec OpenID Connect. OpenID Connect est une couche d’identité basée sur le protocole OAuth 2.0. Pour plus d’informations sur OpenID Connect, consultez la documentation OpenID Connect. Pour plus d’informations sur le flux d’intégration de Microsoft Entra, consultez la documentation Microsoft Entra.

Cet article explique comment activer et utiliser l’authentification Microsoft Entra ID pour les clusters Kubernetes.

Avant de commencer

  • Cette configuration nécessite que vous disposiez d’un groupe Microsoft Entra pour votre cluster. Ce groupe est inscrit en tant que groupe des administrateurs sur le cluster pour accorder des autorisations d’administrateur. Si vous n’avez pas de groupe Microsoft Entra existant, vous pouvez en créer un à l’aide de la commande az ad group create.
  • Pour créer ou mettre à jour un cluster Kubernetes, vous avez besoin du rôle Contributeur Azure Kubernetes Service Arc.
  • Pour accéder au cluster Kubernetes directement à l’aide de la az aksarc get-credentials commande et télécharger le fichier kubeconfig, vous avez besoin de l’autorisation de rôle utilisateur du cluster Microsoft.HybridContainerService/provisionedClusterInstances/listUserKubeconfig/action, qui est incluse dans l’autorisation de rôle d’utilisateur du cluster Azure Kubernetes Service Arc.
  • Une fois que votre groupe Microsoft Entra est activé avec l’accès administrateur à votre cluster AKS, ce groupe Microsoft Entra peut interagir avec les clusters Kubernetes. Vous devez installer kubectl et kubelogin.
  • L’intégration ne peut pas être désactivée une fois ajoutée. Vous pouvez toujours utiliser az aksarc update pour mettre à jour le aad-admin-group-object-ids cas échéant.

Activer l’authentification Microsoft Entra pour le cluster Kubernetes

Créer un cluster avec l’authentification Microsoft Entra

  1. Créez un groupe de ressources Azure en utilisant la commande az group create :

    az group create --name $resource_group --location centralus
    
  2. Créez un cluster AKS Arc et activez l’accès administrateur pour votre groupe Microsoft Entra à l’aide du --aad-admin-group-object-ids paramètre dans la az aksarc create commande :

    az aksarc create -n $aks_cluster_name -g $resource_group --custom-location $customlocationID --vnet-ids $logicnetId --aad-admin-group-object-ids $aadgroupID --generate-ssh-keys
    

Utiliser un cluster existant avec l’authentification Microsoft Entra

Activez l’authentification Microsoft Entra sur votre cluster Kubernetes existant à l’aide du --aad-admin-group-object-ids paramètre dans la az aksarc update commande. Veillez à définir votre groupe d’administration pour conserver l’accès sur votre cluster :

az aksarc update -n $aks_cluster_name -g $resource_group --aad-admin-group-object-ids $aadgroupID

Accéder à votre cluster Microsoft Entra-enabled

  1. Récupérez les informations d’identification d’utilisateur pour accéder à votre cluster à l’aide de la commande az aksarc get-credentials. Vous avez besoin de l’action Microsoft.HybridContainerService/provisionedClusterInstances/listUserKubeconfig/, qui est incluse dans l’autorisation de rôle utilisateur du cluster Azure Kubernetes Service Arc :

    az aksarc get-credentials --resource-group $resource_group --name $aks_cluster_name
    
  2. Affichez les nœuds du cluster avec la kubectl get nodes commande et suivez les instructions pour vous connecter. Vous devez être dans le groupe d’ID Microsoft Entra spécifié avec le cluster AKS lorsque vous passez le --aad-admin-group-object-ids $aadgroupID paramètre :

    kubectl get nodes
    

Étapes suivantes