Identitätsbindungen für Azure Kubernetes Service (AKS) (Vorschau)

Die Identitätsbindung ist ein Vorschaufeature für Azure Kubernetes Service (AKS), das das vorhandene Workload-Identitätsfeature erweitert, um Skalierungseinschränkungen für Verbundidentitätsanmeldeinformationen (FICs) für vom Benutzer zugewiesene verwaltete Identitäten (UAMIs) zu beheben. Mit der Workload-Identität für AKS kann ein einzelnes UAMI nicht mehr als 20 FICs haben. Große Kubernetes-Plattformbereitstellungen umfassen möglicherweise mehr als 20 Cluster (jeder Cluster hat einen eindeutigen Aussteller) oder viele <namespace, service-account> Kombinationen, die eine Zuordnung zum gleichen UAMI erfordern und das FIC-Kontingent erschöpfen.

Identitätsbindungen beheben diese Einschränkung, indem mehrere AKS-Cluster das gleiche UAMI mit einem einzelnen FIC pro UAMI gemeinsam nutzen können. Dieser Ansatz erhöht die Skalierbarkeit erheblich und vereinfacht Vorgänge für große AKS-Umgebungen, die die Microsoft Entra-Authentifizierung erfordern.

Von Bedeutung

AKS-Vorschaufunktionen sind auf Selbstbedienungsbasis und freiwillig verfügbar. Vorschauversionen werden „im Istzustand“ und „wie verfügbar“ bereitgestellt und sind von den Service Level Agreements und der eingeschränkten Garantie ausgeschlossen. AKS-Vorschauversionen werden teilweise vom Kundensupport auf Grundlage der bestmöglichen Leistung abgedeckt. Daher sind diese Funktionen nicht für die Verwendung in der Produktion vorgesehen. Weitere Informationen finden Sie in den folgenden Supportartikeln:

Was ist eine Identitätsbindung?

Eine Identitätsbindung ist eine Ressourcenzuordnung zwischen einem UAMI - und einem AKS-Cluster mit Workloads, die die Microsoft Entra-Authentifizierung mit dieser Identität benötigen.

Angenommen, Sie verfügen über ein UAMI, MI-1, das von Workloads benötigt wird, die in den Clustern AKS-cluster-1, AKS-cluster-2 und AKS-cluster-3 ausgeführt werden. Sie können drei Identitätsbindungen erstellen, um jedem dieser Cluster zuzuordnen MI-1 :

  • Identitätsbindung IB-A Zuordnung von MI-1 zu AKS-cluster-1.
  • Identitätsbindung IB-B Zuordnung von MI-1 zu AKS-cluster-2.
  • Identitätsbindung IB-C Zuordnung von MI-1 zu AKS-cluster-3.

Auch wenn dasselbe UAMI über mehrere Cluster hinweg benötigt wird, werden pro UAMI nur eine Verbundidentitäts-Anmeldeinformationen erstellt, wobei die vorherige Einschränkung von 20 FIC behoben wird. Wenn Sie eine Identitätsbindung erstellen, erstellt AKS automatisch den einzelnen FIC für dieses UAMI (oder verwendet es wieder). Die folgenden Diagramme veranschaulichen die Unterschiede zwischen dem vorherigen Arbeitsauslastungsidentitätsmodell und dem neuen Identitätsbindungsmodell:

Screenshot von zwei Diagrammen, wobei eines Identitätsbindungen zeigt, die ein UAMI mehreren AKS-Clustern zuordnen, wobei ein einzelner FIC verwendet wird, und das andere Workload-Identitätszuordnungen zeigt.

Nachdem Sie die Identitätsbindung erstellt und das UAMI für den Cluster autorisiert haben, müssen Sie ClusterRole und ClusterRoleBinding Objekte definieren, die die Namespaces und Dienstkonten (präzise oder kollektiv) angeben, die diese verwaltete Identität für den Erwerb von Microsoft Entra-Token verwenden dürfen.

Verwenden von Identitätsbindungen mit Azure Identity-Clientbibliotheken

Führen Sie die folgenden Schritte aus, um Identitätsbindungen mit Ihren Anwendungsworkloads zu verwenden:

  1. Stellen Sie sicher, dass Sie das mindestens erforderliche Azure Identity-Paket verwenden.
  2. Verwenden Sie WorkloadIdentityCredential und aktivieren Sie die Funktion. Dieses Feature wird in ManagedIdentityCredential oder DefaultAzureCredential nicht unterstützt.

