Назад | Перейти на главную страницу

Как предоставить принципалу службы доступ к AKS API, когда активирована интеграция RBAC и AAD?

Мне нужно предоставить процессу (конвейеру сборки) доступ RBAC к AKS API для целей развертывания. Но в целевом кластере AKS активна интеграция с AAD (как описано Вот)

Я ожидал, что смогу получить доступ к AKS API с помощью простого участника-службы, но меня перенаправили на страницу входа в устройство:

$ az login --service-principal  --username [REDACTED]-XXXX-XXXX-XXXX-XXXXXXXXXXXX --password [REDACTED]XXxxXXxxXXxxxXXXxxXXxxXXxx= --tenant [REDACTED]-XXXX-XXXX-XXXX-XXXXXXXXXXXX

$ az aks get-credentials -n oli-aksdemo01 -g oli-aksdemo01
Merged "oli-aksdemo01" as current context in /home/olivier/.kube/config

$ kubectl get nodes
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code C2NP77EGR to authenticate.

:-(

Есть ли способ избежать страницы входа в устройство при аутентификации субъекта-службы в кластере AKS, интегрированном в AAD, в Azure?

TL; DR: Пока это невозможно.
Я задал тот же вопрос службе поддержки Azure, и вот их ответ:

Когда кластер AKS интегрирован с AAD, ему потребуется перенаправление на страницу входа в систему при аутентификации для доступа к кластеру.

Доступ к кластеру с помощью Azure AD - https://docs.microsoft.com/en-us/azure/aks/aad-integration#access-cluster-with-azure-ad

К сожалению, в настоящее время это сделано намеренно, и в настоящее время нет другого способа избежать этого процесса, но мы хотели бы услышать ваш голос.

Не могли бы вы оставить свой отзыв по ссылкам ниже, чтобы мы могли спланировать это в будущем.

https://feedback.azure.com/forums/914020-azure-kubernetes-service-aks