首页 > 解决方案 > Azure Kubernetes 服务 - 为非管理员 AD 应用程序身份获取 kubeconfig

问题描述

据我了解,Azure Kubernetes Service (AKS) 允许获取管理员和用户身份的凭据。用户身份可以是 AD 应用程序还是托管身份?

我正在编写.Net 代码。假设我已经完成了与 AKS 群集的 AD 集成并且已经为我的 AD 应用程序分配了适当的角色绑定,您能否提供一些示例,我们可以在其中使用 AD 应用程序凭据从 AKS 群集获取用户凭据?

这里的安全部分 - https://docs.microsoft.com/en-us/rest/api/aks/managedclusters/getaccessprofile需要隐式流程。AD 应用凭据的隐式流如何工作?

标签: node.jsazure-aksazure-container-service

解决方案


您可以使用隐式授权流来获取访问令牌。

你需要Azure Kubernetes 服务集群用户内置角色才能访问启用了 Azure AD 的集群。

获取用户凭据以访问集群:

az aks get-credentials --resource-group myResourceGroup --name MyManagedCluster

或者使用List Cluster User Credentials API

POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterUserCredential?api-version=2020-04-01

因为Get Access Profile API 将在未来被弃用


推荐阅读