Добавление службы поиска в периметр безопасности сети

Примечание.

Поиск с использованием ИИ Azure доступна через портал Azure, REST API и Azure SDKs. Он также лежит в основе Foundry IQ — управляемого слоя знаний, который преобразует корпоративный контент в многократно используемые базы знаний с учетом разрешений доступа для агентов на портале Microsoft Foundry.

Периметр безопасности сети — это логическая граница сети вокруг вашей платформы как услуги (PaaS), которую вы развертываете за пределами виртуальной сети. Он устанавливает периметр для управления доступом к ресурсам общедоступной сети, таким как Поиск с использованием ИИ Azure, служба хранилища Azure и Azure OpenAI в Microsoft модели Foundry.

В этой статье объясняется, как присоединить службу поиска ИИ Azure к периметру безопасности сети для управления доступом к службе поиска. Присоединившись к периметру безопасности сети, вы можете:

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

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

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

Ограничения

Исходящий доступ к ресурсам Foundry Microsoft

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

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

  1. Добавьте службу поиска и ресурс Foundry в один и тот же периметр безопасности сети или в периметры, которые разрешают обмен данными между ними.

  2. Если оба ресурса находятся в одном периметре и служба поиска аутентифицируется в ресурсе Foundry с помощью управляемого удостоверения, добавлять правило исходящего трафика не нужно. Трафик внутри периметра допускается неявно. Если ресурсы находятся в разных периметрах или служба поиска использует проверку подлинности с помощью API-ключей, добавьте правило исходящего доступа по полному доменному имени (FQDN) в периметре, связанном с вашей службой поиска, которое указывает на имя узла ресурса Foundry. Инструкции по настройке на стороне Foundry см. в разделе Добавление Microsoft Foundry в периметр сетевой безопасности.

  3. Проверка доступа на двух этапах:

    1. Когда периметр находится в режиме обучения, запустите набор навыков, запрос векторизатора или вызов агентного извлечения, в котором используется ресурс Foundry. Просмотрите журналы периметра, чтобы подтвердить ожидаемый путь доступа.

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

Поддержка периметра безопасности сети (NSP) для ресурсов Microsoft.CognitiveServices типа AIServices (Microsoft Foundry) общедоступна. Поддержка NSP для ресурсов типа OpenAI (Служба Azure OpenAI) доступна в общедоступной предварительной версии. Текущий список поддерживаемых ресурсов см. в разделе Подключенные ресурсы Private Link.

Общая частная ссылка на ресурс Foundry по-прежнему поддерживается в качестве альтернативы.

Назначение службы поиска периметру безопасности сети

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

Tip

Для автоматизации используйте REST API для управления поиском вместо портала. Дополнительные сведения см. в статье "Управление службой поиска ИИ Azure" с помощью REST API.

  1. На портале Azure найдите службу "Периметр сетевой безопасности" для своей подписки.

  2. В левой области выберите "Параметры>связанных ресурсов".

    Снимок экрана: левое меню периметра безопасности сети.

  3. Выберите Добавить>Связать ресурсы с существующим профилем.

    Снимок экрана: кнопка привязки ресурса к периметру сетевой безопасности.

  4. Выберите профиль, созданный при создании периметра безопасности сети для профиля.

  5. Выберите "Добавить" и выберите службу поиска.

    Снимок экрана кнопки

  6. Выберите Связать в левом нижнем углу, чтобы создать связь.

Удаление службы поиска из периметра безопасности сети

Чтобы отсоединить службу поиска от периметра:

  1. Перейдите к ресурсу периметра безопасности сети на портале Azure.

  2. В левой области выберите "Параметры>связанных ресурсов".

  3. Найдите службу поиска в таблице, выберите три точки в конце строки и нажмите кнопку "Удалить связь".

  4. Подтвердите удаление. После удаления связи правила периметра больше не применяются к службе поиска, а publicNetworkAccess параметр службы поиска снова управляет входящим трафиком.

Режимы доступа периметра безопасности сети

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

