Verwalten lokaler Konten mit AKS-verwalteter Microsoft Entra-Integration
Bei der Bereitstellung eines AKS-Clusters sind lokale Konten standardmäßig aktiviert. Selbst wenn Sie RBAC oder die Microsoft Entra-Integration aktivieren, ist der Zugriff mit --admin
weiterhin möglich, da dieser Befehl eine nicht überwachbare Hintertüroption darstellt. In diesem Artikel erfahren Sie, wie Sie lokale Konten in einem vorhandenen Cluster deaktivieren, einen neuen Cluster mit deaktivierten lokalen Konten erstellen und lokale Konten in vorhandenen Clustern wieder aktivieren.
Voraussetzungen
- Eine Übersicht und Einrichtungsanweisungen finden Sie unter AKS-verwaltete Microsoft Entra-Integration.
Deaktivieren lokaler Konten
Sie können lokale Konten mit dem Parameter disable-local-accounts
deaktivieren. Der API für verwaltete Cluster wurde das Feld properties.disableLocalAccounts
hinzugefügt, um anzuzeigen, ob das Feature im Cluster aktiviert ist oder nicht.
Hinweis
In Clustern mit aktivierter Microsoft Entra-Integration können Benutzer*innen, die einer über
aad-admin-group-object-ids
angegebenen Microsoft Entra-Administratorgruppe zugewiesen sind, weiterhin Zugriff mithilfe von Anmeldeinformationen ohne Administratorrechte erhalten. In Clustern, bei denen die Microsoft Entra-Integration nicht aktiviert undproperties.disableLocalAccounts
auftrue
festgelegt ist, schlägt jeder Versuch, sich mit Benutzer- oder Administratoranmeldeinformationen zu authentifizieren, fehl.Nachdem lokale Benutzerkonten in einem vorhandenen AKS-Cluster deaktiviert wurden, in dem sich Benutzer möglicherweise mit lokalen Konten authentifiziert haben, muss der Administrator die Clusterzertifikate rotieren, um die Zertifikate zu widerrufen, auf die diese Benutzer möglicherweise Zugriff hatten. Wenn es sich um einen neuen Cluster handelt, ist keine Aktion erforderlich.
Erstellen eines neuen Clusters ohne lokale Konten
Um einen neuen AKS-Cluster ohne lokale Konten zu erstellen, verwenden Sie den Befehl
az aks create
mit dem Flagdisable-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
Wenn das Feld
properties.disableLocalAccounts
in der Ausgabe auftrue
festgelegt ist, sind lokale Konten deaktiviert."properties": { ... "disableLocalAccounts": true, ... }
Führen Sie den Befehl
az aks get-credentials
aus, um sicherzustellen, dass der Cluster auf die Deaktivierung lokaler Konten festgelegt ist.az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin
Ihre Ausgabe sollte die folgende Fehlermeldung anzeigen, die angibt, dass das Feature den Zugriff verhindert:
Operation failed with status: 'Bad Request'. Details: Getting static credential isn't allowed because this cluster is set to disable local accounts.
Deaktivieren lokaler Konten in einem vorhandenen Cluster
Verwenden Sie den Befehl
az aks update
mit dem Parameterdisable-local-accounts
, um lokale Konten in einem vorhandenen AKS-Cluster mit aktivierter Microsoft Entra-Integration zu deaktivieren.az aks update --resource-group <resource-group> --name <cluster-name> --disable-local-accounts
Wenn das Feld
properties.disableLocalAccounts
in der Ausgabe auftrue
festgelegt ist, sind lokale Konten deaktiviert."properties": { ... "disableLocalAccounts": true, ... }
Führen Sie den Befehl
az aks get-credentials
aus, um sicherzustellen, dass der Cluster auf die Deaktivierung lokaler Konten festgelegt ist.az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin
Ihre Ausgabe sollte die folgende Fehlermeldung anzeigen, die angibt, dass das Feature den Zugriff verhindert:
Operation failed with status: 'Bad Request'. Details: Getting static credential isn't allowed because this cluster is set to disable local accounts.
Reaktivieren lokaler Konten in einem vorhandenen Cluster
Aktivieren Sie ein deaktiviertes lokales Konto in einem vorhandenen Cluster mithilfe des Befehls
az aks update
mit dem Parameterenable-local-accounts
neu.az aks update --resource-group <resource-group> --name <cluster-name> --enable-local-accounts
Wenn das Feld
properties.disableLocalAccounts
in der Ausgabe auffalse
festgelegt ist, sind lokale Konten wieder aktiviert."properties": { ... "disableLocalAccounts": false, ... }
Führen Sie den Befehl
az aks get-credentials
aus, um sicherzustellen, dass der Cluster auf die Aktivierung lokaler Konten festgelegt ist.az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin
Ihre Ausgabe sollte die folgende Meldung anzeigen, die angibt, dass Sie lokale Konten im Cluster erfolgreich aktiviert haben:
Merged "<cluster-name>-admin" as current context in C:\Users\<username>\.kube\config
Nächste Schritte
- Informieren Sie sich über die Azure RBAC-Integration für die Kubernetes-Autorisierung.
Azure Kubernetes Service