Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Podczas wdrażania szablonu usługi Azure Resource Manager (szablonu usługi ARM) lub pliku Bicep występuje RequestDisallowedByPolicy błąd, gdy jeden z zasobów do wdrożenia nie jest zgodny z istniejącą usługą Azure Policy.
Objaw
Podczas wdrażania może wystąpić błąd RequestDisallowedByPolicy uniemożliwiający utworzenie zasobu. W interfejsie wiersza polecenia platformy Azure, programie Azure PowerShell i dzienniku aktywności w witrynie Azure Portal są wyświetlane podobne informacje o błędzie. Kluczowymi elementami są kod błędu, przypisanie zasad i definicja zasad.
"statusMessage": "{"error":{"code":"RequestDisallowedByPolicy", "target":"examplenic1207",
"message":"Resource `examplenic1207` was disallowed by policy. Policy identifiers:
"policyAssignment":{"name":"Network interfaces should not have public IPs",
"id":"/subscriptions/{guid}/providers/Microsoft.Authorization/policyAssignments/1111aa2222bb3333cc4444dd"}
"policyDefinition":{"name":"Network interfaces should not have public IPs",
"id":"/subscriptions/{guid}/providers/Microsoft.Authorization/policyDefinitions/83a86a26-fd1f-447c-b59d-e51f44264114"}
W ciągu id symbol zastępczy {guid} reprezentuje identyfikator subskrypcji platformy Azure. Nazwa elementu policyAssignment lub policyDefinition jest ostatnim segmentem ciągu id.
Przyczyna
Twoja organizacja przypisuje polityki w celu egzekwowania standardów organizacyjnych i oceny zgodności w szerokiej skali. Jeśli próbujesz wdrożyć zasób naruszający zasady, wdrożenie zostanie zablokowane.
Na przykład twoja subskrypcja może mieć zasady uniemożliwiające publiczne adresy IP w interfejsach sieciowych. Jeśli spróbujesz utworzyć interfejs sieciowy z publicznym adresem IP, zasady blokują tworzenie interfejsu sieciowego.
Rozwiązanie
Aby rozwiązać problem RequestDisallowedByPolicy związany z wdrażaniem szablonu ARM lub pliku Bicep, trzeba ustalić, która zasada blokuje wdrożenie. W ramach tych zasad należy przejrzeć reguły, aby można było zaktualizować wdrożenie w celu zachowania zgodności z zasadami.
Komunikat o błędzie zawiera nazwy definicji zasad i przypisania zasad, które spowodowały błąd. Te nazwy są potrzebne, aby uzyskać więcej informacji na temat zasad.
Aby uzyskać więcej informacji na temat definicji zasad, użyj polecenia az policy definition show.
az policy definition show --name {policy-name}
Aby uzyskać więcej informacji na temat przypisania zasad, użyj polecenia az policy assignment show.
az policy assignment show --name {assignment-name} --resource-group {resource-group-name}
W definicji zasad zostanie wyświetlony opis zasad i zastosowane reguły. Przejrzyj reguły i zaktualizuj szablon ARM lub plik Bicep, aby zapewnić zgodność z regułami. Jeśli na przykład reguła stwierdza, że dostęp do sieci publicznej jest wyłączony, należy zaktualizować odpowiednie właściwości zasobu.
Aby uzyskać więcej informacji, zobacz następujące artykuły: