Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
ОБЛАСТЬ ПРИМЕНЕНИЯ:
Расширение Azure CLI ml версии 2 (текущая)
Python SDK azure-ai-ml версии 2 (текущая)
В этой статье объясняются концепции идентичности и разрешений в контексте сетевых конечных точек Azure Machine Learning. В этой статье рассматриваются идентификаторы Microsoft Entra, поддерживающие управление доступом на основе ролей и разрешения. Идентификатор Microsoft Entra называется удостоверением пользователя или удостоверением конечной точки в зависимости от его назначения.
Удостоверение пользователя — это идентификатор Microsoft Entra, который может создать конечную точку и ее развертывания или взаимодействовать с конечными точками или рабочими областями. Идентичность пользователя инициирует запросы к конечным точкам, развертываниям или рабочим областям. Удостоверение пользователя должно иметь соответствующие разрешения для выполнения операций плоскости управления и плоскости данных в конечных точках или рабочих областях.
Удостоверение конечной точки — это Microsoft Entra ID, который используется для запуска пользовательского контейнера в развертываниях. Контейнер пользователя использует идентификатор конечной точки для развертывания. Идентификатор конечной точки также должен иметь необходимые разрешения для контейнера пользователя, чтобы взаимодействовать с ресурсами по мере необходимости. Например, идентификационные данные конечной точки должны иметь соответствующие разрешения для получения образов из Azure Container Registry или взаимодействия с другими службами Azure.
Идентификация пользователя и идентификация конечной точки имеют отдельные требования к разрешениям. Дополнительные сведения об управлении удостоверениями и разрешениями см. в статье "Проверка подлинности клиентов для сетевых конечных точек".
Внимание
Проверка подлинности идентификатора aad_token Microsoft Entra поддерживается только для управляемых сетевых конечных точек. Для сетевых конечных точек Kubernetes можно использовать ключ или Машинное обучение Azureaml_token.
Разрешения и область авторизации
Управление доступом на основе ролей Azure (RBAC) позволяет определять и назначать роли с набором разрешенных и (или) запрещенных действий в определенных областях. Эти роли и области можно настроить в соответствии с вашими бизнес-потребностями. Следующие примеры служат отправной точкой, которую можно расширить по мере необходимости.
Для удостоверения пользователя:
- Для управления операциями уровня управления и плоскости данных используйте встроенную роль AzureML Data Scientist, которая включает действие разрешения
Microsoft.MachineLearningServices/workspaces/onlineEndpoints/*/actions. - Чтобы управлять операциями для определенной конечной точки, используйте область
/subscriptions/<subscriptionId>/resourcegroups/<resourceGroupName>/providers/Microsoft.MachineLearningServices/workspaces/<workspaceName>/onlineEndpoints/<endpointName>. - Чтобы управлять операциями для всех конечных точек в рабочей области, используйте область
/subscriptions/<subscriptionId>/resourcegroups/<resourceGroupName>/providers/Microsoft.MachineLearningServices/workspaces/<workspaceName>.
Для идентификации конечной точки, чтобы разрешить контейнеру пользователя считывать BLOB-объекты, используйте встроенную роль чтения данных BLOB-объектов хранилища, включающую действие разрешения данных Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read.
Дополнительные сведения об управлении авторизацией в рабочих областях Azure Machine Learning см. в статье «Управление доступом к Azure Machine Learning». Дополнительные сведения об определении ролей, их области и назначении ролей см. в Azure RBAC. Чтобы понять область охвата назначенных ролей, см. Понимание области охвата в Azure RBAC.
Разрешения, необходимые для удостоверения пользователя
При входе в клиент Azure с учетной записью Майкрософт, например с помощью az login, вы завершаете этап проверки подлинности authn для пользователей, который определяет вашу личность как пользователя. Чтобы создать интернет-конечную точку в рабочей области Azure Machine Learning, ваш идентификатор должен иметь соответствующее разрешение, также называемое авторизацией или authz. Удостоверения пользователей нуждаются в соответствующих разрешениях для выполнения операций как в управляющей плоскости, так и в плоскости данных.
Операции на уровне плоскости управления
Управление и изменение сетевых конечных точек осуществляется через операции управляющей плоскости. К этим операциям относятся операции создания, чтения, обновления и удаления (CRUD) в сетевых конечных точках и сетевых развертываниях. Для онлайновых конечных точек и развертываний запросы на выполнение операций управления отправляются в рабочую область Azure Machine Learning.
Проверка подлинности для операций уровня управления
Для операций уровня управления используйте токен Microsoft Entra для аутентификации клиента в рабочей области. В зависимости от варианта использования выберите один из нескольких рабочих процессов проверки подлинности , чтобы получить этот маркер. Учетная запись пользователя также должна иметь соответствующую роль Azure RBAC, назначенную для доступа к ресурсам.
Авторизация для операций контрольной плоскости
Для операций плоскости управления идентификация пользователя должна иметь соответствующую роль Azure RBAC, назначенную для доступа к ресурсам. В частности, для операций CRUD в сетевых конечных точках и развертываниях удостоверение пользователя должно иметь роли, назначенные для следующих действий:
| Операция | Требуемая роль Azure RBAC | Область |
|---|---|---|
| Выполнение операций создания и обновления в сетевых конечных точках и развертываниях. |
Владелец, участник или любая роль, разрешающая Microsoft.MachineLearningServices/workspaces/onlineEndpoints/write |
Рабочая область |
| Выполнение операций удаления в сетевых конечных точках и развертываниях. |
Владелец, участник или любая роль, разрешающая Microsoft.MachineLearningServices/workspaces/onlineEndpoints/delete |
Рабочая область |
| Выполнение операций создания, обновления и удаления на онлайн-конечных точках и развертываниях с помощью студии машинного обучения Azure. |
Владелец, участник или любая роль, разрешающая Microsoft.Resources/deployments/write |
Группа ресурсов, в которой содержится рабочее пространство |
| Выполнение операций чтения в сетевых конечных точках и развертываниях. |
Владелец, участник или любая роль, разрешающая Microsoft.MachineLearningServices/workspaces/onlineEndpoints/read |
Рабочая область |
Получите токен Azure Machine Learning (aml_token) для вызова как управляемых, так и онлайн-точек Kubernetes из рабочей области. |
Владелец, участник или любая роль, разрешающая Microsoft.MachineLearningServices/workspaces/onlineEndpoints/token/action |
Конечная точка |
| Извлеките ключ для вызова сетевых конечных точек (как управляемых, так и Kubernetes) из рабочей области. |
Владелец, участник или любая роль, разрешающая Microsoft.MachineLearningServices/workspaces/onlineEndpoints/listKeys/action |
Конечная точка |
| Повторно создайте ключи для управляемых и сетевых конечных точек Kubernetes. |
Владелец, участник или любая роль, разрешающая Microsoft.MachineLearningServices/workspaces/onlineEndpoints/regenerateKeys/action |
Конечная точка |
Получите microsoft Entra aad_token для вызова управляемых сетевых конечных точек. |
Не требует роли | Неприменимо* |
* Вы можете получить Microsoft Entra aad_token непосредственно из Microsoft Entra ID после входа в систему, так что операция не требует разрешений Azure RBAC на рабочей области.
Разрешения для удостоверения пользователя для принудительного доступа к хранилищам секретов по умолчанию
Если вы используете функцию внедрения секретов и устанавливаете флаг для обязательного доступа к хранилищам секретов по умолчанию при создании конечных точек, ваша учетная запись должна иметь разрешение на чтение секретов из подключений к рабочей области.
Идентификатор конечной точки может быть системным удостоверением (SAI) или пользовательским удостоверением (UAI). При создании конечной точки с помощью SAI и настройке флага для принудительного доступа к хранилищам секретов по умолчанию удостоверение пользователя должно иметь разрешения на чтение секретов из подключений к рабочей области при создании конечной точки и развертываний. Это ограничение гарантирует, что только идентификатор пользователя с разрешением на чтение секретов может предоставить идентификатору конечной точки разрешение на чтение секретов.
Если удостоверение пользователя, которое не имеет разрешения на чтение секретов из подключений к рабочей области, пытается создать конечную точку или развертывание с использованием SAI, и если флаг конечной точки установлен на принудительный доступ к хранилищам секретов по умолчанию, то создание конечной точки или развертывания будет отклонено.
Если вы создаёте конечную точку с помощью UAI, или она использует SAI, но флаг для принудительного доступа к хранилищам секретов по умолчанию не установлен, не требуется, чтобы удостоверение пользователя могло считывать секреты из подключений к рабочей области для создания конечной точки или развёртывания. В этом случае разрешение на чтение секретов не предоставляется удостоверению конечной точки автоматически, но вы можете вручную предоставить это разрешение, назначив соответствующую роль.
Независимо от того, является ли назначение роли автоматическим или ручным, если вы сопоставили переменные среды с секретными ссылками в определении конечной точки или развертывании, активируется извлечение и внедрение секретов. Функция внедрения секретов использует идентификацию конечной точки для извлечения и внедрения секретов. Дополнительные сведения о внедрении секретов см. в статье "Внедрение секретов" в сетевых конечных точках.
Операции плоскости данных
Операции плоскости данных не изменяют сетевые конечные точки, но используют данные, взаимодействующие с конечными точками. Пример операции плоскости данных — отправка запроса оценки в конечную точку в Сети и получение ответа от него. Для сетевых конечных точек и развертываний запросы на выполнение операций уровня данных отправляются на URI оценивания конечной точки.
Аутентификация для операций с плоскостью данных
Для операций плоскости данных выберите один из следующих способов проверки подлинности клиента для отправки запросов в URI оценки конечной точки:
- Ключ
- Машинное обучение Azure
aml_token - Microsoft Entra
aad_token
Для получения дополнительной информации о том, как проходить проверку подлинности клиентов для операций на уровне плоскости данных, см. Как проходить проверку подлинности клиентов для онлайн-конечных точек.
Авторизация для операций плоскости данных
Для операций на уровне данных учетная запись пользователя должна иметь соответствующие роли Azure RBAC, чтобы разрешить доступ к ресурсам только при задании конечной точки для использования Microsoft Entra aad_token. Для операций плоскости данных в сетевых конечных точках и развертываниях идентификатор пользователя должен иметь роль, назначенную следующими действиями:
| Операция | Требуемая роль Azure RBAC | Область |
|---|---|---|
Вызывайте сетевые конечные точки с помощью key или Azure Machine Learning aml_token. |
Роль не требуется. | Не применимо |
Вызовите управляемые интернет-узлы с помощью Microsoft Entra aad_token. |
Владелец, участник или любая роль, разрешающая Microsoft.MachineLearningServices/workspaces/onlineEndpoints/score/action |
Конечная точка |
Вызов сетевых конечных точек Kubernetes с помощью Microsoft Entra aad_token. |
Интернет-конечная точка Kubernetes не поддерживает токен Microsoft Entra для операций с плоскостью данных. | Не применимо |
Разрешения, необходимые для удостоверения конечной точки
Онлайн-развертывание запускает контейнер пользователя с идентификатором конечной точки, который представляет собой управляемую идентификацию, связанную с этой конечной точкой. Идентификатор конечной точки является идентификатором Microsoft Entra, поддерживающим Azure RBAC. Таким образом, можно назначить роли Azure удостоверению конечной точки для управления разрешениями, необходимыми для выполнения операций. Это удостоверение конечной точки может быть либо SAI, либо UAI. Вы решите, следует ли использовать SAI или UAI при создании конечной точки.
- Для SAI удостоверение создается автоматически при создании конечной точки, а роли с основными разрешениями, такими как разрешение AcrPull реестра контейнеров и Чтение данных Blob-объектов хранилища, автоматически назначаются.
- Для UAI сначала необходимо создать удостоверение, а затем связать его с конечной точкой при создании конечной точки. Вы несете также ответственность за назначение соответствующих ролей UAI по мере необходимости.
Автоматическое назначение ролей для идентификации конечной точки
Если идентификатор конечной точки является SAI, следующие роли назначаются идентификатору конечной точки для упрощения.
| Роль | Описание | Условие автоматического назначения ролей |
|---|---|---|
| AcrPull | Позволяет идентификатору конечной точки загружать образы из реестра контейнеров Azure, связанного с рабочей областью. | Идентификатор конечной точки — это SAI. |
| Чтение данных BLOB-хранилища. | Позволяет идентификатору конечной точки считывать BLOB из дата-стора по умолчанию в рабочей области. | Идентификатор конечной точки — это SAI. |
| Модуль записи метрик AzureML (предварительная версия) | Позволяет идентичности конечной точки записывать метрики в рабочую область. | Идентификация конечной точки — это SAI. |
| Средство чтения секретов подключения к рабочей области Azure Machine Learning | Позволяет идентификатору конечной точки считывать секреты из подключений рабочих областей | Идентификатор конечной точки — это SAI, а в процессе создания конечной точки используется флаг для принудительного доступа к хранилищам секретов по умолчанию. Идентификатор пользователя, создающий конечную точку, также имеет разрешение на чтение секретов из подключений к рабочей области. |
- Если удостоверение конечной точки является SAI, и флаг применения не задан или удостоверение пользователя не имеет разрешений на чтение секретов, автоматическое назначение роли читателя секретов подключения рабочей области Azure Machine Learning не производится. Дополнительные сведения см. в разделе «Развертывание онлайн-конечной точки с помощью внедрения секретов».
- Если удостоверение конечной точки — это UAI, автоматическое назначение роли читателя секретов подключения к рабочей области Azure Machine Learning не производится. В этом случае необходимо вручную назначить роли идентификатору конечной точки по мере необходимости.
Для получения дополнительной информации о роли Azure Machine Learning Workspace Connection Secrets Reader, см. раздел Назначение разрешений для удостоверения.