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


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

Note

Этот документ относится к порталу Microsoft Foundry (классическая модель).

🔄 Перейдите к новой документации Microsoft Foundry если вы используете новый портал.

Note

Этот документ относится к порталу Microsoft Foundry (new).

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

Подсказка

См. статью с часто задаваемыми вопросами о работе с виртуальными сетями.

Note

Сквозная сетевая изоляция не поддерживается в новом интерфейсе портала Foundry. Используйте классический интерфейс портала Foundry или пакет SDK или CLI для безопасного доступа к проектам Foundry при включенной сетевой изоляции.

Функции безопасности

По умолчанию стандартная настройка с частной сетевой изоляцией гарантирует:

  • Нет публичного выхода: основная инфраструктура обеспечивает правильную аутентификацию и безопасность для ваших агентов и инструментов, без необходимости обхода доверенных сервисов.

  • Внедрение контейнеров: позволяет сети платформы размещать API-интерфейсы и внедрять подсеть в сеть, обеспечивая локальное взаимодействие ресурсов Azure в одной виртуальной сети.

  • Доступ к частным ресурсам: если ваши ресурсы помечены как частные и необнаруженные из Интернета, сеть платформы по-прежнему может получить доступ к ним, предоставив необходимые учетные данные и авторизацию.

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

Схема архитектуры

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

Известные ограничения

  • Ограничение IP-адресов подсети: обе подсети должны иметь диапазоны IP-адресов в диапазоне 10.0.0.0/8172.16.0.0/12192.168.0.0/16ip-адресов класса A, B или C, зарезервированные для частных сетей. Диапазоны адресов общедоступного класса A, B или C не поддерживаются. Дополнительные сведения см. в шаблоне развертывания агента защиты частной сети на сайте GitHub.
  • Эксклюзивность подсети агента: подсеть агента не может совместно использоваться несколькими ресурсами Microsoft Foundry. Каждый ресурс Foundry должен использовать выделенную подсеть агента.
  • Размер подсети агента: рекомендуемый размер делегированной подсети агента — /24 (256 адресов) из-за делегирования подсети Microsoft.App/environmentв . Дополнительные сведения о размерах подсети см. в статье "Настройка виртуальных сетей для приложений контейнеров Azure".
  • "Разрешение выхода через брандмауэр для подсети агента: Если вы интегрируете брандмауэр Azure с защищенным стандартным агентом частной сети, добавьте полные доменные имена (FQDN), указанные в разделе управляемое удостоверение статьи Интеграция с брандмауэром Azure, или добавьте тег службы AzureActiveDirectory в разрешенный список."
    • Убедитесь, что проверка TLS не выполняется в брандмауэре, который может добавлять самозаверяющий сертификат. Во время сбоев проведите проверку, поступает ли какой-либо трафик на брандмауэр и какой трафик блокируется им.
    • Кроме того, ожидается, что трафик к 10.x.x.x частному IP-адресу (для сценариев, отличных от класса A) или 100.x.x.x частному IP-адресу (для сценария класса A) будет необходимым для доступа к службам инфраструктуры агента. Разрешите этот трафик, если вы интегрируете с брандмауэром.
  • Все ресурсы рабочей области Foundry должны быть развернуты в том же регионе, что и виртуальная сеть. Это включает Cosmos DB, учетную запись хранения, поиск ИИ, учетную запись Foundry, проект, управляемое удостоверение, Azure OpenAI или другой ресурс Foundry, используемый для развертываний моделей.
  • Доступность региона:
  • Azure Blob Storage: использование файлов из Azure Blob Storage с инструментом поиска файлов не поддерживается.
  • Частный сервер MCP: использование частных серверов MCP, развернутых в одной виртуальной сети, не поддерживается, поддерживаются только общедоступные серверы MCP.
  • Приземление с помощью поиска Bing: поддерживаются только следующие регионы:
    • West Europe
    • Canada East
    • Switzerland North
    • Spain Central
    • UAE North
    • Korea Central
    • Центральная Польша
    • Юго-Восточная Азия
    • West US
    • Западная часть США 2
    • Западная часть США 3
    • East US
    • Восток США 2
    • Central US
    • South India
    • Japan East
    • UK South
    • Центральная Франция
    • Norway East
    • Australia East
    • Canada Central
    • Центральная Швеция
    • Север Южной Африки
    • Italy North
    • Бразилия (Юг)

