Прочитать на английском

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


Сетевая изоляция с использованием реестров Azure Machine Learning

В этой статье вы узнаете, как защитить реестр Azure Machine Learning с помощью виртуальной сети Azure и частных конечных точек.

Частные конечные точки в Azure обеспечивают сетевую изоляцию, позволяя службам Azure получать доступ через частный IP-адрес в виртуальной сети (виртуальная сеть). Виртуальная сеть защищает подключения между ресурсами Azure и предотвращает воздействие конфиденциальных данных в общедоступный Интернет.

Использование сетевой изоляции с частными конечными точками предотвращает передачу сетевого трафика через общедоступный интернет и подключает службу реестра Azure Machine Learning к вашей виртуальной сети. Весь сетевой трафик происходит по Приватный канал Azure при использовании частных конечных точек.

Предварительные условия

Защита реестра Azure Machine Learning

Примечание

Для простоты эта статья относится к рабочей области, связанным ресурсам и виртуальной сети, в которую они входят в качестве защищенной конфигурации рабочей области. В ней рассматривается добавление реестров машинного обучения Azure в рамках существующей конфигурации.

На следующей схеме показана базовая конфигурация сети и то, как реестр машинного обучения Azure в неё интегрируется. Если вы уже используете рабочую область Машинного обучения Azure и имеете безопасную конфигурацию рабочей области, где все ресурсы являются частью виртуальной сети, вы можете создать частную конечную точку из существующей виртуальной сети в реестр машинного обучения Azure и связанные ресурсы (хранилище и ACR).

Если у вас нет защищенной конфигурации рабочей области, вы можете создать ее с помощью статьи "Создание защищенной рабочей области в портале Azure", шаблона Bicep или шаблона Terraform.

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

Ограничения

Если вы используете реестр машинного обучения Azure с сетевой изоляцией, вы можете просмотреть ресурсы модели в студии машинного обучения Azure. Вы не можете просматривать другие типы ресурсов. Вы не можете выполнять какие-либо операции в реестре машинного обучения Azure или ресурсах в нем с помощью студии. Вместо этого используйте интерфейс командной строки машинного обучения Azure или пакет SDK.

Сценарий: конфигурация рабочей области безопасна, а реестр Машинное обучение Azure является общедоступным.

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

Создание ресурсов в реестре из локальных файлов

Учетная запись (например, учетная запись пользователя Microsoft Entra, такая как для специалиста по обработке и анализу данных), используемая для создания ресурсов в реестре, должна быть назначена роль пользователя реестра AzureML, владельца или участника в системе ролевого управления доступом Azure. Дополнительные сведения см. в статье "Управление доступом к Машинное обучение Azure".

Предоставление общего доступа к ресурсам из рабочей области в реестр

Примечание

Передача компонента из рабочей области Машинного обучения Azure в реестр Машинного обучения Azure в настоящее время не поддерживается.

Из-за защиты от кражи данных невозможно поделиться ресурсом из защищенной рабочей области в общедоступный реестр, если для учетной записи хранения, содержащей ресурс, отключен доступ для публики. Чтобы включить общий доступ к ресурсам из рабочей области в реестр:

  • Перейдите в раздел "Сеть" учетной записи хранения, подключенной к рабочей области (откуда вы хотите разрешить общий доступ к ресурсам в реестр)
  • Установите общедоступный сетевой доступ на включено из выбранных виртуальных сетей и IP-адресов
  • Прокрутите вниз и перейдите к разделу "Экземпляры ресурсов". Выберите тип ресурсаMicrosoft.MachineLearningServices/registries и задайте имя экземпляра именем ресурса реестра Azure Machine Learning, где вы хотите разрешить общий доступ из рабочей области.
  • Не забудьте проверить остальные параметры в конфигурации сети.

Использование ресурсов из реестра в рабочей области

Примеры операций:

  • Отправьте задание, использующее ресурс из реестра.
  • Используйте компонент из реестра в цепочке обработки.
  • Используйте среду из реестра в компоненте.

Использование ресурсов из реестра для безопасной рабочей среды требует настройки доступа к реестру на исходящем направлении.

Развертывание модели из реестра в рабочую область

