Delen via


Problemen met de foutcode CustomPrivateDNSZoneMissingPermissionError oplossen

In dit artikel wordt beschreven hoe u de foutcode CustomPrivateDNSZoneMissingPermissionError kunt identificeren en oplossen die optreedt wanneer u probeert een AKS-cluster (Microsoft Azure Kubernetes Service) te maken of bij te werken.

Vereiste voorwaarden

  • Azure CLI, versie 2.53.0 of een nieuwere versie. Voer az --version uit om na te gaan welke versie er is geïnstalleerd.

Symptomen

Het maken of bijwerken van een AKS-cluster mislukt en retourneert het volgende foutbericht:

Code: Toestemmingsfout voor aangepaste privé-DNS-zone ontbreekt
Bericht: Service-principal of door de gebruiker toegewezen identiteit moet zijn gemachtigd om te lezen en schrijven naar aangepaste privé-DNS-zone <custom-private-dns-zone-resource-id>. Controleer het toegangsresultaat: actie Microsoft.Network/privateDnsZones/read is niet toegestaan.

Oorzaak

Voordat AKS een cluster maakt of bijwerkt voor een privécluster dat gebruikmaakt van een aangepaste privé-DNS-zone, wordt gecontroleerd of de beheerde identiteit of service-principal van het cluster over de vereiste machtigingen beschikt om de privé-DNS-zone te beheren. Als AKS de benodigde machtigingen niet vindt, wordt de bewerking geblokkeerd zodat het cluster geen mislukte status invoert.

Oplossing

Voer de volgende stappen uit om de ontbrekende roltoewijzing te maken:

  1. Haal de resource-id van de privé-DNS-zone van het cluster op door de opdracht az aks show uit te voeren en op te slaan als de CUSTOM_PRIVATE_DNS_ZONE_ID variabele:

    CUSTOM_PRIVATE_DNS_ZONE_ID=$(az aks show \
        --resource-group <aks-resource-group> \
        --name <aks-cluster-name> \
        --query apiServerAccessProfile.privateDnsZone \
        --output tsv)
    

    Opmerking

    Omdat de resource-id van de aangepaste privé-DNS-zone ook is weergegeven in het oorspronkelijke foutbericht, kunt u die resource-id ook toewijzen aan de variabele in plaats van de az aks show opdracht uit te voeren.

  2. Wijs de rol Inzender voor privé-DNS-zone toe aan de beheerde identiteit of service-principal van het cluster door de opdracht az role assignment create uit te voeren:

    az role assignment create --role "Private DNS Zone Contributor" \
        --scope $CUSTOM_PRIVATE_DNS_ZONE_ID \
        --assignee <control-plane-principal-id>
    

Opmerking

Het kan tot 60 minuten duren voordat machtigingen zijn verleend aan de beheerde identiteit of service-principal van uw cluster.

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.