Rozwiązywanie problemów z kodem błędu LinkedAuthorizationFailed

Podsumowanie

Skorzystaj z tego artykułu, aby rozwiązać problemy z błędem LinkedAuthorizationFailed podczas tworzenia lub wdrażania klastra Azure Kubernetes Service (AKS). Wykonując te kroki, możesz ukończyć operację pomyślnie.

Objawy

Podczas próby utworzenia klastra usługi AKS zostanie wyświetlony następujący komunikat o błędzie:

Uzgadnianie VNet nie powiodło się.

Szczegóły: Ponowna próba usługi VNetReconciler nie powiodła się:

Kategoria: ClientError; Podkodowanie: LinkedAuthorizationFailed;

Zależność: Microsoft.Network/virtualNetworks; BłądOryginalny: Code="LinkedAuthorizationFailed"

Message="Klient „aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb” o identyfikatorze obiektu „123456789-1234-1234-1234-1234567890987” ma uprawnienie do wykonania akcji „Microsoft.Network/virtualNetworks/write” w zakresie „/subscriptions/<subscription-id-guid>/resourceGroups/MC_MyRG_westeurope/providers/Microsoft.Network/virtualNetworks/aks-vnet”; nie ma jednak uprawnienia do wykonania akcji „Microsoft.Network/ddosProtectionPlans/join/action” w połączonym zakresie „/subscriptions/<subscription-id-guid>/resourcegroups/ddos-protection-plan-rg/providers/microsoft.network/ddosprotectionplans/upmddosprotectionplan” lub połączony zakres jest nieprawidłowy."

Zespół AKS: Sieć, Możliwość ponowienia: false.

Przyczyna

Jednostka usługi nie ma uprawnień do korzystania z zasobu wymaganego do utworzenia klastra.

Rozwiązanie

Udziel uprawnień jednostki usługi, aby użyć zasobu wymienionego w komunikacie o błędzie. Przykładowe dane wyjściowe w sekcji "Objawy" zawierają następujące informacje.

Przedmiot Wartość
Jednostka usługi aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
Zasób /subscriptions/<subscription-id-guid>/resourcegroups/ddos-protection-plan-rg/providers/microsoft.network/ddosprotectionplans/upmddosprotectionplans
Operacja Microsoft.Network/ddosProtectionPlans/join/action

Aby uzyskać więcej informacji na temat udzielania uprawnień jednostce usługi, zobacz Przypisywanie ról platformy Azure przy użyciu witryny Azure Portal.

Więcej informacji

Jeśli przypisania ról są poprawne, ale tworzenie klastra nadal kończy się niepowodzeniem, sprawdź propagację przypisania roli, potwierdź uprawnienia w połączonym zakresie zasobów, sprawdź dzienniki aktywności pod kątem niepowodzeń autoryzacji i sprawdź, czy przywołyny zasób nadal istnieje i jest dostępny z docelowej subskrypcji i grupy zasobów. Sprawdź dokładną operację wskazaną w błędzie (na przykład Microsoft.Network/ddosProtectionPlans/join/action) i upewnij się, że ta tożsamość ma odpowiednie uprawnienie do zasobu, do którego prowadzi link.

Jeśli wymagane uprawnienia wydają się przypisane, ale wdrożenie nadal kończy się błędem LinkedAuthorizationFailed, zweryfikuj tożsamość i zakres użyte w sprawdzeniu autoryzacji. Przejrzyj pełny komunikat o błędzie, aby zidentyfikować:

Identyfikator klienta lub obiektu wykonujący operację. Powiązany zakres zasobów wskazany w błędzie. Określona akcja, która jest odrzucana (na przykład Microsoft.Network/ddosProtectionPlans/join/action).

Upewnij się, że tożsamość używana przez wdrożenie usługi AKS (jednostka usługi lub tożsamość zarządzana) ma wymagane przypisanie roli zarówno dla zasobu podstawowego, jak i wszystkich połączonych zasobów, do których odwołuje się komunikat o błędzie. Sprawdź również, czy przypisanie roli istnieje w prawidłowym zakresie i czy uprawnienia dziedziczone są skuteczne. W przypadku złożonych scenariuszy obejmujących zasoby w różnych grupach zasobów lub subskrypcjach przejrzyj dzienniki aktywności platformy Azure i przypisania ról, aby określić, gdzie autoryzacja kończy się niepowodzeniem, zanim ponownie spróbujesz utworzyć klaster.