Чтобы развернуть модель из реестра в безопасную управляемую конечную точку в сети, развертывание должно быть egress_public_network_access=disabled установлено. Azure Machine Learning создает необходимые частные конечные точки в реестре во время развертывания конечных точек. Дополнительные сведения см. в статье "Создание защищенных управляемых сетевых конечных точек".

Конфигурация исходящей сети для доступа к любому реестру Azure Machine Learning

Тег службы Протокол и порты Цель
AzureMachineLearning TCP: 443, 877, 18881
UDP: 5831
Использование служб Машинного обучения Azure.
Storage.<region> TCP: 443 Получение доступа к данным, хранящимся в учетной записи хранилища Azure для вычислительных кластеров и вычислительных экземпляров. Эти исходящие данные могут быть использованы для хищения данных. Дополнительные сведения см. в разделе о защите от кражи данных.
MicrosoftContainerRegistry.<region> TCP: 443 Доступ к образам Docker, предоставляемым корпорацией Майкрософт.
AzureContainerRegistry.<region> TCP: 443 Доступ к образам Docker для сред.

Сценарий: конфигурация рабочей области безопасна, а реестр Машинное обучение Azure подключен к виртуальным сетям с помощью частных конечных точек

В этом разделе описаны сценарии и требуемая конфигурация сети, если у вас есть безопасная рабочая область с реестрами Azure Machine Learning, подключенными к виртуальной сети через частную конечную точку.

Реестр машинного обучения Azure использует связанные экземпляры службы хранилища и службы ACR. Эти экземпляры служб также можно подключить к виртуальной сети с помощью частных конечных точек для защиты конфигурации. Дополнительные сведения см. в разделе "Создание частной конечной точки ".

Как найти учетную запись хранилища Azure и реестр контейнеров Azure, используемые вашим реестром

Учетная запись хранения и ACR, используемые реестром машинного обучения Azure, создаются в управляемой группе ресурсов в вашей подписке на Azure. Имя управляемой группы ресурсов соответствует шаблону azureml-rg-<name-of-your-registry>_<GUID>. GUID — это случайно созданная строка. Например, если имя реестра — contosoreg, то имя управляемой группы ресурсов будет azureml-rg-contosoreg_<GUID>.

В портале Azure, эту группу ресурсов можно найти, выполнив поискazureml_rg-<name-of-your-registry>. Все ресурсы хранилища и ACR для реестра доступны в этой группе ресурсов.

Создание ресурсов в реестре из локальных файлов

Примечание

Создание ресурса среды не поддерживается в частном реестре, где для связанного ACR отключен публичный доступ. В качестве обходного решения можно создать среду в рабочей области Azure Machine Learning и предоставить общий доступ к ней через реестр Azure Machine Learning.

Клиенты должны быть подключены к виртуальной сети, к которой подключен реестр с частной конечной точкой.

Безопасное подключение к реестру

Чтобы подключиться к реестру, защищенному за виртуальной сетью, используйте один из следующих методов:

  • VPN-шлюз Azure подключает локальные сети к виртуальной сети через частное подключение. Подключение осуществляется через общедоступный Интернет. Доступно два типа VPN-шлюзов.

    • "точка — сеть": каждый клиентский компьютер использует VPN-клиент для подключения к виртуальной сети;

    • Межсетевой: VPN-устройство подключает VNet к вашей локальной сети.

  • ExpressRoute. Подключает локальные сети к облаку через частное подключение. Подключение устанавливается с помощью поставщика услуг подключения.

  • Бастион Azure. В этом сценарии вы создаете виртуальную машину Azure (иногда называемую блоком перехода) в виртуальной сети. Затем вы подключаетесь к виртуальной машине с помощью Бастиона Azure. Бастион позволяет подключаться к виртуальной машине с помощью сеанса RDP или SSH из локального веб-браузера. Затем вы используете блок перехода в качестве среды разработки. Так как он находится в виртуальной сети, он может напрямую получить доступ к реестру.

Предоставление общего доступа к ресурсам из рабочей области в реестр

Примечание

Передача компонента из рабочей области Машинного обучения Azure в реестр Машинного обучения Azure в настоящее время не поддерживается.

