Konfigurieren von Netzwerkzugriffs- und Firewallregeln für Azure KI-Suche
In diesem Artikel wird erläutert, wie Sie den Netzwerkzugriff auf den öffentlichen Endpunkt eines Suchdienstes beschränken. Um den Zugriff auf alle Datenebenen auf den öffentlichen Endpunkt zu blockieren, verwenden Sie privaten Endpunkte und ein virtuelles Azure-Netzwerk.
In diesem Artikel wird davon ausgegangen, dass das Azure-Portal zum Konfigurieren von Netzwerkzugriffsoptionen dient. Sie können auch die Verwaltungs-REST-API, Azure PowerShell oder die Azure CLI verwenden.
Voraussetzungen
Ein Suchdienst, eine beliebige Region, auf der Basic-Dienstebene oder höher
Berechtigungen „Besitzer“ oder „Mitwirkender“
Gründe für die Konfiguration des Netzwerkzugriffs
Standardmäßig ist Azure KI-Suche so konfiguriert, dass Verbindungen über einen öffentlichen Endpunkt zugelassen werden. Der Zugriff auf einen Suchdienst über den öffentlichen Endpunkt wird durch Authentifizierungs- und Autorisierungsprotokolle geschützt, der Endpunkt selbst ist jedoch für Datenebenenanfragen über das Internet offen.
Wenn Sie keine öffentliche Website hosten, sollten Sie den Netzwerkzugriff so konfigurieren, dass Anfragen automatisch abgelehnt werden, es sei denn, sie stammen aus einer zugelassenen Gruppe von Geräten und Clouddiensten.
Es gibt zwei Mechanismen zum Einschränken des Zugriffs auf den öffentlichen Endpunkt:
- Eingehende Regeln, die die IP-Adressen, Bereiche oder Subnetze auflisten, aus denen Anforderungen zugelassen werden
- Ausnahmen von Netzwerkregeln, bei denen Anforderungen ohne Prüfungen zugelassen werden, solange die Anforderung von einem vertrauenswürdigen Dienst stammt
Netzwerkregeln sind nicht erforderlich, es ist jedoch eine bewährte Methode, diese hinzuzufügen, wenn Sie Azure KI-Suche zum Aufstellen privater oder interner Unternehmensinhalte verwenden.
Netzwerkregeln gelten für Datenebenenvorgänge für den öffentlichen Endpunkt des Suchdiensts. Vorgänge auf Datenebenen umfassen das Erstellen oder Abfragen von Indizes und alle anderen Aktionen, die von den Search REST-APIs beschrieben werden. Vorgänge auf Steuerungsebene zielen auf die Dienstverwaltung ab. Diese Vorgänge geben Ressourcenanbieterendpunkte an, die den Netzwerkschutz unterliegen, der von Azure Resource Manager unterstützt wird.
Begrenzungen
Es gibt einige Nachteile beim Sperren des öffentlichen Endpunkts.
Es ist zeitaufwendig, IP-Bereiche vollständig zu identifizieren und Firewalls einzurichten, und wenn Sie in einer frühen Phase von Tests und Untersuchungstests und der Verwendung von Beispieldaten sind, sollten Sie die Netzwerkzugriffssteuerungen zurückstellen, bis Sie sie tatsächlich benötigen.
Einige Workflows erfordern Zugriff auf einen öffentlichen Endpunkt. Insbesondere stellen die Import-Assistenten im Azure-Portal eine Verbindung mit integrierten (gehosteten) Beispieldaten und Einbettungsmodellen über den öffentlichen Endpunkt her. Sie können zu Code oder Skript wechseln, um dieselben Aufgaben auszuführen, wenn Firewallregeln vorhanden sind, aber wenn Sie die Assistenten ausführen möchten, muss der öffentliche Endpunkt verfügbar sein. Weitere Informationen finden Sie unter Sichere Verbindungen in den Import-Assistenten.
Konfigurieren der Netzwerkzugriffssteuerung im Azure-Portal
Melden Sie sich beim Azure-Portal an, und suchen Sie Ihren Suchdienst.
Wählen Sie im Bereich ganz links unter Einstellungen die Option Netzwerk aus. Wenn diese Option nicht angezeigt wird, überprüfen Sie die Dienstebene. Netzwerkoptionen sind auf der Stufe „Einfach“ und höher verfügbar.
Wählen Sie Ausgewählte IP-Adressen aus. Vermeiden Sie die Option Deaktiviert, es sei denn, Sie konfigurieren einen privaten Endpunkt.
Weitere Einstellungen werden verfügbar, wenn Sie diese Option auswählen.
Wählen Sie unter IP-Firewall Client-IP-Adresse hinzufügen aus, um eine eingehende Regel für die öffentliche IP-Adresse Ihres persönlichen Geräts zu erstellen. Weitere Informationen finden Sie unter Zugriff über die IP-Adresse des Azure-Portals zulassen.
Fügen Sie weitere Client-IP-Adressen für andere Geräte und Dienste hinzu, die Anforderungen an einen Suchdienst senden.
IP-Adressen und -Bereiche sind im CIDR-Format. Ein Beispiel für die CIDR-Notation ist „8.8.8.0/24“, womit die IPs im Bereich zwischen 8.8.8.0 und 8.8.8.255 dargestellt werden.
Wenn Ihr Suchclient eine statische Web-App in Azure ist, lesen Sie Eingehende und ausgehende IP-Adressen in Azure App Service. Für Azure Functions siehe IP-Adressen in Azure Functions.
Wählen Sie unter Ausnahmen die Option Für Azure-Dienste aus der Liste vertrauenswürdiger Dienste Zugriff auf diesen Suchdienst zulassen aus. Die Liste mit vertrauenswürdigen Diensten umfasst:
Microsoft.CognitiveServices
für Azure OpenAI und Azure KI ServicesMicrosoft.MachineLearningServices
für Azure Machine Learning
Wenn Sie diese Ausnahme aktivieren, verwenden Sie eine Abhängigkeit von der Microsoft Entra ID-Authentifizierung, verwalteten Identitäten und Rollenzuweisungen. Alle Azure KI Services oder AML-Features, die über eine gültige Rollenzuweisung für Ihren Suchdienst verfügen, können die Firewall umgehen. Weitere Informationen finden Sie unter Gewähren des Zugriffs auf vertrauenswürdige Dienste.
Speichern Sie die Änderungen.
Nach dem Aktivieren der IP-Zugriffssteuerungsrichtlinie für Ihren Azure KI Search-Dienst werden alle Anforderungen an die Datenebene von Computern abgelehnt, die nicht in der Liste der zulässigen IP-Adressbereiche enthalten sind.
Für Anforderungen von IP-Adressen, die nicht in der Liste zulässiger Adressen enthalten sind, wird eine generische Antwort vom Typ 403 Unzulässig ohne zusätzliche Details zurückgegeben.
Wichtig
Es kann etwas dauern, bis Einstellungen wirksam werden. Warten Sie mindestens 15 Minuten, bevor Sie Probleme im Zusammenhang mit der Netzwerkkonfiguration beheben.
Zugriff über die IP-Adresse des Azure-Portals zulassen
Werden IP-Regeln konfiguriert, werden einige Features des Azure-Portals deaktiviert. Sie können Informationen auf Dienstebene anzeigen und verwalten, aber der Portalzugriff auf wichtige Assistenten, Indizes, Indexer und andere Ressourcen der obersten Ebene ist eingeschränkt.
Sie können den Portalzugriff auf sämtliche Suchdienstvorgänge wiederherstellen, indem Sie die IP-Adresse des Portals angeben.
Um die IP-Adresse des Portals abzurufen, führen Sie nslookup
(oder ping
) für Folgendes aus:
stamp2.ext.search.windows.net
(die Domäne der Traffic Manager-Instanz für die öffentliche Azure-Cloud)stamp2.ext.search.azure.us
(Azure Government-Cloud)
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
Wenn Dienste in unterschiedlichen Regionen ausgeführt werden, stellen sie 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 Nachricht "Pinging azsyrie.northcentralus.cloudapp.azure.com [52.252.175.48]"
ist die IP-Adresse beispielsweise 52.252.175.48
.
Ein Banner informiert Sie darüber, dass sich IP-Regeln auf die Portalerfahrung auswirken. Dieses Banner bleibt auch nach dem Hinzufügen der IP-Adresse des Portals sichtbar. Denken Sie daran, mehrere Minuten zu warten, bis Netzwerkregeln vor dem Testen wirksam werden.
Gewähren von Zugriff für vertrauenswürdige Azure-Dienste
Haben Sie die Ausnahme für vertrauenswürdige Dienste ausgewählt? Wenn ja, akzeptiert Ihr Suchdienst Anforderungen und Antworten von einer vertrauenswürdigen Azure-Ressource, ohne nach einer IP-Adresse zu fragen. Eine vertrauenswürdige Ressource muss über eine verwaltete Identität verfügen (entweder vom System oder vom Benutzer zugewiesen, aber in der Regel vom System). Eine vertrauenswürdige Ressource muss über eine Rollenzuweisung in Azure KI-Suche verfügen, die ihr die Berechtigung für Daten und Vorgänge erteilt.
Die Liste der vertrauenswürdigen Dienste für Azure KI-Suche umfasst:
Microsoft.CognitiveServices
für Azure OpenAI und Azure KI ServicesMicrosoft.MachineLearningServices
für Azure Machine Learning
Workflows für diese Netzwerkausnahme sind Anforderungen, die aus Azure KI Studio oder anderen AML-Features stammen und an die Azure KI-Suche gehen. Die Ausnahme für vertrauenswürdige Dienste ist in der Regel für Azure OpenAI On Your Data-Szenarien für den Abruf erweiterter Generierung (RAG) und Playground-Umgebungen vorgesehen.
Vertrauenswürdige Ressourcen müssen über eine verwaltete Identität verfügen
So richten Sie verwaltete Identitäten für Azure OpenAI und Azure Machine Learning ein:
- Konfigurieren von Azure OpenAI Service mit verwalteten Identitäten
- Einrichten der Authentifizierung zwischen Azure Machine Learning und anderen Diensten
So richten Sie eine verwaltete Identität für einen Azure KI-Dienst ein:
- Finden Ihres Multiservice-Kontos.
- Wählen Sie im Bereich ganz links unter Ressourcenverwaltung Identität aus.
- Legen Sie Vom System zugewiesen auf Ein fest.
Vertrauenswürdige Ressourcen müssen über eine Rollenzuweisung verfügen
Sobald Ihre Azure-Ressource über eine verwaltete Identität verfügt, weisen Sie Rollen für Azure KI-Suche zu, um Berechtigungen für Daten und Vorgänge zu erteilen.
Die vertrauenswürdigen Dienste werden für Vektorisierungsworkloads verwendet: Generieren von Vektoren aus Text- und Bildinhalten und Senden von Nutzlasten zurück an den Suchdienst für die Abfrageausführung oder Indizierung. Verbindungen von einem vertrauenswürdigen Dienst werden verwendet, um Nutzlasten für die Azure KI-Suche bereitzustellen.
Wählen Sie im linken Bereich unter Access Control (IAM) Identität aus.
Wählen Sie Hinzufügen und dann Rollenzuweisung hinzufügen aus.
Auf der Seite Rollen:
- Wählen Sie Mitwirkender an Suchindexdaten aus, um einen Suchindex mit Vektoren zu laden, die von einem Einbettungsmodell generiert werden. Wählen Sie diese Rolle aus, wenn Sie die integrierte Vektorisierung während der Indizierung verwenden möchten.
- Oder wählen Sie Suchindexdatenleser aus, um Abfragen mit einem von einem Einbettungsmodell generierten Vektor bereitzustellen. Die in einer Abfrage verwendete Einbettung wird nicht in einen Index geschrieben, sodass keine Schreibberechtigungen erforderlich sind.
Wählen Sie Weiter aus.
Wählen Sie auf der Seite Mitglieder verwaltete Identität und Mitglieder auswählen aus.
Filtern Sie nach vom System verwalteter Identität, und wählen Sie dann die verwaltete Identität Ihres Azure KI Multiservice-Kontos aus.
Hinweis
In diesem Artikel wird die vertrauenswürdige Ausnahme zum Zulassen von Anforderungen an Ihren Suchdienst behandelt, aber Azure KI-Suche befindet sich selbst in der Liste der vertrauenswürdigen Dienste anderer Azure-Ressourcen. Insbesondere können Sie die Ausnahme für vertrauenswürdige Dienste für Verbindungen von Azure KI-Suche zu Azure Storage verwenden.
Nächste Schritte
Sobald eine Anforderung über die Firewall zugelassen wurde, muss sie authentifiziert und autorisiert werden. Sie haben zwei Möglichkeiten:
Schlüsselbasierte Authentifizierung, bei der ein Administrator- oder Abfrage-API-Schlüssel für die Anforderung bereitgestellt wird Diese Option ist die Standardeinstellung.
Rollenbasierte Zugriffssteuerung (Role-based Access Control) mithilfe von Microsoft Entra ID, wobei der Aufrufer Mitglied einer Sicherheitsrolle in einem Suchdienst ist. Dies ist die sicherste Option. Sie verwendet Microsoft Entra ID für Authentifizierungs- und Rollenzuweisungen in Azure KI-Suche für Berechtigungen für Daten und Vorgänge.