LinkedAuthorizationFailed エラー コードのトラブルシューティング

まとめ

この記事を使用して、Azure Kubernetes Service (AKS) クラスターを作成またはデプロイするときのLinkedAuthorizationFailed エラーのトラブルシューティングを行います。 次の手順に従うことで、操作を正常に完了できます。

症状

AKS クラスターを作成しようとすると、次のエラー メッセージが表示されます。

VNet の調整に失敗しました。

詳細: VNetReconciler の再試行に失敗しました:

カテゴリ: ClientError;SubCode: LinkedAuthorizationFailed;

依存関係: Microsoft.Network/virtualNetworks; OriginalError: Code="LinkedAuthorizationFailed"

Message="オブジェクト ID '123456789-1234-1234-1234-1234567890987' を持つクライアント 'aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb' には、スコープ '/subscriptions/<subscription-id-guid>/resourceGroups/MC_MyRG_westeurope/providers/Microsoft.Network/virtualNetworks/aks-vnet' でアクション 'Microsoft.Network/virtualNetworks/write' を実行するアクセス許可があります。ただし、リンクされたスコープ '/subscriptions/<subscription-id-guid>/resourcegroups/ddos-protection-plan-rg/providers/microsoft.network/ddosprotectionplans/upmddosprotectionplan' でアクション 'Microsoft.Network/ddosProtectionPlans/join/action' を実行するアクセス許可がないか、またはリンクされたスコープが無効です。"

AKSTeam: ネットワーク、Retriable: false。

原因

サービス プリンシパルには、クラスターの作成に必要なリソースを使用するためのアクセス許可がありません。

解決策

エラー メッセージに記載されているリソースを使用するためのアクセス許可をサービス プリンシパルに付与します。 「現象」セクションの出力例では、次の情報を提供します。

アイテム 価値
サービス プリンシパル aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
リソース /subscriptions/<subscription-id-guid>/resourcegroups/ddos-protection-plan-rg/providers/microsoft.network/ddosprotectionplans/upmddosprotectionplan
操作 Microsoft.Network/ddosProtectionPlans/join/action

サービス プリンシパルにアクセス許可を付与する方法の詳細については、「 Azure portal を使用して Azure ロールを割り当てる」を参照してください。

詳細情報

ロールの割り当てが正しく見えてもクラスターの作成が失敗する場合は、ロールの割り当ての伝達を確認し、リンクされたリソース スコープでアクセス許可を確認し、承認エラーがないかアクティビティ ログを調べて、参照されているリソースがまだ存在し、ターゲット サブスクリプションとリソース グループからアクセス可能であることを確認します。 エラーに示されている正確な操作 (たとえば、 Microsoft.Network/ddosProtectionPlans/join/action) を確認し、リンクされたリソースに対するそのアクセス許可が ID に付与されていることを確認します。

必要なアクセス許可が割り当てられているように見えても、LinkedAuthorizationFailed でデプロイが失敗する場合は、承認チェックに関係する ID とスコープを確認します。 完全なエラー メッセージを確認して、次の内容を特定します。

操作を実行しているクライアントまたはオブジェクト ID。 エラーで参照されているリンクされたリソース スコープ。 拒否された特定のアクション (たとえば、 Microsoft.Network/ddosProtectionPlans/join/action)。

AKS デプロイで使用される ID (サービス プリンシパルまたはマネージド ID) が、プライマリ リソースと、エラー メッセージで参照されているリンクされたリソースの両方に必要なロールの割り当てを持っていることを確認します。 また、ロールの割り当てが正しいスコープに存在し、継承されたアクセス許可が有効であることを確認します。 異なるリソース グループまたはサブスクリプション内のリソースを含む複雑なシナリオの場合は、Azureアクティビティ ログとロールの割り当てを確認して、クラスターの作成を再試行する前に承認が失敗する場所を判断します。