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

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

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

Примечание.

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

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

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

  1. Получите полное доменное имя службы поиска. Это выглядит следующим образом <search-service-name>.search.windows.net. Полное доменное имя можно найти, найдя службу поиска на портал Azure.

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

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

  3. Скопируйте IP-адрес, чтобы указать его в правиле входящего трафика на следующем шаге. В следующем примере IP-адрес, который необходимо скопировать, — 150.0.0.1.

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

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

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

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

Снимок экрана: добавление IP-адреса клиента в брандмауэр службы поиска

Получение IP-адреса портал Azure

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

Чтобы получить IP-адрес портала, выполните (илиping) в nslookupstamp2.ext.search.windows.netдомене диспетчера трафика. Для nslookup IP-адрес отображается в части ответа неавторитетного ответа.

В следующем примере IP-адрес, который необходимо скопировать, — 52.252.175.48.

$ nslookup stamp2.ext.search.windows.net
Server:  ZenWiFi_ET8-0410
Address:  192.168.50.1

Non-authoritative answer:
Name:    azsyrie.northcentralus.cloudapp.azure.com
Address:  52.252.175.48
Aliases:  stamp2.ext.search.windows.net
          azs-ux-prod.trafficmanager.net
          azspncuux.management.search.windows.net

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

Для проверки связи время ожидания запроса истекает, но IP-адрес отображается в ответе. Например, в сообщении "Pinging azsyrie.northcentralus.cloudapp.azure.com [52.252.175.48], IP-адрес — "52.252.175.48".

Получение 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
    }
    },
    
  3. Для IP-адресов есть суффикс "/32", удалите "/32" (40.91.93.84/32 становится 40.91.93.84 в определении правила). Все остальные IP-адреса можно использовать подробно.

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

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

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

  1. Найдите учетную запись хранения на портале и откройте сеть на левой панели навигации.

  2. На вкладке "Брандмауэр" и "Виртуальные сети" выберите "Выбранные сети".

    Снимок экрана: страница служба хранилища Azure брандмауэра и виртуальных сетей

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

    Снимок экрана: раздел IP-адреса страницы.

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

Дополнение сетевой безопасности с проверкой подлинности маркеров

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

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

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

Next Steps