Delen via


De referenties voor een AKS-cluster (Azure Kubernetes Service) bijwerken of roteren

AKS-clusters die zijn gemaakt met een service-principal, hebben een verlooptijd van één jaar. Wanneer u de vervaldatum nadert, kunt u de referenties opnieuw instellen om de service-principal gedurende een extra periode uit te breiden. U kunt ook de referenties bijwerken of draaien als onderdeel van een gedefinieerd beveiligingsbeleid. AKS-clusters die zijn geïntegreerd met Microsoft Entra ID als verificatieprovider hebben nog twee identiteiten: de Microsoft Entra Server-app en de Microsoft Entra Client-app. In dit artikel wordt beschreven hoe u de referenties van de service-principal en Microsoft Entra voor een AKS-cluster bijwerkt.

Notitie

U kunt ook een beheerde identiteit gebruiken voor machtigingen in plaats van een service-principal. Voor beheerde identiteiten zijn geen updates of rotaties vereist. Zie Beheerde identiteiten gebruiken voor meer informatie.

Voordat u begint

U moet Azure CLI versie 2.0.65 of hoger hebben geïnstalleerd en geconfigureerd. Voer az --version uit om de versie te bekijken. Als u Azure CLI 2.0 wilt installeren of upgraden, raadpleegt u Azure CLI 2.0 installeren.

Een nieuwe service-principal voor uw AKS-cluster bijwerken of maken

Wanneer u de referenties voor een AKS-cluster wilt bijwerken, kunt u ervoor kiezen om het volgende te doen:

  • Werk de referenties voor de bestaande service-principal bij.
  • Maak een nieuwe service-principal en werk het cluster bij om deze nieuwe referenties te gebruiken.

Waarschuwing

Als u ervoor kiest om een nieuwe service-principal te maken, wacht u ongeveer 30 minuten totdat de machtiging voor de service-principal is doorgegeven in alle regio's. Het bijwerken van een groot AKS-cluster om deze referenties te gebruiken, kan lang duren.

Controleer de vervaldatum van uw service-principal

Gebruik de az ad app credential list opdracht om de vervaldatum van uw service-principal te controleren. In het volgende voorbeeld wordt de service-principal-id voor het $CLUSTER_NAME cluster in de $RESOURCE_GROUP_NAME resourcegroep opgehaald met behulp van de az aks show opdracht. De id van de service-principal wordt ingesteld als een variabele met de naam SP_ID.

SP_ID=$(az aks show --resource-group $RESOURCE_GROUP_NAME --name $CLUSTER_NAME \
    --query servicePrincipalProfile.clientId -o tsv)
az ad app credential list --id "$SP_ID" --query "[].endDateTime" -o tsv

De bestaande referenties voor de service-principal opnieuw instellen

Als u de referenties voor een bestaande service-principal wilt bijwerken, haalt u de service-principal-id van uw cluster op met behulp van de az aks show opdracht. In het volgende voorbeeld wordt de id voor het $CLUSTER_NAME cluster in de $RESOURCE_GROUP_NAME resourcegroep opgehaald. De variabele met de naam SP_ID slaat de service-principal-id op die in de volgende stap wordt gebruikt. Deze opdrachten gebruiken de Bash-opdrachttaal.

Waarschuwing

Wanneer u de clusterreferenties opnieuw instelt op een AKS-cluster dat gebruikmaakt van Azure Virtual Machine Scale Sets, wordt een upgrade van de knooppuntinstallatiekopieën uitgevoerd om uw knooppunten bij te werken met de nieuwe referentiegegevens.

SP_ID=$(az aks show --resource-group $RESOURCE_GROUP_NAME --name $CLUSTER_NAME \
    --query servicePrincipalProfile.clientId -o tsv)

Gebruik de variabele SP_ID met de id van de service-principal om de referenties opnieuw in te stellen met behulp van de az ad app credential reset opdracht. In het volgende voorbeeld kan het Azure-platform een nieuw beveiligd geheim genereren voor de service-principal en opslaan als een variabele met de naam SP_SECRET.

SP_SECRET=$(az ad app credential reset --id "$SP_ID" --query password -o tsv)

Vervolgens werkt u het AKS-cluster bij met referenties voor de service-principal. Deze stap is nodig om de service-principal in uw AKS-cluster bij te werken.

Een nieuwe service principal maken

Notitie

Als u de bestaande referenties van de service-principal in de vorige sectie hebt bijgewerkt, slaat u deze sectie over en werkt u in plaats daarvan het AKS-cluster bij met referenties voor de service-principal.

Als u een service-principal wilt maken en het AKS-cluster wilt bijwerken om de nieuwe referentie te gebruiken, gebruikt u de az ad sp create-for-rbac opdracht.

az ad sp create-for-rbac --role Contributor --scopes /subscriptions/$SUBSCRIPTION_ID

De uitvoer is vergelijkbaar met de volgende voorbeelduitvoer. Noteer uw eigen appId notities en password gebruik deze in de volgende stap.

{
  "appId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "name": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "password": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "tenant": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}

Definieer variabelen voor de service-principal-id en het clientgeheim met behulp van de uitvoer van het uitvoeren van de az ad sp create-for-rbac opdracht. De SP_ID is de appId en de SP_SECRET is uw wachtwoord.

SP_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
SP_SECRET=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Vervolgens werkt u het AKS-cluster bij met de nieuwe referenties voor de service-principal. Deze stap is nodig om het AKS-cluster bij te werken met de nieuwe referenties voor de service-principal.

AKS-cluster bijwerken met service-principalreferenties

Belangrijk

Voor grote clusters kan het bijwerken van uw AKS-cluster met een nieuwe service-principal lang duren. Overweeg de instellingen voor piekupgrades van het knooppunt te controleren en aan te passen om onderbrekingen tijdens de update te minimaliseren. Voor kleine en middelgrote clusters duurt het enkele minuten voordat de nieuwe referenties in het cluster zijn bijgewerkt.

Werk het AKS-cluster bij met uw nieuwe of bestaande referenties door de opdracht uit te az aks update-credentials voeren.

az aks update-credentials \
    --resource-group $RESOURCE_GROUP_NAME \
    --name $CLUSTER_NAME \
    --reset-service-principal \
    --service-principal "$SP_ID" \
    --client-secret "${SP_SECRET}"

AKS-cluster bijwerken met nieuwe referenties voor Microsoft Entra-toepassingen

U kunt nieuwe Microsoft Entra-server- en clienttoepassingen maken door de integratiestappen van Microsoft Entra te volgen of uw bestaande Microsoft Entra-toepassingen opnieuw in te stellen volgens dezelfde methode als voor het opnieuw instellen van de service-principal. Daarna moet u de referenties van uw Microsoft Entra-toepassing bijwerken met behulp van de az aks update-credentials opdracht met de variabelen --reset-aad .

az aks update-credentials \
    --resource-group $RESOURCE_GROUP_NAME \
    --name $CLUSTER_NAME \
    --reset-aad \
    --aad-server-app-id $SERVER_APPLICATION_ID \
    --aad-server-app-secret $SERVER_APPLICATION_SECRET \
    --aad-client-app-id $CLIENT_APPLICATION_ID

Volgende stappen

In dit artikel hebt u geleerd hoe u service-principal- en Microsoft Entra-toepassingsreferenties bijwerkt of roteert. Zie Best practices voor verificatie en autorisatie in AKS voor meer informatie over het gebruik van een beheerde identiteit voor workloads binnen een AKS-cluster.