Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Аутентификация Microsoft Entra с Реестр контейнеров Azure (ACR) следует двухэтапному процессу. Сначала пользователи проходят проверку подлинности с помощью идентификатора Microsoft Entra, чтобы получить маркер проверки подлинности с определенной областью аудитории проверки подлинности (например, az login). Затем пользователи проходят проверку подлинности в реестре учёта, используя этот маркер проверки подлинности Microsoft Entra (например, az acr login). По умолчанию, на втором шаге во время проверки подлинности реестра реестры принимают как проверку подлинности Microsoft Entra с областью ARM (широкий доступ к Azure Resource Manager), так и проверку подлинности Microsoft Entra с ограниченной областью ACR (ограниченный доступ к реестру). Для повышения безопасности можно настроить реестр так, чтобы он принимал только проверку подлинности Microsoft Entra с областью охвата ACR.
Замечание
Некоторые службы и интеграции Azure могут не работать, если реестр настроен на прием только проверки подлинности Microsoft Entra в области ACR. Проверьте совместимость в непроизводственных средах перед применением этой конфигурации в рабочей среде.
В этой статье показано, как настроить реестр контейнеров для аутентификации Microsoft Entra ACR-уровня через Azure CLI или портал Azure.
Предварительные условия
-
Установите или обновите Azure CLI версии 2.40.0 или более поздней. Чтобы узнать версию, выполните команду
az --version. - Войдите на портал Azure.
Общие сведения о областях проверки подлинности Microsoft Entra для ACR
В этом разделе объясняется поток проверки подлинности с двумя прыжками, разница между областями проверки подлинности и способами управления доступом к конфигурации реестра.
Поток проверки подлинности с двумя этапами
Проверка подлинности с помощью ACR включает два различных шага, которые применяются к пользователям Azure CLI, службам Azure и программному коду с помощью пакетов SDK:
Первый прыжок — проверка подлинности с помощью идентификатора Microsoft Entra ID: выполните
az loginпроверку подлинности с помощью идентификатора Microsoft Entra и получите маркер проверки подлинности Microsoft Entra. Этот маркер содержит область аудитории, которая определяет доступ к ресурсам Azure:- По умолчанию
az loginполучает токен аутентификации Microsoft Entra с областью ARM (широкий доступ к диспетчеру ресурсов Azure). - С помощью
az login --scope https://containerregistry.azure.net/.defaultвы получаете токен аутентификации Microsoft Entra с областью действия ACR (ограниченный доступ, специфичный для реестра).
- По умолчанию
Второй шаг — аутентификация с помощью службы ACR: Выполните
az acr login, чтобы пройти аутентификацию в службе ACR, используя токен аутентификации Microsoft Entra, полученный на первом шаге. На этом этапе конфигурация реестра определяет, принимать или отклонять попытку аутентификации в реестре на основе области действия маркера аутентификации Microsoft Entra.
Типы областей проверки подлинности Microsoft Entra
Проверка подлинности Microsoft Entra, привязанная к ARM
- Предоставляет широкий доступ к Azure Resource Manager (ARM), плоскости управления для управления всеми ресурсами Azure.
- Этот тип области используется по умолчанию при выполнении
az loginбез других параметров. - Маркеры аутентификации Microsoft Entra, относящиеся к области ARM, избыточны для операций с реестром контейнеров, так как они предоставляют доступ больше, чем необходимо для аутентификации в реестре.
Аутентификация Microsoft Entra с привязкой к области ACR
- Предоставляет ограниченный, специальный доступ к реестру, только для операций ACR.
- Требуется явное указание
--scope https://containerregistry.azure.net/.defaultво времяaz login. - Следует принципу наименьших привилегий путем предоставления только разрешений, необходимых для операций реестра контейнеров.
Параметры конфигурации реестра
Конфигурация реестра, контролируемая свойством azureADAuthenticationAsArmPolicy , определяет, что происходит во время второго прыжка проверки подлинности (az acr login):
- Если включено (по умолчанию): реестр принимает аутентификацию Microsoft Entra, ориентированную на ARM и ACR.
- При отключении (рекомендуется): реестр принимает только аутентификацию Microsoft Entra в рамках области ACR и отклоняет аутентификацию в рамках области ARM.
Important
При использовании веб-приложений с Реестр контейнеров Azure (ACR) получение образов выполняется с использованием учетных данных с областью действия ARM. Отключение проверки подлинности ARM в реестре приведет к сбоям извлечения образа.
Почему ACR рекомендует авторизацию на уровне области ACR
Настройка реестра для принятия только проверки подлинности Microsoft Entra с областью ACR обеспечивает несколько преимуществ:
- Улучшенная безопасность: ограничивает проверку подлинности узкими маркерами проверки подлинности Microsoft Entra, уменьшая область атаки.
- Доступ с наименьшими привилегиями: Обеспечивает, чтобы маркеры проверки подлинности Microsoft Entra, используемые для проверки подлинности реестра, имели только те разрешения, которые необходимы для операций с реестром контейнеров.
- Выравнивание соответствия. Помогает удовлетворять требованиям безопасности и соответствия, которые предписывают минимизацию привилегированного доступа.
- Рекомендация. Соответствует рекомендациям по обеспечению безопасности Azure для управления удостоверениями и доступом.
Настройка реестра для проверки подлинности Microsoft Entra в области ACR — Azure CLI
Вы можете настроить реестр, чтобы управлять областями применения аутентификации Microsoft Entra во время второго этапа аутентификации. Свойство azureADAuthenticationAsArmPolicy управляет этой конфигурацией.
Требуется Azure CLI версии 2.40.0 или более поздней. Чтобы узнать, какая версия используется, выполните команду az --version.
Проверка текущей конфигурации реестра
Выполните следующую команду, чтобы просмотреть текущую конфигурацию реестра:
az acr config authentication-as-arm show -r <registry>
Значение состояния показывает текущую конфигурацию:
- включено (по умолчанию): Реестр принимает аутентификацию Microsoft Entra в области ARM и ACR.
- отключен (рекомендуется): Реестр принимает только аутентификацию Microsoft Entra в рамках области ACR.
Обновление конфигурации реестра
Чтобы настроить реестр, чтобы принять только проверку подлинности Microsoft Entra, ограниченную областью ACR, задайте состояние следующим образом disabled:
az acr config authentication-as-arm update -r <registry> --status disabled
Чтобы вернуться к конфигурации по умолчанию, которая принимает аутентификацию Microsoft Entra для областей ARM и ACR:
az acr config authentication-as-arm update -r <registry> --status enabled
Аутентификация с использованием проверки подлинности Microsoft Entra в области ACR
В этом разделе показано, как выполнить двухэтапный поток аутентификации с помощью аутентификации Microsoft Entra, ограниченной областью ACR. Этот метод аутентификации совместим с обеими конфигурациями реестра, но обязателен, если ваш реестр настроен на прием аутентификации Microsoft Entra только в области ACR.
Первый шаг: получение маркера аутентификации Microsoft Entra с областью применения ACR
Чтобы получить токен аутентификации Microsoft Entra для ACR, укажите --scope параметр при выполнении az login:
az login --scope https://containerregistry.azure.net/.default
Эта команда выполняет проверку подлинности, используя идентификатор Microsoft Entra, и получает токен аутентификации Microsoft Entra с областью, специфичной для ACR. Маркер проверки подлинности хранится в локальном кэше.
Замечание
Чтобы получить токен аутентификации Microsoft Entra для службы ACR, вы должны указать https://containerregistry.azure.net/.default.
Нельзя указать https://registryname.azurecr.io/ в качестве объема, так как Microsoft Entra ID и ACR не поддерживают аудитории аутентификации Microsoft Entra для реестра.
Второй прыжок: проверка подлинности с помощью реестра
После получения маркера проверки подлинности Microsoft Entra с областью ACR в первом прыжке выполните аутентификацию с вашим реестром:
az acr login -n <registry>
Во время этого второго этапа реестр проверяет токен аутентификации Microsoft Entra. Если вы настроите свой реестр на прием только проверки подлинности для области ACR, то он будет отклонять токены, привязанные к области ARM, и принимать только токен проверки подлинности Microsoft Entra, полученный вами при первом запросе.
Маркер проверки подлинности Microsoft Entra можно использовать для проверки подлинности со всеми реестрами ACR, к которым у вас есть разрешения на доступ.
Настройка реестра для проверки подлинности Microsoft Entra с областью действия ACR — портал Azure
Политику Azure можно использовать для настройки реестров, чтобы принимать только проверку подлинности Microsoft Entra, ограниченную областью ACR (Azure Container Registry). Назначение встроенной политики автоматически настраивает свойство реестра для текущих и будущих реестров в пределах области действия политики. Политику можно применить на уровне группы ресурсов или на уровне подписки.
Реестр контейнеров Azure предоставляет два встроенных определения политик для настройки проверки подлинности Microsoft Entra на уровне ACR:
-
Container registries should have ARM audience token authentication disabled.— Эта политика сообщает и блокирует несоответствующие ресурсы и может автоматически обновлять несоответствующие реестры до рекомендуемой конфигурации. -
Configure container registries to disable ARM audience token authentication.— Эта политика предоставляет возможности для исправления и обновляет несоответствующие реестры, чтобы принимать только аутентификацию в пределах ACR.
Дополнительные определения политик см. в встроенных определениях политик в Реестре контейнеров Azure.
Назначьте встроенное определение политики
Чтобы настроить реестры для принятия проверки подлинности Microsoft Entra только в области ACR с использованием политики Azure:
Войдите на портал Azure.
Перейдите в группу ресурсов, содержащую реестр контейнеров Azure.
В меню службы в разделе "Параметры" выберите "Политики".
На странице Политики в разделе Авторство выберите Назначение и выберите Назначить политику.
На вкладке "Назначение политики" используйте фильтры для поиска области, определения политики и названия назначения.
Выберите область для фильтрации и поиска подписки и группы ресурсов и нажмите кнопку "Выбрать".
Выберите определения политик для фильтрации и поиска встроенных определений политик, которые настраивают проверку подлинности на уровне ACR.
Используйте фильтры для выбора и подтверждения области, определения политики и имени назначения.
Используйте фильтры для выбора состояний соответствия требованиям и поиска политик.
Подтвердите настройки и установите применение политики как включено. Этот параметр гарантирует, что политика настраивает реестры в указанных областях так, чтобы они принимали только аутентификацию Microsoft Entra, связанную с областью ACR.
Выберите Просмотреть и создать.