Delen via


Fout 'Verboden' oplossen bij toegang tot AKS-clusterbronnen

In dit artikel wordt uitgelegd hoe u fouten met serverfouten (verboden) kunt oplossen die betrekking hebben op op rollen gebaseerd toegangsbeheer (RBAC) wanneer u Kubernetes-resources probeert weer te geven in een AKS-cluster (Azure Kubernetes Service).

Voorwaarden

Het opdrachtregelprogramma kubernetes-cluster (kubectl)

Notitie

Als u Azure Cloud Shell gebruikt om shell-opdrachten uit te voeren, is kubectl al geïnstalleerd. Als u een lokale shell gebruikt en Azure CLI al hebt geïnstalleerd, kunt u kubectl ook installeren door de opdracht az aks install-cli uit te voeren.

Symptomen

Wanneer u opdrachten uitvoert kubectl om details van een Kubernetes-resourcetype weer te geven, zoals een implementatie, pod of werkknooppunt, ontvangt u het volgende foutbericht:

$ kubectl get nodes
Error from server (Forbidden): nodes is forbidden: User "aaaa11111-11aa-aa11-a1a1-111111aaaaa" cannot list resource "nodes" in API group "" at the cluster scope

Oorzaak

Deze fout geeft aan dat u toegang probeert te krijgen tot Kubernetes-resources met behulp van een Microsoft Entra ID-account dat niet beschikt over de vereiste RBAC-machtigingen (op rollen gebaseerd toegangsbeheer).

Oplossing

Afhankelijk van het RBAC-type dat is geconfigureerd voor het cluster (Kubernetes RBAC of Azure RBAC), kunnen verschillende oplossingen van toepassing zijn. Voer de volgende opdracht uit om te bepalen welk RBAC-type het cluster gebruikt:

	az aks show -g <CLUSTER_RESOURCE_GROUP> -n <CLUSTER_NAME> --query aadProfile.enableAzureRbac

Problemen met machtigingen oplossen in op Kubernetes RBAC gebaseerde AKS-clusters

Als het cluster Gebruikmaakt van Kubernetes RBAC, worden machtigingen voor het gebruikersaccount geconfigureerd door het maken van RoleBinding- of ClusterRoleBinding Kubernetes-resources. Zie de Kubernetes RBAC-documentatie voor meer informatie.

Daarnaast wordt in geïntegreerde Clusters van Microsoft Entra ID automatisch een ClusterRoleBinding-resource gemaakt om de beheerder toegang te verlenen tot het cluster aan leden van een vooraf aangewezen Microsoft Entra ID-groep.

Gebruik een van de volgende methoden om de fout 'Fout van server (verboden)' voor een specifieke gebruiker op te lossen.

Methode 1: Een aangepaste RoleBinding- of ClusterRoleBinding-resource maken

U kunt een aangepaste RoleBinding- of ClusterRoleBinding-resource maken om de benodigde machtigingen te verlenen aan de gebruiker (of een groep waarvan de gebruiker lid is). Zie Kubernetes-toegangsbeheer op basis van rollen gebruiken met Microsoft Entra-id in Azure Kubernetes Service voor gedetailleerde stappen.

Methode 2: De gebruiker toevoegen aan de vooraf aangewezen Microsoft Entra ID-beheergroep

  1. Haal de id op van de vooraf aangewezen Microsoft Entra ID-beheergroep. Voer hiervoor de volgende opdracht uit:

    az aks show -g <CLUSTER_RESOURCE_GROUP> -n <CLUSTER_NAME> --query aadProfile.adminGroupObjectIDs
    
  2. Voeg de gebruiker toe aan de vooraf aangewezen Microsoft Entra ID-beheergroep met behulp van de groeps-id die u in de vorige stap hebt opgehaald. Zie Leden of eigenaren van een groep toevoegen voor meer gedetailleerde stappen.

Problemen met machtigingen in AKS-clusters op basis van Azure RBAC oplossen

Als het cluster Gebruikmaakt van Azure RBAC, worden machtigingen voor gebruikers geconfigureerd door het maken van Azure-roltoewijzingen.

AKS biedt een set ingebouwde rollen die kunnen worden gebruikt om roltoewijzingen te maken voor de Microsoft Entra ID-gebruikers of -groepen om hen toegang te geven tot Kubernetes-objecten in een specifieke naamruimte of op clusterbereik. Zie ingebouwde AKS-rollen voor gedetailleerde stappen voor het toewijzen van ingebouwde rollen aan gebruikers of groepen in Azure RBAC-clusters.

U kunt ook uw eigen aangepaste Azure-roldefinities maken om een gedetailleerder beheer van machtigingen te bieden voor specifieke typen Kubernetes-objecten en -bewerkingen. Zie Aangepaste rollendefinities maken en toewijzen aan gebruikers en groepen in azure RBAC-clusters voor gedetailleerde richtlijnen voor het maken en toewijzen van aangepaste rollen.

Contacteer ons voor hulp

Als u vragen hebt of hulp nodig hebt, maak een ondersteuningsaanvraag of vraag de Azure-communityondersteuning. U kunt ook productfeedback verzenden naar de Azure-feedbackcommunity.