Zum Inhalt

Lab 04: Übung: AKS mit Azure RBAC – Namespace-Berechtigungen

Erzeuge dir für diese Übung einen Cluster wie in Aufgabe 1 und setze dir Umgebungsvariablen wie dort beschrieben.

Szenario

Dein Unternehmen möchte einen neuen Kubernetes-Cluster für das Entwicklungsteam bereitstellen. Es gibt zwei Teams:

  • Team Observers: Soll Ressourcen im Namespace project-alpha nur lesen können (Monitoring, Debugging)
  • Team Devs: Soll Ressourcen im Namespace project-alpha lesen und schreiben können (Deployments, ConfigMaps, etc.)

Beide Teams sind bereits als Gruppen in Entra ID angelegt.

Aufgaben

Teil 1: Namespace erstellen

Lege mit kubectl einen Namespace namens project-alpha an.

Teil 2: Azure Role Assignments erstellen

Wir binden nun die Rolle RBAC Reader für den Namespace project-alpha an die "Observers"-Gruppe und die Rolle RBAC Writer an die "Developers" -Gruppe.

OBSERVERS_ID="c3de5c6a-7948-4f72-aeca-c287721b3831"
DEVELOPERS_ID="e275e10b-769f-4a2d-8cf6-739e7854a31e"

# Cluster-ID ermitteln
AKS_ID=$(az aks show \
  --resource-group $RESOURCE_GROUP \
  --name $CLUSTER_NAME \
  --query id -o tsv)

USER_OBJECT_ID=$(az ad signed-in-user show --query id -o tsv)

# Wir machen uns selbst zum Admin
az role assignment create \
  --assignee $USER_OBJECT_ID \
  --role "Azure Kubernetes Service RBAC Cluster Admin" \
  --scope $AKS_ID

# Role Assignment für Observers (nur Lesen)
az role assignment create \
  --assignee $OBSERVERS_ID \
  --role "Azure Kubernetes Service RBAC Reader" \
  --scope "${AKS_ID}/namespaces/project-alpha"

# Role Assignment für Developers (Lesen + Schreiben)
az role assignment create \
  --assignee $DEVELOPERS_ID \
  --role "Azure Kubernetes Service RBAC Writer" \
  --scope "${AKS_ID}/namespaces/project-alpha"

Teil 3: Berechtigungen testen

Wir testen die Zuordnungen gemeinsam in der Schulung mit neuen Usern, die wir den Gruppen zuordnen.