In der folgenden Tabelle werden die Mindestpaketversionen und die Aktivierung von Identitätsbindungen für jede unterstützte Sprache beschrieben:

Language Package Mindestversion So aktivieren Sie
.NET Azure.Identity
oder
Azure. Core
v1.18.0-beta.3 nur
oder
v1.55.0 oder höher
WorkloadIdentityCredential Der Identitätsbindungsmodus ist standardmäßig deaktiviert. Setzen Sie WorkloadIdentityCredentialOptions.IsAzureProxyEnabled auf true.
Go azidentity v1.14.0-beta.3 oder höher Setzen Sie WorkloadIdentityCredentialOptions.EnableAzureProxy auf true.
Java Azure-Identity v1.19.0-beta.2 oder höher Rufen Sie enableAzureProxy() in WorkloadIdentityCredentialBuilder auf.
JavaScript @azure/identity 4.14.0-beta.2 oder höher Legen Sie enableAzureProxy auf true in WorkloadIdentityCredentialOptions fest.
Python Azure-Identity 1.26.0b2 oder höher Legen Sie enable_azure_proxy=True in WorkloadIdentityCredentialfest.

Hinweis

Für .NET ist die Unterstützung von Identitätsbindungen ausschließlich in Azure verfügbar. Identity v1.18.0-beta.3 oder alternativ in Azure. Core v1.55.0 oder höher. Keine andere Version von Azure.Identity enthält derzeit dieses Feature.

Häufig gestellte Fragen (FAQs)

Ist identitätsgleichheit (Namespace- und Dienstkontogleichheit) für Cluster erforderlich, die dasselbe UAMI verwenden?

Nein. Identitätsbindungen erfordern keine Namespace-/Dienstkontogleichheit. Es liegt bei dem Clusteroperator, die Namespaces und Dienstkonten innerhalb jedes Clusters explizit zu autorisieren, die die verwaltete Identität über die rollenbasierte Zugriffssteuerung (RBAC) verwenden dürfen.

Kann ich mehrere Identitätsbindungen für dasselbe UAMI erstellen?

Ja. Die OIDC-Aussteller-URL, die von AKS für diese UAMI verwaltet wird, ist für alle Identitätsbindungen gleich, die auf dieselbe verwaltete Identität verweisen.

Welche Berechtigungen sind zum Erstellen von Identitätsbindungen erforderlich?

Erforderliche Berechtigungen des Azure Resource Manager (ARM):

  • Microsoft.ContainerService/managedClusters/identityBindings/*
  • Microsoft.ManagedIdentity/userAssignedIdentities/federatedIdentityCredentials/*

Hinweis

Wenn Sie eine Identitätsbindung erstellen, erstellt AKS automatisch einen FIC. Wenn der Aufrufer nicht über die Berechtigung zum Erstellen von FIC-Ressourcen verfügt, schlägt die Erstellung der Identitätsbindung fehl.

Erforderliche Kubernetes-Berechtigungen:

  • Möglichkeit zum Erstellen von ClusterRole und ClusterRoleBinding Objekten (Clusteradministrator oder gleichwertig).

Was geschieht mit dem automatisch erstellten FIC nach dem Löschen aller Identitätsbindungen für ein UAMI?

Derzeit gibt es keine automatische GC des FIC, wenn die letzte Identitätsbindung, die auf ein UAMI bezogen ist, gelöscht wird. Operatoren sollten das FIC erst dann manuell bereinigen, nachdem verifiziert wurde, dass alle Identitätsbindungen für die UAMI entfernt worden sind, um verbleibende Abhängigkeiten nicht zu unterbrechen.

Welche Netzwerkvoraussetzungen sind für Identitätsbindungen vorhanden?

Bisher erforderte die Workloadidentität einen Ausgang zu login.microsoftonline.com, damit Workloads Dienstkontotoken gegen Microsoft Entra-Zugriffstoken austauschen konnten. Mit Identitätsbindungen werden Tokenaustauschanfragen durch einen clusterspezifischen Identitätsbindungsproxy geleitet, der von AKS betrieben wird. Für den Tokenaustausch ist ein direkter Ausgang zu login.microsoftonline.com nicht erforderlich.

Welche Einschränkungen bestehen für Identitätsbindungen?

Identitätsbindungen werden noch nicht für Cluster unterstützt, die mit virtueller API-Server-Netzwerkintegration konfiguriert sind.