Отключение предварительных версий функций в Microsoft Foundry

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

  • Azure теги скрывают поверхности предварительного просмотра на портале Foundry (в текущем и классическом порталах).
  • Пользовательские роли RBAC блокируют определенные операции предварительного просмотра на уровне API.

Используйте теги для подавления на уровне портала и используйте пользовательские роли RBAC, если необходимо заблокировать определенные операции или разрешения.

Необходимые условия

  • Ресурс и проект Foundry.
  • Разрешение на добавление или изменение тегов в целевой области в Azure. Например, участник или участник тегов.
  • Подписка Azure с разрешениями на создание настраиваемых ролей в области, в которой должна быть назначена роль (например, роль владельца или роль администратора доступа пользователей).
  • Разрешения на назначение ролей в рамках, где назначается доступ (например, роль администратора управления доступом на основе ролей или роль администратора доступа пользователей).
  • Azure CLI установлен и вошел в систему, если вы создаете роли из командной строки. Дополнительные сведения см. в разделе Install Azure CLI.
  • Доступ к порталу Azure.

Применение тега

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

Важно

Используйте точный ключ тега и значение:

  • Ключ тега: AZML_DISABLE_PREVIEW_FEATURE
  • Значение тега: true

Примените тег в области, которая соответствует вашим потребностям системы управления:

  • Подписка на управление на уровне организации.
  • Группа ресурсов для покрытия всех ресурсов в группе.
  • Ресурс Foundry для детализированного элемента управления.

Замените <resource-id> полным идентификатором ресурса вашей подписки, группы ресурсов или ресурса Foundry.

az tag update --resource-id <resource-id> --operation merge --tags AZML_DISABLE_PREVIEW_FEATURE=true

Чтобы найти идентификатор ресурса для ресурса Foundry, выполните следующие действия.

az resource show --name <resource-name> --resource-group <resource-group> --resource-type "Microsoft.CognitiveServices/accounts" --query id --output tsv

Удалите тег, чтобы повторно включить функции предварительного просмотра

Чтобы восстановить функции предварительного просмотра, удалите тег AZML_DISABLE_PREVIEW_FEATURE.

az tag update --resource-id <resource-id> --operation delete --tags AZML_DISABLE_PREVIEW_FEATURE=true

После удаления тега обновите портал Foundry или выполните выход и снова войдите в систему. Предварительные версии функций снова появляются в течение нескольких минут.

Проверьте подавление в обоих интерфейсах портала

После сохранения тега разрешите несколько минут распространения, а затем проверьте поведение в обоих интерфейсах.

  1. Откройте Microsoft Foundry.
  2. Откройте проект с тегами.
  3. Убедитесь, что функции пользовательского интерфейса, доступные только для предварительной версии, скрыты.
    • На классическом портале средство предварительного просмотра функций в правом верхнем углу отключено.
    • На новом портале вы не увидите метки предварительного просмотра , так как функции в предварительной версии больше не будут отображаться.
  4. Переключение между новыми и классическими интерфейсами с помощью New Foundry и проверка того же поведения.

Ожидаемый результат: предварительные версии функций скрыты как в новых, так и в классических интерфейсах портала Foundry.

Устранение неполадок подавления

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

Симптом Причина Разрешение
Предварительные версии функций по-прежнему отображаются после применения тега. Недопустимый ключ или значение тега. Убедитесь, что ключ тега точно равен AZML_DISABLE_PREVIEW_FEATURE, а значение равно true (с учетом регистра). Сохраните тег еще раз.
Тег применяется, но подавляются только некоторые области действия. Тег применяется в более узкой области, чем было запланировано. Убедитесь, что тег применяется в заданной области управления (подписка, группа ресурсов или ресурс). При необходимости примените его в более широком масштабе.
Функции предварительного просмотра появятся снова через несколько минут. Сеанс браузера использует кэшированное состояние. Выйдите из системы и войдите снова, или очистите кэш браузера и обновите портал Foundry.
Не удалось добавить или изменить тег. У вашей учетной записи не хватает разрешений на теги в этом объёме. Убедитесь, что у вас есть роль участника или участника тегов в целевой области.
Предварительные версии функций по-прежнему отображаются после проверки области, тега и разрешений. Возможная задержка распространения или ошибка продукта. Подождите несколько минут для распространения. Если проблема сохраняется, отправьте запрос в службу поддержки.

