问题描述
是获取Azure Kubernetes服务的对象ID和应用程序ID的一种方式
注意* kubernetes服务的服务主体不在Active Directory中,它仅由AKS生成 并将Acrpull角色分配给ACR容器注册表
解决方法
我认为您对Azure Kubernetes Service的服务原理有误解。
服务主体正是Azure Kubernetes Service的托管身份。
创建Azure Kubernetes服务(AKS)群集时,需要为其配置身份验证方法。在这里,我选择“系统分配的托管身份”。
之后,您可以在 Azure AD -> 企业应用程序-> 所有应用程序中找到它(只需搜索Azure的名称) Kubernetes服务(AKS)集群)。但这在 Azure AD -> 应用程序注册中不可用。
另一种快速方法是使用Azure CLI。参考here。
创建AKS集群:
az aks create -g myResourceGroup -n myManagedCluster --enable-managed-identity
然后使用以下命令查询您的控制平面托管身份的对象ID:
az aks show -g myResourceGroup -n myManagedCluster --query "identity"
此外,如果您尝试使用Azure门户中的此服务主体为ACR容器注册表分配角色,则无需输入对象ID。输入AKS集群的名称就足够了。