Azure Kubernetes 服务 - 为非管理员 AD 应用程序身份获取 kubeconfig

Azure Kubernetes Service- Get kubeconfig for non-admin AD app identity

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

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

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

您可以使用Implicit grant flow获取访问令牌。

您需要 Azure Kubernetes Service Cluster User 内置角色才能访问启用了 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 将来会被弃用