Mode Description
Режим обучения Это режим доступа по умолчанию. В режиме обучения периметр безопасности сети регистрирует весь трафик в службу поиска, которая будет отклонена, если периметр находится в принудительном режиме. Этот режим доступа позволяет администраторам сети понять существующие шаблоны доступа службы поиска перед реализацией правил доступа.
Принудительный режим В принудительном режиме периметр безопасности сети ведет журналы и запрещает весь трафик, который явно не разрешен правилами доступа.

Параметры сети периметра сетевой безопасности и службы поиска

Параметр publicNetworkAccess определяет связь службы поиска с периметром безопасности сети.

  • В режиме publicNetworkAccess обучения параметр управляет общедоступным доступом к ресурсу.

  • В принудительном режиме периметральные правила безопасности сети переопределяют настройку publicNetworkAccess. Например, если служба поиска с параметром publicNetworkAccessenabled связана с периметром безопасности сети в принудительном режиме, доступ к службе поиска по-прежнему контролируется правилами доступа к периметру безопасности сети.

Изменение режима доступа к периметру безопасности сети

  1. Перейдите к ресурсу периметра безопасности сети на портале Azure.

  2. В левой области выберите "Параметры>связанных ресурсов".

    Снимок экрана: левое меню периметра безопасности сети.

  3. Найдите службу поиска в таблице.

  4. Выберите три точки в конце строки, а затем выберите режим изменения доступа.

    Снимок экрана: кнопка режима изменения доступа на портале периметра безопасности сети.

  5. Выберите нужный режим доступа и нажмите кнопку "Применить".

    Снимок экрана: кнопка

Включите журналирование сетевого доступа

  1. Перейдите к ресурсу периметра безопасности сети на портале Azure.

  2. На левой панели выберитепараметры диагностики>.

    Снимок экрана: меню слева на портале периметра безопасности сети.

  3. Выберите Добавить параметр диагностики.

  4. Введите любое имя, например diagnostic, в поле Имя параметра диагностики.

  5. В разделе Logs выберите allLogs. allLogs обеспечивает регистрацию в журнале всего входящего и исходящего сетевого доступа к ресурсам в периметре сетевой безопасности.

  6. В разделе Сведения о месте назначения выберите Архивировать в учетную запись хранения или Отправить в рабочую область Log Analytics. Учетная запись хранения должна находиться в том же регионе, что и периметр безопасности сети. Можно использовать существующую учетную запись хранения или создать новую. Рабочая область Log Analytics может находиться в другом регионе, отличном от используемого периметром безопасности сети. Вы также можете выбрать любой из других применимых направлений.

    Снимок экрана: заполненные параметры диагностики на портале периметра безопасности сети.

  7. Нажмите кнопку "Сохранить", чтобы создать параметр диагностики и начать доступ к сети.

  8. Чтобы убедиться, что ведение журнала включено, создайте трафик в службу поиска (например, выполните запрос). В течение примерно 10 минут запросите таблицу NSPAccessLogs в Log Analytics или проверьте соответствующий контейнер insights-logs-* в учетной записи хранения.

Чтение журналов доступа к сети

Журналы периметра безопасности сети доставляются в места назначения, выбранные в параметрах диагностики. Наиболее распространенными назначениями являются рабочая область Log Analytics и учетная запись хранения.

Рабочая область Log Analytics

Таблица NSPAccessLogs содержит все журналы для каждой категории журнала, например NspPublicInboundPerimeterRulesAllowed. Каждый журнал содержит запись сетевого доступа к периметру сетевой безопасности, которая соответствует категории журнала.

Ниже приведен пример NspPublicInboundPerimeterRulesAllowed формата журнала:

Название столбца Значение Пример значения
ОписаниеРезультатов Имя операции доступа к сети. POST /indexes/my-index/docs/search
Профиль С каким периметром безопасности сети связана служба поиска. Профиль по умолчанию
ServiceResourceId Идентификатор ресурса службы поиска. search-service-resource-id
Соответствующее правило Описание JSON правила, с которым совпадает журнал. { "accessRule": "IP firewall" }
IP-адрес источника Исходный IP-адрес входящего сетевого доступа, если это применимо. 192.0.2.1
AccessRuleVersion Версия правил доступа периметра безопасности сети, используемых для применения правил доступа к сети. 0

