Konfigurieren von IP-Firewallregeln zum Zulassen von Indexerverbindungen von Azure KI Search
Im Namen eines Indexers gibt ein Suchdienst ausgehende Aufrufe an eine externe Azure-Ressource aus, um während der Indizierung Daten zu pullen. Wenn Ihre Azure-Ressource IP-Firewallregeln zum Filtern eingehender Aufrufe verwendet, müssen Sie eine Eingangsregel in Ihrer Firewall erstellen, die Indexeranforderungen zulässt.
In diesem Artikel wird erklärt, wie Sie die IP-Adresse Ihres Suchdienstes herausfinden und dann eine eingehende IP-Regel für ein Azure Storage-Konto konfigurieren. Dieser Ansatz ist zwar spezifisch für Azure Storage, funktioniert aber auch für andere Azure-Ressourcen, die IP-Firewall-Regeln für den Datenzugriff verwenden, wie Azure Cosmos DB und Azure SQL.
Hinweis
Gilt nur für Azure Storage. Ihr Speicherkonto und Ihr Suchdienst müssen sich in verschiedenen Regionen befinden, wenn Sie IP-Firewallregeln definieren möchten. Wenn Ihr Setup dies nicht zulässt, versuchen Sie stattdessen die Ausnahme für vertrauenswürdige Dienste oder die Regel für Ressourceninstanzen.
Für private Verbindungen von Indexern zu einer unterstützten Azure-Ressource empfehlen wir, einen freigegebenen privaten Link einzurichten. Private Verbindungen durchlaufen das Microsoft Backbone-Netzwerk und umgehen das öffentliche Internet vollständig.
IP-Adresse eines Suchdienstes abrufen
Rufen Sie den vollqualifizierten Domänennamen (FQDN) Ihres Suchdiensts ab. Dies sieht wie
<search-service-name>.search.windows.net
aus. Sie können den FQDN ermitteln, indem Sie Ihren Suchdienst im Azure-Portal suchen.Suchen Sie die IP-Adresse des Suchdienstes, indem Sie einen
nslookup
(oderping
) des FQDN in einer Eingabeaufforderung durchführen. Stellen Sie sicher, dass Sie das Präfixhttps://
aus dem FQDN entfernen.Kopieren Sie die IP-Adresse, damit Sie sie im nächsten Schritt in einer eingehenden Regel angeben können. Im folgenden Beispiel lautet die IP-Adresse, die Sie kopieren sollten, „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
Zulassen des Zugriffs über Ihre Client-IP-Adresse
Clientanwendungen, die Indizierungs- und Abfrageanforderungen per Push an den Suchdienst senden, müssen in einem IP-Adressbereich repräsentiert sein. In Azure können Sie im Allgemeinen die IP-Adresse ermitteln, indem Sie den FQDN eines Diensts pingen (ping <your-search-service-name>.search.windows.net
gibt beispielsweise die IP-Adresse eines Suchdiensts zurück).
Fügen Sie Ihre Client-IP-Adresse hinzu, um den Zugriff auf den Dienst aus dem Azure-Portal auf Ihrem aktuellen Computer zu ermöglichen. Navigieren Sie zum Abschnitt Netzwerk im linken Navigationsbereich. Ändern Sie den öffentlichen Netzwerkzugriff auf ausgewählte Netzwerke und überprüfen Sie dann Hinzufügen Ihrer Client-IP-Adresse unter Firewall.
Abrufen der Azure-Portal IP-Adresse
Wenn Sie das Azure-Portal oder den Assistenten zum Importieren von Daten verwenden, um einen Indexer zu erstellen, benötigen Sie auch eine Eingangsregel für das Azure-Portal.
Um die IP-Adresse des Azure-Portals abrufen zu können, führen Sie nslookup
(oder ping
) auf stamp2.ext.search.windows.net
, der Domäne des Traffic-Managers, aus. Bei „nslookup“ ist die IP-Adresse im Teil „Nicht autoritative Antwort“ der Antwort sichtbar.
Im folgenden Beispiel lautet die IP-Adresse, die Sie kopieren sollten, „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
Dienste in unterschiedlichen Regionen stellen eine Verbindung mit verschiedenen Traffic-Managern her. Unabhängig vom Domänenname ist die IP-Adresse, die vom Ping zurückgegeben wird, die richtige, wenn Sie eine eingehende Firewallregel für das Azure-Portal in Ihrer Region definieren.
Beim Pingen kommt es für die Anforderung zum Timeout, aber die IP-Adresse wird in der Antwort angezeigt. In der Meldung "Pinging azsyrie.northcentralus.cloudapp.azure.com [52.252.175.48]" lautet die IP-Adresse zum Beispiel "52.252.175.48".
IP-Adressen für das Dienst-Tag "AzureCognitiveSearch" abrufen
Sie müssen auch eine Eingangsregel erstellen, die Anforderungen aus der Ausführungsumgebung mit mehreren Mandanten zulässt. Diese Umgebung wird von Microsoft verwaltet und wird verwendet, um intensive Aufträge zu entladen, die Ihren Suchdienst sonst überlasten könnten. In diesem Schritt wird erläutert, wie Sie den für diese Eingangsregel benötigten IP-Adressbereich abrufen.
Für jede Region, die Azure KI Search unterstützt, ist ein IP-Adressbereich definiert. Geben Sie den vollständigen Bereich an, um den Erfolg von Anforderungen sicherzustellen, die aus der Ausführungsumgebung mit mehreren Mandanten stammen.
Sie können diesen IP-Adressbereich über das Dienst-Tag AzureCognitiveSearch
abrufen.
Verwenden Sie entweder die Discovery-API oder die herunterladbare JSON-Datei. Handelt es sich bei dem Suchdienst um die öffentliche Azure-Cloud, laden Sie die Azure Public JSON-Datei herunter.
Öffnen Sie die JSON-Datei, und suchen Sie nach „AzureCognitiveSearch“. Für einen Suchdienst in „WestUS2“ (USA, Westen 2) sind die IP-Adressen für die Indexerausführungsumgebung mit mehreren Mandanten die folgenden:
{ "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 } },
Bei IP-Adressen mit dem Suffix „/32“ lassen Sie das „/32“ weg (40.91.93.84/32 wird in der Regeldefinition zu 40.91.93.84). Alle anderen IP-Adressen können wortwörtlich verwendet werden.
Kopieren Sie alle IP-Adressen für den Bereich.
IP-Adressen zu IP-Firewall-Regeln hinzufügen
Nachdem Sie nun über die erforderlichen IP-Adressen verfügen, können Sie die Eingangsregeln einrichten. Der einfachste Weg, IP-Adressbereiche zur Firewallregel eines Speicherkontos hinzuzufügen, ist über das Azure-Portal.
Suchen Sie das Speicherkonto im Azure-Portal, und öffnen Sie Netzwerk im linken Navigationsbereich.
Wählen Sie auf der Registerkarte Firewall und virtuelle Netzwerke die Option Ausgewählte Netzwerke aus.
Fügen Sie die zuvor im Adressbereich abgerufenen IP-Adressen hinzu und wählen Sie Speichern aus. Sie sollten Regeln für den Suchdienst haben, Azure-Portal (optional) sowie alle IP-Adressen für das Diensttag "AzureCognitiveSearch" für Ihre Region.
Es kann fünf bis zehn Minuten dauern, bis die Firewallregeln aktualisiert sind. Danach sollten die Indexer auf die Daten im Speicherkonto zugreifen können.
Zusätzliche Netzwerksicherheit mit Tokenauthentifizierung
Firewalls und Netzwerksicherheit sind ein erster Schritt, um unbefugten Zugriff auf Daten und Vorgänge zu verhindern. Ihr nächster Schritt sollte die Autorisierung sein.
Wir empfehlen rollenbasierten Zugriff, bei dem Microsoft Entra ID-Benutzer und -Gruppen Rollen zugewiesen werden, die den Lese- und Schreibzugriff auf Ihren Dienst festlegen. Eine Beschreibung der integrierten Rollen sowie Anweisungen zum Erstellen benutzerdefinierter Rollen finden Sie unter Herstellen einer Verbindung mit Azure KI-Suche mithilfe von rollenbasierten Zugriffssteuerungen.
Wenn Sie keine schlüsselbasierte Authentifizierung benötigen, empfehlen wir, API-Schlüssel zu deaktivieren und ausschließlich Rollenzuweisungen zu verwenden.