Freigeben über


Aktivieren der Microsoft Entra-Authentifizierung für Kubernetes-Cluster

Gilt für: AKS auf Azure Local, Version 23H2

AKS, die von Azure Arc aktiviert sind, vereinfacht den Authentifizierungsprozess mit der Microsoft Entra ID-Integration. Für die Autorisierung können Clusteradministratoren rollenbasierte Zugriffssteuerung (Kubernetes RBAC) oder azure role-based access control (Azure RBAC) basierend auf der Verzeichnisgruppenmitgliedschaft der Microsoft Entra ID-Integration konfigurieren.

Die Microsoft Entra-Authentifizierung wird für AKS Arc-Cluster mit OpenID Connect bereitgestellt. OpenID Connect ist eine Identitätsebene, die auf dem OAuth 2.0-Protokoll aufbaut. Weitere Informationen zu OpenID Connect finden Sie in der OpenID Connect-Dokumentation. Weitere Informationen zum Microsoft Entra-Integrationsfluss finden Sie in der Microsoft Entra-Dokumentation.

In diesem Artikel wird beschrieben, wie Sie die Microsoft Entra-ID-Authentifizierung für Kubernetes-Cluster aktivieren und verwenden.

Voraussetzungen

  • Diese Konfiguration erfordert, dass Sie über eine Microsoft Entra-Gruppe für Ihren Cluster verfügen. Diese Gruppe wird als Administratorgruppe für den Cluster registriert, um Administratorberechtigungen zu erteilen. Wenn Sie nicht über eine Microsoft Entra-Gruppe verfügen, können Sie eine mit dem Befehl az ad group create erstellen.
  • Zum Erstellen oder Aktualisieren eines Kubernetes-Clusters benötigen Sie die Rolle "Azure Kubernetes Service Arc Contributor" .
  • Um direkt über den Befehl auf den az aksarc get-credentials Kubernetes-Cluster zuzugreifen und die Kubeconfig-Datei herunterzuladen, benötigen Sie den Microsoft.HybridContainerService/provisionedClusterInstances/listUserKubeconfig/action, der in der Azure Kubernetes Service Arc Cluster-Rollenberechtigung enthalten ist.
  • Sobald Ihre Microsoft Entra-Gruppe mit Administratorzugriff auf Ihren AKS-Cluster aktiviert ist, kann diese Microsoft Entra-Gruppe mit Kubernetes-Clustern interagieren. Sie müssen kubectl und kubelogin installieren.
  • Die Integration kann nach dem Hinzufügen nicht deaktiviert werden. Sie können die Aktualisierung aad-admin-group-object-ids bei Bedarf weiterhin verwendenaz aksarc update.

Aktivieren der Microsoft Entra-Authentifizierung für Kubernetes-Cluster

Erstellen eines neuen Clusters mit Microsoft Entra-Authentifizierung

  1. Erstellen Sie eine Azure-Ressourcengruppe mithilfe des Befehls az group create:

    az group create --name $resource_group --location centralus
    
  2. Erstellen Sie einen AKS Arc-Cluster, und aktivieren Sie den Administratorzugriff für Ihre Microsoft Entra-Gruppe mithilfe des --aad-admin-group-object-ids az aksarc create Parameters im Befehl:

    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
    

Verwenden eines vorhandenen Clusters mit Microsoft Entra-Authentifizierung

Aktivieren Sie die Microsoft Entra-Authentifizierung auf Ihrem vorhandenen Kubernetes-Cluster mithilfe des --aad-admin-group-object-ids az aksarc update Parameters im Befehl. Stellen Sie sicher, dass Ihre Administratorgruppe den Zugriff auf Ihren Cluster beibehalten soll:

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

Zugreifen auf Ihren Microsoft Entra-fähigen Cluster

  1. Rufen Sie die Benutzeranmeldeinformationen für den Zugriff auf den Cluster mit dem Befehl az aksarc get-credentials ab. Sie benötigen den Microsoft.HybridContainerService/provisionedClusterInstances/listUserKubeconfig/action, der in der Azure Kubernetes Service Arc Cluster-Rollenberechtigung enthalten ist:

    az aksarc get-credentials --resource-group $resource_group --name $aks_cluster_name
    
  2. Zeigen Sie die Knoten im Cluster mit dem kubectl get nodes Befehl an, und folgen Sie den Anweisungen zum Anmelden. Sie müssen sich in der Microsoft Entra-ID-Gruppe befinden, die mit dem AKS-Cluster angegeben ist, wenn Sie den --aad-admin-group-object-ids $aadgroupID Parameter übergeben:

    kubectl get nodes
    

Nächste Schritte