Prerequisites

  • Подписка Azure — создайте бесплатную учетную запись.

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

  • Пользователь, развертывающий шаблон, также должен иметь разрешения на назначение ролей необходимым ресурсам (Cosmos DB, поиск, хранилище).

    • Необходима встроенная роль — администратор доступа на основе ролей.
    • Кроме того, роль владельца на уровне подписки также удовлетворяет этому требованию.
    • Требуется ключевое разрешение: Microsoft.Authorization/roleAssignments/write
  • Python 3.8 или более поздней версии

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

    • Минимальный набор разрешений: агенты/*/чтение, агенты/*/действие, агенты/*/удалить
  • Регистрация поставщиков. Необходимо зарегистрировать следующие поставщики:

    • Microsoft.KeyVault
    • Microsoft.CognitiveServices
    • Microsoft.Storage
    • Microsoft.MachineLearningServices
    • Microsoft.Search
    • Microsoft.Network
    • Microsoft.App
    • Microsoft.ContainerService
    • Чтобы использовать средство поиска Bing, выполните приведенные далее действия. Microsoft.Bing
       az provider register --namespace 'Microsoft.KeyVault'
       az provider register --namespace 'Microsoft.CognitiveServices'
       az provider register --namespace 'Microsoft.Storage'
       az provider register --namespace 'Microsoft.MachineLearningServices'
       az provider register --namespace 'Microsoft.Search'
       az provider register --namespace 'Microsoft.Network'
       az provider register --namespace 'Microsoft.App'
       az provider register --namespace 'Microsoft.ContainerService'
       # only to use Grounding with Bing Search tool
       az provider register --namespace 'Microsoft.Bing'
    

Настройка новой защищенной сети среды

Note

  • Программное развертывание необходимо для настройки сетевой защищенной среды для службы агента. Развертывание на портале Azure в настоящее время не поддерживается.
  • Если вы хотите удалить ресурс Foundry и Стандартный агент с установленной защищенной сетью, удалите ресурс Foundry и виртуальную сеть в последнюю очередь. Перед удалением виртуальной сети убедитесь, что необходимо удалить и очистить ресурс Foundry.
  • В стандартной настройке агенты используют ресурсы, принадлежащие клиенту и выделенные для одного клиента. У вас есть полный контроль и управление этими ресурсами, но вы несете затраты на основе использования.

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

  • Создается учетная запись Foundry и проект Foundry.
  • Была развернута модель gpt-4o.
  • Ресурсы Azure для хранения данных клиентов: служба хранилища Azure, Azure Cosmos DB и службы поиска ИИ Azure автоматически создаются, если существующие ресурсы не предоставляются.
  • Эти ресурсы подключены к проекту для хранения файлов, потоков и векторных данных.
  • Ключи шифрования, управляемые корпорацией Майкрософт, для учетной записи хранения и Когнитивной учетной записи (Foundry) используются по умолчанию.

Выберите один из доступных методов развертывания:

Глубокое погружение в стандартную настройку с помощью шаблона частной сети

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

Сетевая инфраструктура

  • Создается виртуальная сеть (192.168.0.0/16)
  • Подсеть агента (192.168.0.0/24): размещает клиент агентов.
  • Подсеть частной конечной точки (192.168.1.0/24): размещает частные конечные точки

Частные зоны DNS Настроены следующие зоны DNS:

  • privatelink.blob.core.windows.net
  • privatelink.cognitiveservices.azure.com
  • privatelink.documents.azure.com
  • privatelink.file.core.windows.net
  • privatelink.openai.azure.com
  • privatelink.search.windows.net
  • privatelink.services.ai.azure.com

Возможности виртуальной сети

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

Note

Если вы хотите использовать существующую виртуальную сеть и подсеть с делегированием Microsoft.App/environments, размер вашей подсети должен быть не менее /27 (32 адреса). Рекомендуется размер подсети /24 (256 адресов), который является размером подсети по умолчанию в защищенном шаблоне сети.

Правила сети

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

Эти правила применяются ко всем протоколам, включая REST и WebSocket. Даже внутренние средства тестирования, такие как тестовые консоли портала Azure, требуют явного разрешения на доступ к учетной записи и его дочерним ресурсам, обеспечивая полную безопасность во всех проектах агента.

Частные конечные точки

Для агентов частные конечные точки обеспечивают безопасное внутреннее подключение для следующих ресурсов Azure:

  • Литейный завод
  • Поиск с использованием ИИ Azure
  • Azure Storage
  • Azure Cosmos DB (облачная база данных)

Сводка конфигураций зоны DNS

Тип ресурса приватной ссылки Подресурс Имя частной зоны DNS Общедоступные серверы пересылки зоны DNS
Foundry account privatelink.cognitiveservices.azure.com
privatelink.openai.azure.com
privatelink.services.ai.azure.com
cognitiveservices.azure.com
openai.azure.com
services.ai.azure.com
Поиск по искусственному интеллекту Azure searchService privatelink.search.windows.net search.windows.net
Azure Cosmos DB Sql privatelink.documents.azure.com documents.azure.com
хранилище Azure blob privatelink.blob.core.windows.net blob.core.windows.net

Чтобы создать условный пересылатель в DNS-сервере для виртуального сервера Azure DNS, используйте список зон, упомянутых в приведенной выше таблице. IP-адрес виртуального сервера Azure DNS — 168.63.129.16.

Доступ к вашим защищенным агентам

После завершения развертывания шаблона вы можете получить доступ к проекту Foundry за виртуальной сетью с помощью одного из следующих методов:

  • VPN-шлюз Azure: подключает локальные сети к виртуальной сети через частное подключение. Подключение осуществляется через общедоступный Интернет. Существует два типа VPN-шлюзов, которые можно использовать:
    • Точка — сеть. Каждый клиентский компьютер использует VPN-клиент для подключения к виртуальной сети.
    • Сеть — сеть: VPN-устройство подключает виртуальную сеть к локальной сети.
  • ExpressRoute: подключает локальные сети к облаку через частное подключение. Подключение устанавливается с помощью поставщика услуг подключения.
  • Бастион Azure. В этом сценарии вы создаете виртуальную машину Azure (иногда называемую полем перехода) в виртуальной сети. Затем вы подключаетесь к виртуальной машине с помощью Бастиона Azure. Бастион позволяет подключаться к виртуальной машине с помощью сеанса RDP или SSH из локального веб-браузера. Затем вы используете "jump box" в качестве среды разработки. Так как он находится в виртуальной сети, он может напрямую получить доступ к рабочей области.

Summary

Частные сети для стандартной настройки агента обеспечивают изоляцию и управление корпоративного уровня:

  • ✅ Весь входящий и исходящий трафик остается изолированным от открытой сети интернет.
  • ✅ Выделенные частные конечные точки защищают все данные клиента
  • ✅ Автоматическое разрешение частных DNS для простого внутреннего доступа
  • ✅ Строгие сетевые правила запрета по умолчанию для максимальной безопасности

Эта настройка позволяет агентам ИИ работать полностью в выделенной изолированной виртуальной сети. Используя частную сетевую изоляцию (BYO VNet), организации могут применять пользовательские политики безопасности, гарантируя, что агенты ИИ работают в доверенной инфраструктуре.

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

Руководство по устранению неисправностей

Ознакомьтесь с этим руководством, чтобы устранить ошибки, связанные с ошибками развертывания шаблонов стандартного защищенного агента или ошибками после развертывания шаблона на портале Foundry.

Ошибки развертывания шаблона

"CreateCapabilityHostRequestDto is invalid: Agents CapabilityHost supports a single, non empty value for vectorStoreConnections property."

"Agents CapabilityHost supports a single, non empty value for storageConnections property."

"Agents CapabilityHost supports a single, non empty value for threadStorageConnections property."

Решение: Для предоставления всех подключений ко всем ресурсам BYO необходимо подключение ко всем этим ресурсам. Вы не можете создать защищенный стандартный агент в Foundry без всех трех ресурсов.

"Provided subnet must be of the proper address space. Please provide a subnet which has address space in the range of 172 or 192."

Решение. Вы не используете правильный диапазон IP-адресов для делегированной подсети агента. Убедитесь, что вы используете допустимые пространства частных IP-адресов.

"Subscripton is not registered with the required resource providers, please register with the resource providers Microsoft.App and Microsoft.ContainerService."

Решение. Отсутствует правильная регистрация ресурсов. Убедитесь, что необходимые ресурсы зарегистрированы в клиенте.

az provider register --namespace 'Microsoft.KeyVault' 
az provider register --namespace 'Microsoft.CognitiveServices' 
az provider register --namespace 'Microsoft.Storage' 
az provider register --namespace 'Microsoft.MachineLearningServices' 
az provider register --namespace 'Microsoft.Search' 
az provider register --namespace 'Microsoft.Network' 
az provider register --namespace 'Microsoft.App' 
az provider register --namespace 'Microsoft.ContainerService' 

"Failed to create Aml RP virtual workspace due to System.Exception: Failed async operation." или "The resource operation completed with terminal provisioning state 'Failed'. Capability host operation failed."

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

"Subnet requires any of the following delegation(s) [Microsoft.App/environments] to reference service association link /subscriptions/11111-aaaaa-2222-bbbb-333333333/resourceGroups/agentRANGEChange/providers/Microsoft.Network/virtualNetworks/my-agent-vnet/subnets/agent-subnet/serviceAssociationLinks/legionservicelink."

Решение. Эта ошибка возникает при попытке удалить защищенный стандартный шаблон в Azure и неправильно удалить все ресурсы. Одним из решений является переход на страницу ресурса Foundry на портале Azure и выберите "Управление удаленными ресурсами". Оттуда удалите ресурс, с которым был связан агент этой виртуальной сети. Другим вариантом является запуск deleteCaphost.sh скрипта в защищенном стандартном шаблоне.

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

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