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
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.Cercare l'indirizzo IP del servizio di ricerca eseguendo un
nslookup
(o unping
) del nome di dominio completo in un prompt dei comandi. Assicurarsi di rimuovere il prefissohttps://
dal nome di dominio completo.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.
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
.
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.
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 } },
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.
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.
Individuare l'account di archiviazione nel portale e aprire Rete nel riquadro di spostamento a sinistra.
Nella scheda Firewall e reti virtuali scegliere Reti selezionate.
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.
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.