Schützen von Azure OpenAI mithilfe von Azure Web Application Firewall in Azure Front Door
Immer mehr Unternehmen verwenden Azure OpenAI-APIs, und die Anzahl und Komplexität von Sicherheitsangriffen auf Webanwendungen nehmen ständig zu. Eine wirkungsvolle Sicherheitsstrategie ist erforderlich, um Azure OpenAI-APIs vor Angriffen auf verschiedene Webanwendungen zu schützen.
Bei Azure Web Application Firewall (WAF) handelt es sich um ein Produkt für das Azure-Netzwerk, das Webanwendungen vor einigen der zehn häufigsten Webangriffe laut OWASP (Open Web Application Security Project), allgemeinen Sicherheitsrisiken und Schwachstellen (Common Vulnerabilities and Exposures, CVEs) sowie Botangriffen schützt.
In diesem Artikel wird beschrieben, wie Sie Azure Web Application Firewall (WAF) in Azure Front Door verwenden, um Azure OpenAI-Endpunkte zu schützen.
Voraussetzungen
Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.
Erstellen einer Azure OpenAI-Instanz mithilfe des GPT-35-Turbo-Modells
Erstellen Sie zunächst eine OpenAI-Instanz.
Erstellen Sie eine Azure OpenAI-Instanz, und stellen Sie ein GPT-35-Turbo-Modell mithilfe des Artikels Erstellen und Bereitstellen einer Azure OpenAI Service-Ressource bereit.
Bestimmen Sie den Azure OpenAI-Endpunkt und den API-Schlüssel.
Öffnen Sie Azure OpenAI Studio, und öffnen Sie die Option Chat unter Playground. Verwenden Sie die Option Code anzeigen, um den Endpunkt und den API-Schlüssel anzuzeigen.
Überprüfen Sie den Azure OpenAI-Aufruf mithilfe von Postman. Verwenden Sie den Azure OpenAPI-Endpunkt und die API-Schlüsselwerte aus den vorherigen Schritten. Verwenden Sie die folgenden Codezeilen im POST-Text:
{ "model":"gpt-35-turbo", "messages": [ { "role": "user", "content": "What is Azure OpenAI?" } ] }
Als Antwort auf die POST-Anforderung sollte 200 OK angezeigt werden:
Azure OpenAI generiert auch eine Antwort mithilfe des GPT-Modells.
Erstellen einer Azure Front Door-Instanz mit Azure WAF
Verwenden Sie nun das Azure-Portal, um eine Azure Front Door-Instanz mit Azure WAF zu erstellen.
Erstellen Sie einen für Azure Front Door optimierten Premium-Tarif mit einer zugeordneten WAF-Sicherheitsrichtlinie in derselben Ressourcengruppe. Verwenden Sie die Option Benutzerdefiniert erstellen.
Fügen Sie Endpunkte und Routen hinzu.
Fügen Sie den Ursprungshostnamen hinzu: Der Ursprungshostname lautet
testazureopenai.openai.azure.com
.Fügen Sie die WAF-Richtlinie hinzu.
Konfigurieren einer WAF-Richtlinie zum Schutz vor Sicherheitsrisiken für Webanwendung und APIs
Aktivieren Sie die WAF-Richtlinie im Präventionsmodus, und stellen Sie sicher, dass Microsoft_DefaultRuleSet_2.1 und Microsoft_BotManagerRuleSet_1.0 aktiviert sind.
Überprüfen des Zugriffs auf Azure OpenAI über den Azure Front Door-Endpunkt
Überprüfen Sie nun Ihren Azure Front Door-Endpunkt.
Rufen Sie den Azure Front Door-Endpunkt aus dem Front Door-Manager ab.
Verwenden Sie Postman, um eine POST-Anforderung an den Azure Front Door-Endpunkt zu senden.
- Ersetzen Sie den Azure OpenAI-Endpunkt in der POST-Anforderung von Postman durch den AFDS-Endpunkt (Azure Front Door Service).
Azure OpenAI generiert auch eine Antwort mithilfe des GPT-Modells.
Überprüfen der Blockierung eines OWASP-Angriffs durch WAF
Senden Sie eine POST-Anforderung, die einen OWASP-Angriff auf den Azure OpenAI-Endpunkt simuliert. WAF blockiert den Aufruf mit dem Antwortcode 403: Verboten.
Konfigurieren von IP-Einschränkungsregeln mithilfe von WAF
Informationen zu Zugriffseinschränkungen des Azure OpenAI-Endpunkts auf die erforderlichen IP-Adressen finden Sie unter Konfigurieren einer IP-Einschränkungsregel mit einer WAF für Azure Front Door.
Häufige Probleme
Die folgenden Probleme treten häufig bei der Verwendung von Azure OpenAI mit Azure Front Door und Azure WAF auf:
Beim Senden einer POST-Anforderung an Ihren Azure OpenAI-Endpunkt wird die Meldung 401: Zugriff verweigert angezeigt.
Wenn Sie versuchen, unmittelbar nach der Erstellung Ihres Azure OpenAI-Endpunkts eine POST-Anforderung an diesen zu senden, wird möglicherweise die Meldung 401: Zugriff verweigert angezeigt, auch wenn Sie über den richtigen API-Schlüssel in Ihrer Anforderung verfügen. Dieses Problem löst sich in der Regel nach einiger Zeit ohne direktes Eingreifen von selbst.
Beim Senden einer POST-Anforderung an Ihren Azure OpenAI-Endpunkt wird die Meldung 415: Nicht unterstützter Medientyp angezeigt.
Wenn Sie versuchen, eine POST-Anforderung mit dem Content-Type-Header
text/plain
an Ihren Azure OpenAI-Endpunkt zu senden, wird diese Meldung angezeigt. Stellen Sie sicher, dass Sie Ihren Content-Type-Header im Headerabschnitt in Postman aufapplication/json
aktualisieren.