Блокировка функций предварительного просмотра с использованием настраиваемых ролей RBAC

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

Так как вы не можете изменить встроенные роли, создайте пользовательскую роль , которая использует notDataActions (или notActions для функций плоскости управления, таких как трассировка), чтобы исключить разрешения, которые необходимо заблокировать.

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

Предварительная версия функции Путь поставщика ресурсов Тип разрешения Поле исключения
Служба агента Microsoft.CognitiveServices/accounts/AIServices/agents/* Действие данных notDataActions
Основные сведения о содержимом Microsoft.CognitiveServices/accounts/MultiModalIntelligence/* Действие данных notDataActions
Точное настройка Microsoft.CognitiveServices/accounts/OpenAI/fine-tunes/* и связанные пути Действие данных notDataActions
Оценки Microsoft.CognitiveServices/accounts/AIServices/evaluations/* Действие данных notDataActions
Безопасность содержимого Microsoft.CognitiveServices/accounts/ContentSafety/* Действие данных notDataActions
Трассировка Microsoft.Insights/* Действие уровня управления notActions

Создание настраиваемой роли, блокирующая функцию предварительной версии

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

Шаг 1. Определение JSON роли

Создайте JSON-файл с именем custom-role.json со следующим содержимым. Замените <subscription-id> идентификатором подписки Azure и добавьте действия с данными, которые вы хотите заблокировать в notDataActions.

{
  "properties": {
    "roleName": "Foundry custom role (preview features blocked)",
    "description": "Custom role that excludes specific Foundry preview features.",
    "assignableScopes": [
      "/subscriptions/<subscription-id>"
    ],
    "permissions": [
      {
        "actions": [
          "Microsoft.CognitiveServices/*/read",
          "Microsoft.Authorization/*/read"
        ],
        "notActions": [],
        "dataActions": [
          "Microsoft.CognitiveServices/accounts/AIServices/*"
        ],
        "notDataActions": [
          "Microsoft.CognitiveServices/accounts/AIServices/agents/write",
          "Microsoft.CognitiveServices/accounts/AIServices/agents/read",
          "Microsoft.CognitiveServices/accounts/AIServices/agents/delete"
        ]
      }
    ]
  }
}

Совет

Если вы клонируете существующую роль или используете разрешения с подстановочным знаком в dataActions, добавьте действия предварительной версии данных в notDataActions, так чтобы роль их исключала. Для трассировки используйте notActions вместо этого, так как трассировка использует действия уровня управления.

Шаг 2. Создание роли

az role definition create --role-definition custom-role.json

Шаг 3. Назначение роли

az role assignment create \
    --role "Foundry custom role (preview features blocked)" \
    --assignee "<user-email-or-object-id>" \
    --scope "/subscriptions/<subscription-id>"

Шаг 4. Проверка назначения роли

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

Перечислите назначения ролей для пользователя и проверьте, отображается ли настраиваемая роль:

az role assignment list --assignee "<user-email-or-object-id>" --output table

Просмотрите определение пользовательской роли, чтобы подтвердить, что notDataActions содержит ожидаемые действия с данными.

az role definition list --name "Foundry custom role (preview features blocked)" --output json

Действия с данными о функциях предварительной версии

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

Служба агента

Добавьте действия данных notDataActions в определение пользовательской роли.

  • Microsoft.CognitiveServices/accounts/AIServices/agents/write
  • Microsoft.CognitiveServices/accounts/AIServices/agents/read
  • Microsoft.CognitiveServices/accounts/AIServices/agents/delete

