aks:尝试创建负载均衡器时出现未授权错误

时间:2021-06-24 14:12:04

标签: azure azure-aks

尝试在 AKS 中创建负载均衡器时遇到以下错误,

<块引用>

{"error":{"code":"AuthorizationFailed","message":"客户端 '85e23f21-xxxxxxxxxxx' 带有对象 ID '85e23f21-xxxxxxxxxxx' 无权执行 作用域上的“Microsoft.Network/virtualNetworks/subnets/read”操作 '/subscriptions/xxxx-xxxx-xxxx-xxxx-xxxx/resourceGroups/my-vnet/providers/Microsoft.Network/virtualNetworks/my-vnet/subnets/my-subnet' 或者范围无效。如果最近授予访问权限,请刷新您的 凭据。"}}

此处的客户端和对象 ID 相同,这是托管标识的 principalId,因为我的 AKS 群集启用了托管标识。

<块引用>

❯ az aks show -g my-rg -n my-aks --query "identity" { "principalId": "85e23f21-xxxxxxxxxxx", "tenantId": "xxxxxxxxxxxxxxxxxxxxx", "type": "系统分配", “userAssignedIdentities”:空 }

我还为我的 aks 集群启用了 azure RBAC

az aks update -g myResourceGroup -n myAKSCluster --enable-azure-rbac

这里缺少什么,如何授予权限?请帮忙。

1 个答案:

答案 0 :(得分:1)

这可能是因为您的 VNet 不在工作程序节点资源组中,因此系统分配的标识默认只能管理该资源组内的资源。您需要对集群系统分配的托管标识的主体 ID 进行角色分配,以授予它对该资源组之外的托管资源的权限。来自Azure documentation

<块引用>

注意

用于创建和使用您自己的 VNet、静态 IP 地址或附加的 资源位于工作节点资源之外的 Azure 磁盘 组,使用集群系统分配托管的 PrincipalID 执行角色分配的身份。

相关问题