Gewähren des Zugriffs auf Azure Kubernetes Fleet Manager-Ressourcen mit Azure-rollenbasierter Zugriffssteuerung
Die rollenbasierte Zugriffssteuerung (Azure Role-Based Access Control, Azure RBAC) ist ein Autorisierungssystem, das auf Azure Resource Manager basiert und eine präzise Verwaltung des Zugriffs auf Azure-Ressourcen ermöglicht.
Dieser Artikel enthält eine Übersicht über die verschiedenen integrierten Azure RBAC-Rollen, die Sie für den Zugriff auf Azure Kubernetes Fleet Manager (Kubernetes Fleet)-Ressourcen verwenden können.
Steuerungsebene
Diese Rolle gewährt Zugriff auf Azure Resource Manager (ARM)-Flottenressourcen und Unterressourcen und gilt sowohl für Kubernetes Fleet-Ressourcen mit als auch ohne Hubcluster.
Rollenname | Beschreibung | Verbrauch |
---|---|---|
Azure Kubernetes Fleet Manager Mitwirkender | Diese Rolle gewährt Lese- und Schreibzugriff auf Azure-Ressourcen, die von Azure Kubernetes Fleet Manager bereitgestellt werden, einschließlich Flotten, Flottenmitglieder, Flottenaktualisierungsstrategien, Flottenaktualisierungsstrategien, Flottenaktualisierungsläufe und mehr. | Mit dieser Rolle können Sie Mitwirkendenberechtigungen erteilen, die ausschließlich für Kubernetes-Flottenressourcen und Unterressourcen gelten. Diese Rolle kann beispielsweise einem Azure-Administrator zugewiesen werden, der mit dem Definieren und Verwalten von Flottenressourcen beauftragt wird. |
Datenebene
Diese Rollen gewähren Zugriff auf Flottenhub Kubernetes-Objekte und gelten daher nur für Kubernetes Fleet-Ressourcen mit einem Hubcluster.
Sie können Datenebenenrollen im Flottenhubclusterbereich oder in einem einzelnen Kubernetes-Namespacebereich zuweisen, indem Sie /namespace/<namespace>
an den Rollenzuweisungsbereich anhängen.
Rollenname | Beschreibung | Verbrauch |
---|---|---|
RBAC-Reader von Azure Kubernetes Fleet Manager | Gewährt schreibgeschützten Zugriff auf die meisten Kubernetes-Ressourcen innerhalb eines Namespaces im flottenverwalteten Hubcluster. Es ist nicht möglich, Rollen oder Rollenbindungen anzuzeigen. Diese Rolle lässt das Anzeigen von Geheimnissen nicht zu, da das Lesen des Inhalts von Geheimnissen den Zugriff auf ServiceAccount -Anmeldeinformationen im Namespace ermöglicht, was den API-Zugriff als beliebiger ServiceAccount im Namespace ermöglichen würde (eine Form von Berechtigungsausweitung). Die Anwendung dieser Rolle im Clusterumfang ermöglicht den Zugriff auf alle Namespaces. |
Mit dieser Rolle können Sie die Funktion zum Lesen ausgewählter nicht sensibler Kubernetes-Objekte im Namespace- oder Clusterbereich verwenden. Sie können diese Rolle z. B. zu Überprüfungszwecken erteilen. |
RBAC-Writer von Azure Kubernetes Fleet Manager | Gewährt Lese- und Schreibzugriff auf die meisten Kubernetes-Ressourcen innerhalb eines Namespaces im flottenverwalteten Hubcluster. Diese Rolle lässt das Anzeigen oder Ändern von Rollen oder Rollenbindungen nicht zu. Diese Rolle ermöglicht jedoch den Zugriff auf Geheimnisse als beliebiges ServiceAccount im Namespace, sodass sie verwendet werden kann, um die API-Zugriffsebenen für ein beliebiges ServiceAccount im Namespace zu erhalten. Die Anwendung dieser Rolle im Clusterumfang ermöglicht den Zugriff auf alle Namespaces. |
Mit dieser Rolle können Sie ausgewählte Kubernetes-Objekte im Namespace- oder Clusterbereich schreiben. Beispielsweise zur Verwendung durch ein Projektteam, das für Objekte in einem bestimmten Namespace verantwortlich ist. |
RBAC-Administrator von Azure Kubernetes Fleet Manager | Gewährt Lese- und Schreibzugriff auf Kubernetes-Ressourcen innerhalb eines Namespaces im flottenverwalteten Hubcluster. Stellt Schreibberechtigungen für die meisten Objekte in einem Namespace bereit, mit Ausnahme des ResourceQuota Objekts und des Namespaceobjekts selbst. Die Anwendung dieser Rolle im Clusterumfang ermöglicht den Zugriff auf alle Namespaces. |
Mit dieser Rolle können Sie ausgewählten Kubernetes-Objekten (einschließlich Rollen und Rollenbindungen) im Namespace- oder Clusterbereich verwalten. Beispielsweise zur Verwendung durch ein Projektteam, das für Objekte in einem bestimmten Namespace verantwortlich ist. |
RBAC-Clusteradministrator von Azure Kubernetes Fleet Manager | Gewährt Lese-/Schreibzugriff auf alle Kubernetes-Ressourcen im Flotten-verwalteten Hubcluster. | Sie können diese Rolle verwenden, um Zugriff auf alle Kubernetes-Objekte (einschließlich CRDs) im Namespace- oder Clusterbereich zu gewähren. |
Beispiele für Rollenzuweisungen
Sie können Azure RBAC-Rollen mithilfe der Azure CLIgewähren. So erstellen Sie z. B. eine Rollenzuweisung im Kubernetes Fleet-Hubclusterbereich:
IDENTITY=$(az ad signed-in-user show --output tsv --query id)
FLEET_ID=$(az fleet show --resource-group $GROUP --name $FLEET --output tsv --query id)
az role assignment create --role 'Azure Kubernetes Fleet Manager RBAC Reader' --assignee "$IDENTITY" --scope "$FLEET_ID"
Sie können Rollenzuweisungen auch auf einen einzelnen Kubernetes-Namespace festlegen. Um beispielsweise eine Rollenzuweisung für den Kubernetes Fleet Hub-Standardnamespace Kubernetes zu erstellen:
IDENTITY=$(az ad signed-in-user show --output tsv --query id)
FLEET_ID=$(az fleet show --resource-group $GROUP --name $FLEET --output tsv --query id)
az role assignment create --role 'Azure Kubernetes Fleet Manager RBAC Reader' --assignee "$IDENTITY" --scope "$FLEET_ID/namespaces/default"
Azure Kubernetes Service