Вследствие защиты от утечки данных невозможно предоставить доступ к ресурсу из защищенной рабочей области в частный реестр, если у учетной записи хранения, содержащей ресурс, отключен общий доступ. Чтобы включить общий доступ к ресурсам из рабочей области в реестр:

  • Перейдите в раздел "Сеть" учетной записи хранения, подключенной к рабочей области (откуда вы хотите разрешить общий доступ к ресурсам в реестр)
  • Установите общедоступный сетевой доступ на включено из выбранных виртуальных сетей и IP-адресов
  • Прокрутите вниз и перейдите к разделу "Экземпляры ресурсов". Выберите тип ресурсаMicrosoft.MachineLearningServices/registries и задайте имя экземпляра именем ресурса реестра Azure Machine Learning, где вы хотите разрешить общий доступ из рабочей области.
  • Не забудьте проверить остальные параметры в конфигурации сети.

Использование ресурсов из реестра в рабочей области

Примеры операций:

  • Отправьте задание, использующее ресурс из реестра.
  • Используйте компонент из реестра в цепочке обработки.
  • Используйте среду из реестра в компоненте.

Создайте частную конечную точку в реестре, хранилище и ACR в той же подсети , что и частная конечная точка рабочей области AML. Если вы пытаетесь подключиться к нескольким реестрам, создайте частную конечную точку для каждого реестра и связанного хранилища и ACR. Дополнительные сведения см. в разделе "Создание частной конечной точки ".

Развертывание модели из реестра в рабочую область

Чтобы развернуть модель из реестра в безопасную управляемую конечную точку в сети, развертывание должно быть egress_public_network_access=disabled установлено. Azure Machine Learning создает необходимые частные конечные точки в реестре во время развертывания конечных точек. Дополнительные сведения см. в статье "Создание защищенных управляемых сетевых конечных точек".

Создание частной конечной точки

Используйте вкладки для просмотра инструкций по добавлению частной конечной точки в существующий реестр или созданию нового реестра с частной конечной точкой:

  1. В портале Azure найдите частную конечную точку, затем выберите элемент "Частные конечные точки", чтобы перейти в Центр приватного подключения.

  2. На странице обзора центра частных ссылок нажмите кнопку +Создать.

  3. Укажите запрошенные сведения. В поле "Регион" выберите тот же регион, что и виртуальная сеть Azure. Выберите Далее.

  4. На вкладке "Ресурс" при выборе типа ресурса выберите Microsoft.MachineLearningServices/registries. Установите в поле Ресурс название реестра Azure Machine Learning, затем выберите Далее.

  5. На вкладке "Виртуальная сеть" выберите виртуальную сеть и подсеть для ресурсов Azure Machine Learning. Выберите Далее для продолжения.

  6. На вкладке DNS оставьте значения по умолчанию, если у вас нет конкретных требований к частной интеграции DNS. Выберите Далее для продолжения.

  7. На вкладке "Обзор + Создание" выберите "Создать", чтобы создать частную конечную точку.

  8. Если вы хотите задать доступ к общедоступной сети отключенным, используйте следующую команду. Убедитесь, что в хранилище и ACR отключён доступ к общедоступной сети.

    az ml registry update --set publicNetworkAccess=Disabled --name <name-of-registry>
    

Как найти учетную запись хранилища Azure и реестр контейнеров Azure, используемые вашим реестром

Учетная запись хранения и ACR, используемые реестром машинного обучения Azure, создаются в управляемой группе ресурсов в вашей подписке на Azure. Имя управляемой группы ресурсов соответствует шаблону azureml-rg-<name-of-your-registry>_<GUID>. GUID — это случайно созданная строка. Например, если имя реестра — contosoreg, то имя управляемой группы ресурсов будет azureml-rg-contosoreg_<GUID>.

В портале Azure, эту группу ресурсов можно найти, выполнив поискazureml_rg-<name-of-your-registry>. Все ресурсы хранилища и ACR для реестра доступны в этой группе ресурсов.

Как создать частную конечную точку для учетной записи службы хранения Azure

