Срок действия основного пароля созданного сервиса AKS
Я создал свой кластер AKS на портале Azure, используя функцию "Создать кластер Kubernetes", и позволил ему создать нового участника службы.
Я начал задаваться вопросом об истечении срока полномочий, которые этот принципал использует. Надеясь избежать проблем с разговором K8 с Azure по истечении срока действия учетных данных, я начал смотреть на созданную учетную запись.
Что я вижу, если я бегу:
az ad app show --id <app Id>
... является ли аккаунт манифестом, кроме срока действия пароля. Мне не нужно видеть сам пароль, только когда он истекает.
Однако passwordCredentials- это пустой массив.
То, что я ожидал найти, было свойствами startDate и endDate, как я делаю для учетных записей, которые я создаю сам.
Класс PasswordCredential описан здесь:
Делает ли процесс создания кластера AKS что-то другое, когда он создает свои учетные данные участника службы, что означает, что они не имеют срока действия? Разве мне не позволено видеть детали? Есть что-то фундаментальное, что я неправильно понял?
2 ответа
Прежде всего, мне нужно дать объяснение о пароле, который вы указали. Это свойство о ключе регистрации приложения. При создании кластера AKS ключ не создается, поэтому passwordCredentials отображается пустым. Если вы создадите ключ в App Registration, он будет выглядеть так:
Кроме того, при развертывании кластера AKS срок действия пароля никогда не истечет. Но не волнуйтесь, вы можете создать ключ для регистрации приложения в настройках и дать ему срок действия. Также можно сбросить время и пароль ключа.
Но вы должны быть осторожны, когда вы сбрасываете пароль командой CLI az ad sp credential reset
, Эта команда перезаписывает все ключи, а не просто сбрасывает время истечения и пароль. Это означает, что создайте новый ключ для вас и удалите все ключи, созданные ранее, или просто создайте новый ключ с параметром --append
,
Вы можете взглянуть на документ Azure Kubernetes Service (AKS) с помощью Azure AD. Надеюсь, что это поможет вам.
Наткнулся на тот же сервисный принцип истечения срока действия АКС.
В качестве быстрого обходного пути с помощью Azure Portal создали новый ключ и вручную обновили все узлы AKS (/etc/kubernetes/azure.json), указав новый секретный ключ клиента, и перезапустили один за другим, более того, главный узел не был обновлен новым client_secret(очевидно). Следовательно, недавно увеличенные узлы должны были выдать истекший секрет клиента!!(ошибка)
30.01.2019 Получил ответ от службы поддержки Azure о том, что в Azure cli добавлена новая опция для обновления субъекта службы.
31.01.2019 Только что обновил мой интерфейс командной строки Azure, чтобы проверить наличие новой функции, к счастью, он есть и обновил мой тестовый кластер и его работу!
az aks update-credentials --reset-service-principal --service-principal <client-id> --client-secret <secret>
Примечание: идентификатор клиента и client-secret должны быть созданы вами
Он в основном обновляет файл /etc/kubernetes/azure.json на всех узлах, а затем перезагружает его один за другим!
Пробовал с масштабированием, и это работает!