Condividi tramite


Configurare le regole del firewall IP per consentire le connessioni dell'indicizzatore da Azure AI Search

Per conto di un indicizzatore, un servizio di ricerca invia chiamate in uscita a una risorsa di Azure esterna per eseguire il pull dei dati durante l'indicizzazione. Se la risorsa di Azure usa regole del firewall IP per filtrare le chiamate in ingresso, è necessario creare una regola in ingresso nel firewall che ammetta le richieste dell'indicizzatore.

Questo articolo illustra come trovare l'indirizzo IP del servizio di ricerca e configurare una regola IP in ingresso in un account di Archiviazione di Azure. Sebbene sia specifico per Archiviazione di Azure, questo approccio funziona anche per altre risorse di Azure che usano regole del firewall IP per l'accesso ai dati, ad esempio Azure Cosmos DB e Azure SQL.

Nota

Applicabile solo ad Archiviazione di Azure. L'account di archiviazione e il servizio di ricerca devono trovarsi in aree diverse se si vogliono definire regole del firewall IP. Se l'installazione non lo consente, provare invece l'eccezione del servizio attendibile o la regola dell'istanza della risorsa.

Per le connessioni private dagli indicizzatori a qualsiasi risorsa di Azure supportata è consigliabile configurare un collegamento privato condiviso. Le connessioni private viaggiano nella rete backbone Microsoft, ignorando completamente la rete Internet pubblica.

Ottenere un indirizzo IP del servizio di ricerca

  1. Ottenere il nome di dominio completo (FQDN) del servizio di ricerca. Ha un aspetto analogo a <search-service-name>.search.windows.net. È possibile trovare il nome di dominio completo cercando il servizio di ricerca nel portale di Azure.

    Screenshot della pagina Panoramica del servizio di ricerca.

  2. Cercare l'indirizzo IP del servizio di ricerca eseguendo un nslookup (o un ping) del nome di dominio completo in un prompt dei comandi. Assicurarsi di rimuovere il prefisso https:// dal nome di dominio completo.

  3. Copiare l'indirizzo IP in modo che sia possibile specificarlo in una regola in ingresso nel passaggio successivo. Nell'esempio seguente l'indirizzo IP da copiare è "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
    

Consentire l'accesso dall'indirizzo IP client

Le applicazioni client che eseguono il push delle richieste di indicizzazione e query al servizio di ricerca devono essere rappresentate in un intervallo IP. In Azure è in genere possibile determinare l'indirizzo IP eseguendo il ping del nome di dominio completo di un servizio. Ad esempio, ping <your-search-service-name>.search.windows.net restituisce l'indirizzo IP di un servizio di ricerca.

Aggiungere l'indirizzo IP client per consentire l'accesso al servizio dal portale di Azure nel computer corrente. Passare alla sezione Rete nel riquadro di spostamento a sinistra. Modificare Accesso alla rete pubblica in Reti selezionate e quindi selezionare Aggiungere l'indirizzo IP client in Firewall.

Screenshot dell'aggiunta dell'IP client al firewall del servizio di ricerca

Ottenere l'indirizzo IP del portale di Azure

Se si usa il portale o l'Importazione guidata dati per creare un indicizzatore, è necessaria anche una regola in ingresso per il portale.

Per ottenere l'indirizzo IP del portale, eseguire nslookup (o ping) su stamp2.ext.search.windows.net, ossia il dominio della gestione traffico. Per nslookup, l'indirizzo IP è visibile nella parte "Risposta non autorevole" della risposta.

Nell'esempio seguente l'indirizzo IP da copiare è "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

I servizi in aree diverse si connettono a gestori di traffico diversi. Indipendentemente dal nome di dominio, l'indirizzo IP restituito dal ping è quello corretto da usare quando si definisce una regola del firewall in ingresso per il portale di Azure nell'area.

Per il ping, si verifica il timeout della richiesta, ma l'indirizzo IP è visibile nella risposta. Ad esempio, nel messaggio "Pinging azsyrie.northcentralus.cloudapp.azure.com [52.252.175.48]", l'indirizzo IP è "52.252.175.48".

Ottenere gli indirizzi IP per il tag del servizio "AzureCognitiveSearch"

Sarà anche necessario creare una regola in ingresso che consenta le richieste dall'ambiente di esecuzione multi-tenant. Questo ambiente è gestito da Microsoft e viene usato per eseguire l'offload di processi con utilizzo intensivo di elaborazione che potrebbero altrimenti sovraccaricare il servizio di ricerca. Questa sezione illustra come ottenere l'intervallo di indirizzi IP necessari per creare questa regola in ingresso.

Viene definito un intervallo di indirizzi IP per ogni area che supporta Azure AI Search. Specificare l'intervallo completo per garantire l'esito positivo delle richieste provenienti dall'ambiente di esecuzione multi-tenant.

È possibile ottenere questo intervallo di indirizzi IP dal tag del servizio AzureCognitiveSearch.

  1. Usare l'API di individuazione o il file JSON scaricabile. Se il servizio di ricerca è il cloud pubblico di Azure, scaricare il file JSON pubblico di Azure.

  2. Aprire il file JSON e cercare "AzureCognitiveSearch". Per un servizio di ricerca nell'area WestUS2, gli indirizzi IP per l'ambiente di esecuzione dell'indicizzatore multi-tenant sono:

    {
    "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. Per gli indirizzi IP con il suffisso "/32", eliminare "/32" (40.91.93.84/32 diventa 40.91.93.84 nella definizione della regola). Tutti gli altri indirizzi IP possono essere usati verbatim.

  4. Copiare tutti gli indirizzi IP per l'area.

Aggiungere indirizzi IP alle regole del firewall IP

Ora che sono disponibili gli indirizzi IP necessari, è possibile configurare le regole in ingresso. Il modo più semplice per aggiungere intervalli di indirizzi IP alla regola del firewall di un account di archiviazione consiste nell'usare il portale di Azure.

  1. Individuare l'account di archiviazione nel portale e aprire Rete nel riquadro di spostamento a sinistra.

  2. Nella scheda Firewall e reti virtuali scegliere Reti selezionate.

    Screenshot della pagina Firewall e reti virtuali di Archiviazione di Azure

  3. Aggiungere gli indirizzi IP ottenuti in precedenza nell'intervallo di indirizzi e selezionare Salva. È necessario avere regole per il servizio di ricerca, il portale di Azure (facoltativo) e tutti gli indirizzi IP per il tag di servizio "AzureCognitiveSearch" per l'area.

    Screenshot della sezione Indirizzo IP della pagina.

L'aggiornamento delle regole del firewall può richiedere da cinque a dieci minuti, dopo i quali gli indicizzatori dovrebbero poter accedere ai dati dell'account di archiviazione dietro il firewall.

Integrare la sicurezza di rete con l'autenticazione basata su token

I firewall e la sicurezza di rete costituiscono un primo passaggio per impedire l'accesso non autorizzato a dati e operazioni. L'autorizzazione deve essere il passaggio successivo.

È consigliabile usare l'accesso in base al ruolo, in cui gli utenti e i gruppi di Microsoft Entra ID vengono assegnati a ruoli che determinano l'accesso in lettura e scrittura al servizio. Per una descrizione dei ruoli predefiniti e istruzioni per la creazione di ruoli personalizzati, vedere Connettersi ad Azure AI Search usando i controlli degli accessi in base al ruolo.

Se non si necessita dell'autenticazione basata su chiave, è consigliabile disabilitare le chiavi API e usare esclusivamente le assegnazioni di ruolo.

Passaggi successivi