Чтобы создать частную конечную точку для учетной записи хранения, используемой реестром, выполните следующие действия.

  1. В портале Azure найдите частную конечную точку, затем выберите элемент "Частные конечные точки", чтобы перейти в Центр приватного подключения.
  2. На странице обзора центра частных ссылок нажмите кнопку +Создать.
  3. Укажите запрошенные сведения. В поле "Регион" выберите тот же регион, что и виртуальная сеть Azure. Выберите Далее.
  4. На вкладке "Ресурс" при выборе типа ресурса выберите Microsoft.Storage/storageAccounts. Установите для поля Ресурс имя учетной записи хранения. Установите дополнительный ресурс в значение Blob, затем выберите Далее.
  5. На вкладке "Виртуальная сеть" выберите виртуальную сеть и подсеть для ресурсов Azure Machine Learning. Выберите Далее для продолжения.
  6. На вкладке DNS оставьте значения по умолчанию, если у вас нет конкретных требований к частной интеграции DNS. Выберите Далее для продолжения.
  7. На вкладке "Обзор + Создание" выберите "Создать", чтобы создать частную конечную точку.

Защита от кражи данных

Для реестра Azure Machine Learning, созданного пользователем, рекомендуется использовать приватную конечную точку для реестра, управляемой учетной записи для хранения и управляемого контейнерного реестра Azure (ACR).

Для системного реестра рекомендуется создать политику конечной точки службы для учетной записи хранения с помощью псевдонима /services/Azure/MachineLearning . Дополнительные сведения см. в разделе "Настройка защиты от кражи данных".

Как найти полное доменное имя реестра

Примечание

Убедитесь, что DNS может разрешить частное полное доменное имя реестра, которое находится в этом формате: <registry-guid>.registry.<region>.privatelink.api.azureml.ms так как не существует определенного полного доменного имени общедоступного ресурса, которое рекурсивно разрешено Azure DNS.

В следующих примерах показано, как использовать URL-адрес обнаружения для получения полного доменного имени (FQDN) реестра. При вызове URL-адреса обнаружения необходимо предоставить маркер доступа Azure в заголовке запроса. В следующих примерах показано, как получить маркер доступа и вызвать URL-адрес обнаружения:

Совет

Формат URL-адреса обнаружения — это https://<region>.api.azureml.ms/registrymanagement/v1.0/registries/<registry_name>/discovery, где <region> — регион, в котором находится ваш реестр, а <registry_name> — имя вашего реестра. Чтобы вызвать URL-адрес, выполните запрос GET:

   GET https://<region>.api.azureml.ms/registrymanagement/v1.0/registries/<registry_name>/discovery 
$region = "<region>"
$registryName = "<registry_name>"
$accessToken = (az account get-access-token | ConvertFrom-Json).accessToken 
(Invoke-RestMethod -Method Get `
                   -Uri "https://$region.api.azureml.ms/registrymanagement/v1.0/registries/$registryName/discovery" `
                   -Headers @{ Authorization="Bearer $accessToken" }).registryFqdns
  • REST API

Примечание

Дополнительные сведения об использовании REST API Azure см. в справочнике Azure REST API.

  1. Получите маркер доступа Azure. Для получения токена можно использовать следующую команду Azure CLI:

    az account get-access-token --query accessToken
    
  2. Используйте клиент REST, например Curl, чтобы отправить запрос GET к URL-адресу обнаружения. Используйте маркер доступа, полученный на предыдущем шаге для авторизации. В следующем примере замените <region> регионом, в котором находится реестр, и <registry_name> именем реестра. Замените <token> на маркер доступа, полученный на предыдущем шаге.

    curl -X GET "https://<region>.api.azureml.ms/registrymanagement/v1.0/registries/<registry_name>/discovery" -H "Authorization: Bearer <token>" -H "Content-Type: application/json"
    

Следующий шаг

Узнайте, как совместно использовать модели, компоненты и среды в рабочих областях с помощью реестров.


Дополнительные ресурсы

Обучение

Модуль

Совместное использование модулей Bicep с помощью частных реестров - Training

Работа с многократно используемыми модулями Bicep с помощью реестров Bicep. Создайте частный реестр для вашей организации. Публикация и использование модулей с помощью реестра вашей организации.

Сертификация

Microsoft Certified: Azure Network Engineer Associate (Сертификация Майкрософт. Помощник сетевого инженера Azure) - Certifications

Продемонстрировать проектирование, реализацию и обслуживание сетевой инфраструктуры Azure, балансировку трафика, маршрутизацию сети и многое другое.