Поделиться через


Управление доступом к кластеру и узлу с использованием условного доступа через интеграцию Microsoft Entra, управляемую AKS.

Интеграция Идентификатора Microsoft Entra с кластером AKS позволяет использовать условный доступ для управления доступом к плоскости управления кластером и узлам кластера. В этой статье показано, как включить условный доступ в кластерах AKS для доступа уровня управления и доступа SSH к узлам.

Замечание

Условный доступ Microsoft Entra содержит возможности Microsoft Entra ID P1, P2 или управления, требующие номера SKU уровня "Премиум" P2. Для получения дополнительной информации о лицензиях и SKU Microsoft Entra ID см. основы лицензирования Microsoft Entra ID Governance и руководство по ценообразованию.

Перед тем как начать

Использование условного доступа с идентификатором Microsoft Entra ID и AKS

Условный доступ можно использовать для управления доступом как к плоскости управления кластером AKS, так и к узлам кластера SSH.

Настройка условного доступа для доступа уровня управления кластером

  1. На портале Azure перейдите на страницу идентификатора Microsoft Entra и выберите корпоративные приложения.
  2. Выберитеновую>политику>.
  3. Введите имя политики, например aks-policy.
  4. В разделе Назначения выберите Пользователи и группы. Выберите пользователей и группы, к которым вы хотите применить политику. В этом примере выберите ту же группу Microsoft Entra, которая имеет доступ администратора к кластеру.
  5. В разделе "Облачные приложения или действия">Включить, выберите Выбрать приложения. Найдите службу Azure Kubernetes и выберите Azure Kubernetes Service Microsoft Entra Server.
  6. В разделе "Управление доступом>Предоставление, выберите Предоставить доступ, Требовать, чтобы устройство было отмечено как соответствующее и Требовать все выбранные контроли.
  7. Подтвердите параметры, установите Включить политику на Вкл, а затем выберите Создать.

Проверка условного доступа для доступа уровня управления кластером

После реализации политики условного доступа убедитесь, что она работает должным образом, получив доступ к кластеру AKS и проверив действие входа.

  1. Получите учетные данные пользователя для доступа к кластеру az aks get-credentials с помощью команды.

    Назначьте значения необходимым переменным среды. Кластер AKS и группа ресурсов должны существовать.

    export RANDOM_SUFFIX=$(head -c 3 /dev/urandom | xxd -p)
    export RESOURCE_GROUP="myResourceGroup$RANDOM_SUFFIX"
    export AKS_CLUSTER="myManagedCluster$RANDOM_SUFFIX"
    

    Скачайте учетные данные, необходимые для доступа к кластеру AKS.

    az aks get-credentials --resource-group $RESOURCE_GROUP --name $AKS_CLUSTER --overwrite-existing
    
  2. Следуйте инструкциям для входа.

  3. Просмотрите узлы в кластере kubectl get nodes с помощью команды.

    kubectl get nodes
    

    Результаты:

    NAME                                         STATUS   ROLES   AGE     VERSION
    aks-nodepool1-xxxxx-vmss000000               Ready    agent   3d2h    v1.xx.x
    aks-nodepool1-xxxxx-vmss000001               Ready    agent   3d2h    v1.xx.x
    
  4. На портале Azure перейдите к идентификатору Microsoft Entra и выберите Корпоративные приложения>Активность>Входы.

  5. В столбце условного доступа должно появиться состояние успешности. Выберите событие и перейдите на вкладку условного доступа . Будет указана политика условного доступа.

Настройка условного доступа для SSH-доступа к узлам кластера

При включении SSH-доступа на основе Entra ID на узлах кластера AKS можно применять политики условного доступа для управления доступом SSH к узлам. Это обеспечивает дополнительную безопасность, применяя соответствие устройств, многофакторную проверку подлинности или другие условия, прежде чем пользователи смогут использовать SSH в узлах кластера.

  1. На портале Azure перейдите на страницу идентификатора Microsoft Entra и выберите корпоративные приложения.
  2. Выберитеновую>политику>.
  3. Введите имя политики, например aks-node-ssh-policy.
  4. В разделе Назначения выберите Пользователи и группы. Выберите пользователей и группы, к которым вы хотите применить политику.
  5. В разделе "Облачные приложения или действия">Включить, выберите Выбрать приложения. Найдите вход виртуальной машины Azure и выберите вход виртуальной машины Linux в Azure.
  6. В разделе ">Предоставление доступа" выберите "Предоставить доступ", "Требовать, чтобы устройство было помечено как соответствующее" и "Требовать многофакторную проверку подлинности" и "Требовать все выбранные элементы управления".
  7. Подтвердите параметры, установите Включить политику на Вкл, а затем выберите Создать.

Замечание

Чтобы SSH на основе Entra ID работал с условным доступом, убедитесь, что узлы кластера AKS настроены с использованием --ssh-access entraid. Дополнительные сведения см. в статье "Управление SSH для безопасного доступа к узлам Службы Azure Kubernetes (AKS).

Проверка условного доступа для SSH-доступа к узлам

После реализации политики условного доступа для SSH-доступа к узлам убедитесь, что она работает должным образом:

  1. Убедитесь, что у вас есть соответствующие разрешения Azure RBAC:

    • Роль входа администратора виртуальной машины для доступа администратора
    • Роль пользователя виртуальной машины для доступа без прав администратора
  2. Установите расширение SSH для Azure CLI:

    az extension add --name ssh
    
  3. SSH на узел с помощью аутентификации Entra ID:

    az ssh vm --resource-group $RESOURCE_GROUP --name <node-name>
    
  4. Во время процесса аутентификации вам потребуется соблюсти политики условного доступа (например, соответствие устройства требованиям, MFA).

  5. После успешной проверки подлинности, которая соответствует требованиям условного доступа, вы будете подключены к узлу.

  6. На портале Azure перейдите к идентификатору Microsoft Entra и выберите Корпоративные приложения>Активность>Входы.

  7. Найдите событие входа для входа в Виртуальную машину Linux Azure и убедитесь, что в столбце условного доступа отображается состояние успешности.

Дальнейшие шаги

Дополнительные сведения см. в следующих статьях: