Настройте правила IP-брандмауэра для разрешения подключений индексатора из Поиск с использованием ИИ Azure

Поиск ИИ Azure выполняет внешние вызовы во время обработки индексатора содержимого и навыков, а также для агентных запросов на поиск, включая вызовы крупных языковых моделей (LLM). Если целевой ресурс Azure использует правила брандмауэра IP для фильтрации входящих вызовов, необходимо создать правило входящего трафика в брандмауэре, которое допускает запросы из службы "Поиск ИИ Azure".

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

Предпосылки

  • Служба поиска ИИ Azure (базовый или более высокий уровень). Правила брандмауэра нельзя задать на уровне "Бесплатный".
  • Существующий целевой ресурс Azure, защищенный брандмауэром.
  • Роль участника или владельца в службе поиска.

Примечание.

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

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

Получение IP-адреса службы поиска

  1. Перейдите в службу поиска в портал Azure.

  2. В левой области выберите "Обзор".

  3. Скопируйте полное доменное имя службы поиска, которое должно выглядеть следующим my-search-service.search.windows.netобразом.

    Снимок экрана: страница обзора службы поиска.

  4. Найдите IP-адрес службы поиска, выполнив nslookup полное доменное имя (или) pingв командной строке. Удалите https:// префикс.

  5. Скопируйте IP-адрес для использования на следующем шаге. В следующем примере копируется 150.0.0.1IP-адрес.

    nslookup my-search-service.search.windows.net
    Server:  server.example.org
    Address:  10.50.10.50
    
    Non-authoritative answer:
    Name:    <name>
    Address:  150.0.0.1
    aliases:  my-search-service.search.windows.net
    

    IP-адрес в Address поле "Неавторитетный ответ" (150.0.0.1 в этом примере) — это значение, необходимое для правила брандмауэра.

Разрешить доступ с IP-адреса клиента

Клиентские приложения, которые отправляют запросы на индексирование и к службе поиска, должны входить в диапазон IP-адресов. В Azure, как правило, вы можете узнать IP-адрес, выполнив пинг по полному доменному имени службы (FQDN). Например, ping <your-search-service-name>.search.windows.net возвращает IP-адрес службы поиска.

Добавьте IP-адрес клиента, чтобы разрешить доступ к службе из портал Azure на текущем компьютере.

  1. На портале Azure выберите службу поиска.

  2. В левой области выберите "Параметры>сети".

  3. На вкладке Брандмауэра и виртуальных сетей задайте для доступа к общедоступным сетевымадресам выбранные IP-адреса.

    Снимок экрана: параметр разрешить доступ к общедоступной сети с выбранных IP-адресов на портале Azure.

  4. В разделе "Брандмауэр IP-адресов" выберите "Добавить IP-адрес клиента".

    Снимок экрана: параметр добавления IP-адреса клиента на портале Azure.

  5. Сохраните ваши изменения.

Получение IP-адресов для тега службы AzureCognitiveSearch

Кроме того, необходимо создать правило для входящего трафика, которое позволяет запрашивать запросы из мультитенантной среды выполнения. Эта среда управляется корпорацией Майкрософт и используется для разгрузки интенсивных заданий обработки, которые в противном случае могут перегружать службу поиска. В этом разделе объясняется, как получить диапазон IP-адресов, необходимых для создания этого правила для входящего трафика.

Диапазон IP-адресов определяется для каждого региона, поддерживающего поиск ИИ Azure. Укажите полный диапазон, чтобы обеспечить успешное выполнение запросов, поступающих из многопользовательской среды выполнения.

Этот диапазон IP-адресов можно получить из тега AzureCognitiveSearch службы.

  1. Используйте API обнаружения или скачиваемый JSON-файл. Если служба поиска является общедоступным облаком Azure, скачайте общедоступный JSON-файл Azure.

  2. Откройте JSON-файл и выполните поиск по запросу AzureCognitiveSearch. Для службы поиска в WestUS2 IP-адреса для среды выполнения мультитенантного индексатора:

    {
    "name": "AzureCognitiveSearch.WestUS2",
    "id": "AzureCognitiveSearch.WestUS2",
    "properties": {
       "changeNumber": 1,
       "region": "westus2",
       "regionId": 38,
       "platform": "Azure",
       "systemService": "AzureCognitiveSearch",
       "addressPrefixes": [
          "20.42.129.192/26",
          "40.91.93.84/32",
          "40.91.127.116/32",
          "40.91.127.241/32",
          "51.143.104.54/32",
          "51.143.104.90/32",
          "2603:1030:c06:1::180/121"
       ],
       "networkFeatures": null
    }
    },
    

    Скопируйте все IP-адреса в addressPrefixes массиве для региона.

  3. Для IP-адресов, имеющих суффикс "/32", удалите значение "/32" (40.91.93.84/32 становится 40.91.93.84 в определении правила). Все остальные IP-адреса можно использовать дословно.

  4. Скопируйте все IP-адреса для региона.

Добавление IP-адресов в правила брандмауэра IP

После получения необходимых IP-адресов настройте правила для входящего трафика. Самый простой способ добавить диапазоны IP-адресов в правило брандмауэра учетной записи хранения — портал Azure.

  1. Выберите свою учетную запись хранения на портале Azure.

  2. В левой области выберите "Безопасность и сеть".>

  3. На вкладке "Общедоступный доступ" выберите "Управление".

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

  4. В области доступа к общедоступной сети выберите Разрешить доступ из выбранных сетей.

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

  5. Добавьте полученные ранее IP-адреса и нажмите кнопку "Сохранить". У вас должны быть правила для службы поиска, портала Azure (необязательно) и всех IP-адресов для тега службы AzureCognitiveSearch для вашего региона.

    Для обновления правил брандмауэра может потребоваться пять–десять минут. После обновления индексаторы могут получить доступ к данным учетной записи хранения за брандмауэром.

Усиление сетевой безопасности с аутентификацией с использованием токенов

Брандмауэры и сетевая безопасность являются первым шагом в предотвращении несанкционированного доступа к данным и операциям. Авторизация должна быть следующим шагом.

Мы рекомендуем использовать доступ на основе ролей, где пользователям и группам Microsoft Entra ID назначаются роли, определяющие права на чтение и запись в вашей службе. Описание встроенных ролей и инструкций по созданию пользовательских ролей см. в статье "Подключение к поиску ИИ Azure" с помощью элементов управления доступом на основе ролей.

Если вам не нужна проверка подлинности на основе ключей, рекомендуется отключить ключи API и использовать назначения ролей исключительно.