Чтобы заблокировать все операции службы агента с помощью одной записи, используйте подстановочный знак Microsoft.CognitiveServices/accounts/AIServices/agents/*.

Понимание содержания

Добавьте действия данных notDataActions в определение пользовательской роли.

  • Microsoft.CognitiveServices/accounts/MultiModalIntelligence/analyzers/read
  • Microsoft.CognitiveServices/accounts/MultiModalIntelligence/analyzers/write
  • Microsoft.CognitiveServices/accounts/MultiModalIntelligence/analyzers/delete
  • Microsoft.CognitiveServices/accounts/MultiModalIntelligence/classifiers/read
  • Microsoft.CognitiveServices/accounts/MultiModalIntelligence/classifiers/write
  • Microsoft.CognitiveServices/accounts/MultiModalIntelligence/classifiers/delete
  • Microsoft.CognitiveServices/accounts/MultiModalIntelligence/batchAnalysisJobs/*

Если ваша команда маркирует документы в Foundry, также заблокируйте действия с данными меток. В редакторе пользовательских ролей портала Azure найдите labelingProjects в поставщике ресурсов Microsoft.CognitiveServices, чтобы найти доступные операции, такие как:

  • Microsoft.CognitiveServices/accounts/MultiModalIntelligence/labelingProjects/read
  • Microsoft.CognitiveServices/accounts/MultiModalIntelligence/labelingProjects/write
  • Microsoft.CognitiveServices/accounts/MultiModalIntelligence/labelingProjects/delete

Примечание

Проверьте точные действия данных labelingProjects на портале Azure, так как доступные операции могут измениться по мере развития функции.

Точная настройка

Тонкая настройка использует несколько путей обработки данных в Microsoft.CognitiveServices/accounts/OpenAI/. Добавьте каждый путь, который вы хотите заблокировать, в notDataActions в вашем определении пользовательской роли.

  • Microsoft.CognitiveServices/accounts/OpenAI/fine-tunes/*
  • Microsoft.CognitiveServices/accounts/OpenAI/files/*
  • Microsoft.CognitiveServices/accounts/OpenAI/uploads/*
  • Microsoft.CognitiveServices/accounts/OpenAI/stored-completions/*
  • Microsoft.CognitiveServices/accounts/OpenAI/evals/*
  • Microsoft.CognitiveServices/accounts/OpenAI/models/*

При необходимости, если команда выполняет задания RLHF, также добавьте:

  • Microsoft.CognitiveServices/accounts/OpenAI/1p-jobs/*

Важно

Каждый путь, указанный в списке, является отдельной областью действия данных. Подстановочный знак fine-tunes/* соответствует только операциям под fine-tunes/. Чтобы заблокировать возможность тонкой настройки, добавьте все перечисленные пути.

Трассировка

Важно

Трассировка использует Azure Monitor, которая является службой плоскости управления. Разрешения, перечисленные в этом разделе, — это действия, а не действия с данными. Добавьте их в определение notActions (а не notDataActions) вашей пользовательской роли.

Добавьте эти действия notActions в определение пользовательской роли:

  • Microsoft.Insights/alertRules/read
  • Microsoft.Insights/diagnosticSettings/read
  • Microsoft.Insights/logDefinitions/read
  • Microsoft.Insights/metricdefinitions/read
  • Microsoft.Insights/metrics/read

Блокировка этих действий чтения запрещает пользователям просматривать панель трассировки на портале Foundry. Пользователям, которым требуется доступ к трассировке, требуется отдельная роль, включающая действия чтения Microsoft.Insights, например роль читателя в подключенном ресурсе Application Insights.

Оценки

Добавьте действия данных notDataActions в определение пользовательской роли.

  • Microsoft.CognitiveServices/accounts/AIServices/evaluations/write
  • Microsoft.CognitiveServices/accounts/AIServices/evaluations/read
  • Microsoft.CognitiveServices/accounts/AIServices/evaluations/delete

Безопасность содержимого

Добавьте действия данных notDataActions в определение пользовательской роли.

  • Microsoft.CognitiveServices/accounts/ContentSafety/*

Чтобы заблокировать только определенные операции безопасности содержимого вместо всех операций, найдите ContentSafety в редакторе пользовательских ролей портала Azure и выберите отдельные действия данных, которые необходимо исключить.

Устранение неполадок с RBAC

Симптом Причина Разрешение
Пользователь по-прежнему может получить доступ к заблокированной функции. Назначение роли, возможно, еще не распространилось, или пользователь имеет другую роль, которая предоставляет заблокированное разрешение. Подождите несколько минут для распространения. Проверьте все назначения ролей для пользователя с az role assignment list --assignee "<user>". Удалите все конфликтующие роли, которые предоставляют заблокированные действия с данными.
Ошибка создания пользовательской роли из-за "недопустимой операции с данными". Путь к действию данных может быть неверно указан, или поставщик ресурсов может быть не зарегистрирован. Проверьте путь действия данных в редакторе пользовательских ролей портала Azure. Убедитесь, что поставщик ресурсов Microsoft.CognitiveServices зарегистрирован в подписке.
Разрешения на трассировку не блокируются после добавления в notDataActions. Трассировка использует действия уровня управления (Microsoft.Insights), а не действия с данными. Переместите записи Microsoft.Insights из notDataActions в notActions в определении роли.