учетная запись хранения

У учетной записи хранения есть контейнеры для каждой категории журналов, например insights-logs-nsppublicinboundperimeterrulesallowed. Структура папок внутри контейнера соответствует идентификатору ресурса периметра сетевой безопасности и времени сбора журналов. Каждая строка в файле журнала JSON содержит запись сетевого доступа периметра безопасности сети, соответствующую категории журнала.

Например, в журнале разрешенных категорий правил входящего периметра используется следующий формат:

"properties": {
    "ServiceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/network-security-perimeter/providers/Microsoft.Search/searchServices/network-security-perimeter-search",
    "Profile": "defaultProfile",
    "MatchedRule": {
        "AccessRule": "myaccessrule"
    },
    "Source": {
        "IpAddress": "192.0.2.1",
    }
}

Добавление правила доступа для службы поиска

Профиль периметра безопасности сети задает правила, разрешающие или запрещающие доступ через периметр.

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

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

Служба поиска принимает входящие запросы из приложений, таких как портал Microsoft foundry и любое приложение, которое отправляет индексирование или запросы. Служба поиска отправляет исходящие запросы во время индексирования на основе индексатора и выполнения набора навыков. В этом разделе объясняется, как настроить правила входящего и исходящего доступа для сценариев поиска ИИ Azure.

Примечание.

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

Добавление правила входящего доступа

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

Периметр безопасности сети поддерживает два типа правил входящего доступа:

  • Диапазоны IP-адресов. IP-адреса или диапазоны должны быть указаны в формате бесклассовой междоменной маршрутизации (CIDR). Пример нотации CIDR — 192.0.2.0/24, который представляет IP-адреса, которые варьируются от 192.0.2.0 до 192.0.2.255. Этот тип правила разрешает входящие запросы из любого IP-адреса в диапазоне.

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

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

  1. Перейдите к ресурсу периметра безопасности сети на портале Azure.

  2. На левой панели выберите Параметры>Профили.

    Снимок экрана: меню слева с выбранными профилями.

  3. Выберите профиль, который вы используете с периметром безопасности сети.

    Снимок экрана: выбор профиля из периметра безопасности сети.

  4. В левой области выберите "Параметры>входящего доступа".

    Снимок экрана: меню слева с выбранными правилами входящего доступа.

  5. Выберите Добавить.

    Снимок экрана кнопки добавления правила доступа к периметру сетевой безопасности для входящего трафика.

  6. Введите или выберите следующие значения:

    Настройка Значение
    Имя правила Имя правила входящего доступа, например MyInboundAccessRule.
    Тип источника Допустимые значения : диапазоны IP-адресов или подписки.
    Разрешенные источники Если вы выбрали диапазоны IP-адресов, введите диапазон IP-адресов в формате CIDR, из которого требуется разрешить входящий доступ. Скачайте файл диапазонов IP-адресов Azure и тегов служб. Если выбраны подписки, используйте подписку, из которой требуется разрешить входящий доступ.
  7. Нажмите кнопку "Добавить ", чтобы создать правило входящего доступа.

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

  8. Чтобы проверить правило, переключите связь на принудительный режим в тестовом профиле. Убедитесь, что соответствующие запросы отображаются в NspPublicInboundPerimeterRulesAllowed категории журнала, а запросы, не соответствующие требованиям, отображаются в NspPublicInboundPerimeterRulesDenied категории.

Добавление правила исходящего доступа

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

В периметре безопасности индексаторы могут подключаться к Хранилище BLOB-объектов Azure, Azure Cosmos DB для NoSQL и База данных SQL Azure. Если индексаторы используют другие источники данных, для поддержки этого подключения требуется правило исходящего доступа.

Периметр безопасности сети поддерживает правила исходящего доступа на основе полного доменного имени (FQDN) назначения. Например, можно разрешить исходящий доступ для любой службы, связанной с вашим периметром сетевой безопасности, к FQDN, например mystorageaccount.blob.core.windows.net.

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

  1. Перейдите к ресурсу периметра безопасности сети на портале Azure.

  2. На левой панели выберите Параметры>Профили.

    Снимок экрана: меню слева с выбранным параметром профилей.

  3. Выберите профиль, который вы используете с периметром безопасности сети.

    Снимок экрана: выбор профиля из периметра безопасности сети.

  4. В левой области выберите "Параметры>исходящего доступа".

    Снимок экрана: выбор правил исходящего доступа в меню слева.

  5. Выберите Добавить.

    Снимок экрана: добавление правила исходящего доступа в периметр безопасности сети.

  6. Введите или выберите следующие значения:

    Настройка Значение
    Имя правила Имя правила исходящего доступа, например MyOutboundAccessRule.
    Тип назначения Оставьте как FQDN.
    Разрешенные назначения Введите разделенный запятыми список полных доменных имен, к которым требуется разрешить исходящий доступ.
  7. Нажмите кнопку "Добавить ", чтобы создать правило исходящего доступа.

    Снимок экрана: добавление правила исходящего доступа в периметр безопасности сети с заполненными параметрами.

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

Проверка подключения через периметр безопасности сети

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

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

  2. Выбор клиента:

    1. Для локального компьютера получите общедоступный IP-адрес.

    2. Для виртуальной машины в Azure используйте Private Link или найдите IP-адрес на портале Azure.

  3. Создайте правило входящего доступа для этого IP-адреса, чтобы разрешить доступ.

  4. На портале Azure откройте службу поиска и просмотрите его индексы.

    • Ожидаемый результат: Список индексов загружается, и вы можете выполнить тестовый запрос. Правило входящего IP-адреса работает.

    • Если отображается ошибка 403 или сообщение "Общедоступный сетевой доступ отключен": IP-адрес клиента или портал Azure не подпадает под правило для входящего трафика. Проверьте правила входящего доступа.

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

Симптом Вероятно, причина Смягчение последствий
Индексатор завершается с ошибкой после переключения в принудительный режим. У удостоверения службы поиска отсутствует роль уровня данных для источника данных, либо источник данных не поддерживается в пределах периметра. Убедитесь, что служба поиска использует управляемую идентичность и имеет необходимую роль для источника данных. Для неподдерживаемых источников данных добавьте правило исходящего доступа.
Вызовы к ресурсу Foundry для навыка, векторизатора или агентного поиска отклонены. Ресурс Foundry находится в другом периметре или служба поиска проходит проверку подлинности с помощью ключей API, поэтому канал не неявен. Добавьте оба ресурса в один периметр и используйте управляемую идентификацию либо добавьте исходящее правило FQDN, нацеленное на имя узла ресурса Foundry. Дополнительные сведения см. в разделе Outbound access to Microsoft Foundry resources.
Журналы диагностики не отображаются в Log Analytics или хранилище. Задержка приема данных, или учетная запись хранения данных не находится в том же регионе, что и периметр. Подождите до 10 минут после создания трафика, а затем запросите таблицу NSPAccessLogs или проверьте соответствующий insights-logs-* контейнер хранилища. Проверьте регион учетной записи хранения.
Доступ к службе поиска на портале запрещен после принудительного применения. IP-адрес клиента не охватывается любым правилом для входящего трафика. Добавьте правило входящего доступа для IP-адреса клиента или вернитесь в режим обучения во время завершения настройки.

Просмотр конфигурации периметра безопасности сети и управление ими

Используйте REST API конфигурации периметра сетевой безопасности, чтобы проверять и выверять конфигурации периметра в службе поиска.

Например, выведите список текущих конфигураций периметра в службе поиска:

az rest --method get \
  --url "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service-name>/networkSecurityPerimeterConfigurations?api-version=2025-05-01"

Если конфигурация не синхронизирована с периметром, активируйте согласование:

az rest --method post \
  --url "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service-name>/networkSecurityPerimeterConfigurations/<association-name>/reconcile?api-version=2025-05-01"

Используйте последнюю стабильную версию REST API управления поиском. Дополнительные сведения см. в статье "Управление службой поиска ИИ Azure" с помощью REST API.