ADC

Importe

Verschiedene Funktionen der Web App Firewall verwenden externe Dateien, die Sie bei der Konfiguration in die Web App Firewall hochladen. Mithilfe der GUI verwalten Sie diese Dateien im Bereich Importe, der vier Registerkarten enthält, die den vier Dateitypen entsprechen, die Sie importieren können: HTML-Fehlerobjekte, XML-Fehlerobjekte, XML-Schemas und WSDL-Dateien (Web Services Description Language). Mit der NetScaler-Befehlszeile können Sie diese Dateitypen importieren, aber Sie können sie nicht exportieren.

HTML-Fehlerobjekt

Wenn die Verbindung eines Benutzers zu einer HTML- oder Web 2.0-Seite blockiert wird oder ein Benutzer nach einer nicht vorhandenen HTML- oder Web 2.0-Seite fragt, sendet die Web App Firewall eine HTML-basierte Fehlerantwort an den Browser des Benutzers. Bei der Konfiguration, welche Fehlerantwort die Web App Firewall verwenden muss, haben Sie zwei Möglichkeiten:

  • Sie können eine Umleitungs-URL konfigurieren, die auf jedem Webserver gehostet werden kann, auf den Benutzer auch Zugriff haben. Wenn Sie beispielsweise eine benutzerdefinierte Fehlerseite auf Ihrem Webserver haben, 404.html, können Sie die Web App Firewall so konfigurieren, dass Benutzer auf diese Seite umgeleitet werden, wenn eine Verbindung blockiert wird.
  • Sie können ein HTML-Fehlerobjekt konfigurieren, bei dem es sich um eine HTML-basierte Webseite handelt, die auf der Web App Firewall selbst gehostet wird. Wenn Sie diese Option wählen, müssen Sie das HTML-Fehlerobjekt in die Web App Firewall hochladen. Dies tun Sie im Bereich Importe auf der Registerkarte HTML-Fehlerobjekt.

Das Fehlerobjekt muss eine Standard-HTML-Datei sein, die außer den Anpassungsvariablen für das Web App Firewall-Fehlerobjekt keine Nicht-HTML-Syntax enthält. Es kann keine CGI-Skripts, serveranalysierten Code oder PHP-Code enthalten. Die Anpassungsvariablen ermöglichen es Ihnen, Informationen zur Fehlerbehebung in das Fehlerobjekt einzubetten, das der Benutzer erhält, wenn eine Anfrage blockiert wird. Die meisten Anfragen, die die Web App Firewall blockiert, sind zwar illegitim, aber selbst eine ordnungsgemäß konfigurierte Web App Firewall kann gelegentlich legitime Anfragen blockieren, insbesondere wenn Sie sie zum ersten Mal bereitstellen oder nachdem Sie erhebliche Änderungen an Ihren geschützten Websites vorgenommen haben. Durch das Einbetten von Informationen in die Fehlerseite stellen Sie dem Benutzer die Informationen zur Verfügung, die er dem technischen Support geben muss, damit alle Probleme behoben werden können.

Die Variablen zur Anpassung der Web App Firewall-Fehlerseite lauten wie folgt:

  • $ {NS_TRANSACTION_ID}. Die Transaktions-ID, die die Web App Firewall dieser Transaktion zugewiesen hat.
  • $ {NS_APPFW_SESSION_ID}. Die Web App Firewall-Sitzungs-ID.
  • $ {NS_APPFW_VIOLATION_CATEGORY}. Die spezifische Sicherheitsüberprüfung oder Regel der Web App Firewall, gegen die verstoßen wurde.
  • $ {NS_APPFW_VIOLATION_LOG}. Die detaillierte Fehlermeldung im Zusammenhang mit dem Verstoß.

  • $ {Cookie Der Inhalt des angegebenen Cookies. Ersetzen Sie durch den Namen des spezifischen Cookie, das Sie auf der Fehlerseite anzeigen möchten. <CookieName> Wenn Sie mehrere Cookies haben, deren Inhalt Sie zur Fehlerbehebung anzeigen möchten, können Sie mehrere Instanzen dieser Anpassungsvariablen verwenden, jeweils mit dem entsprechenden Cookie-Namen. Hinweis: Wenn Sie das Blockieren für die Cookie-Konsistenzprüfung aktiviert haben, werden blockierte Cookies nicht auf der Fehlerseite angezeigt, da die Web App Firewall sie blockiert.

Um diese Variablen zu verwenden, betten Sie sie in den HTML- oder XML-Code des Fehlerseitenobjekts ein, als ob es sich um eine normale Textzeichenfolge handeln würde. Wenn das Fehlerobjekt dem Benutzer angezeigt wird, ersetzt die Web App Firewall für jede Anpassungsvariable die Informationen, auf die sich die Variable bezieht. Ein Beispiel für eine HTML-Fehlerseite, die benutzerdefinierte Variablen verwendet, ist unten dargestellt.

<!doctype html public "-//w3c//dtd html 4.0//en">  <html>  <head>  <title>Page Not Accessible</title>  </head>  <body>  <h1>Page Not Accessible</h1>  <p>The page that you accessed is not available. You can:</p>  <ul>  <li>return to the <b><a href="[homePage]">home page</a></b>, re-establish your session, and try again, or,</li>  <li>report this incident to the help desk via <b><a href="mailto:[helpDeskEmailAddress]">email</a></b> or by calling [helpDeskPhoneNumber].</li>  </ul>  <p>If you contact the help desk, please provide the following information:</p>  <table cellpadding=8 width=80%>  <tr><th align="right" width=30%>Transaction ID:</th><td align="left" valign="top" width=70%>${NS_TRANSACTION_ID}</td></tr>  <tr><th align="right" width=30%>Session ID:</th><td align="left" valign="top" width=70%>${NS_APPFW_SESSION_ID}</td></tr>  <tr><th align="right" width=30%>Violation Category:</th><td align="left" valign="top" width=70%>${NS_APPFW_VIOLATION_CATEGORY}</td></tr>  <tr><th align="right" width=30%>Violation Log:</th><td align="left" valign="top" width=70%>${NS_APPFW_VIOLATION_LOG}</td></tr>  <tr><th align="right" width=30%>Cookie Name:</th><td align="left" valign="top" width=70%>${COOKIE("[cookieName]")}</td></tr>  </table>  <body>  <html>
<!--NeedCopy-->

Um diese Fehlerseite zu verwenden, kopieren Sie sie in einen Text- oder HTML-Editor. Ersetzen Sie die folgenden Variablen durch die entsprechenden lokalen Informationen, die in eckigen Klammern stehen, um sie von den NetScaler-Variablen zu unterscheiden. (Lassen Sie diese unverändert. ):

  • [homePage]. Die URL für die Homepage Ihrer Website.
  • [helpDeskEmailAddress]. Die E-Mail-Adresse, die Benutzer verwenden sollen, um Blockiervorfälle zu melden.
  • [helpDeskPhoneNumber]. Die Telefonnummer, die Benutzer anrufen sollen, um Blockiervorfälle zu melden.
  • [cookieName]. Der Name des Cookie, dessen Inhalt Sie auf der Fehlerseite anzeigen möchten.

XML-Fehlerobjekt

Wenn die Verbindung eines Benutzers zu einer XML-Seite blockiert wird oder ein Benutzer nach einer nicht existierenden XML-Anwendung fragt, sendet die Web App Firewall eine XML-basierte Fehlerantwort an den Browser des Benutzers. Sie konfigurieren die Fehlerantwort, indem Sie im Bereich Importe auf der Registerkarte XML-Fehlerobjekt eine XML-basierte Fehlerseite in die Web App Firewall hochladen. Alle XML-Fehlerantworten werden auf der Web App Firewall gehostet. Sie können keine Umleitungs-URL für XML-Anwendungen konfigurieren.

Hinweis: Sie können in einem XML-Fehlerobjekt dieselben Anpassungsvariablen wie in einem HTML-Fehlerobjekt verwenden.

XML-Schema

Wenn die Web App Firewall eine Validierungsprüfung für die Anfrage eines Benutzers für eine XML- oder Web 2.0-Anwendung durchführt, kann sie die Anforderung anhand des XML-Schemas oder des Design Type Document (DTD) für diese Anwendung validieren und jede Anforderung ablehnen, die nicht dem Schema oder der DTD entspricht. Sowohl ein XML-Schema als auch eine DTD sind Standard-XML-Konfigurationsdateien, die die Struktur eines bestimmten XML-Dokumenttyps beschreiben.

WSDL

Wenn die Web App Firewall eine Validierungsprüfung für die Anfrage eines Benutzers für einen XML-SOAP-basierten Webdienst durchführt, kann sie die Anforderung anhand der Web Services Type Definitionsdatei (WSDL) für diesen Webdienst validieren. Eine WSDL-Datei ist eine standardmäßige XML-SOAP-Konfigurationsdatei, die die Elemente eines bestimmten XML-SOAP-Webdienstes definiert.

Objekt zum Importieren der API-Spezifikation

Die API-Spezifikation definiert das Design einer API, einschließlich Endpunkten, Methoden, Parametern und Datenformaten. Mit der Funktion API-Spezifikation importieren können Sie die offene API-Spezifikation importieren, die im Allgemeinen zur Beschreibung der REST-API verwendet wird. Wenn die Web App Firewall eine Überprüfung der Anfrage eines Benutzers für einen API-basierten Webdienst durchführt, validiert sie die Anfrage anhand des Schemas, das in der API-Spezifikationsdatei für diesen Webdienst angegeben ist. NetScaler unterstützt Schemavalidierungen für eine REST-API, wobei die Nutzlast Anwendungs-JSON und ProtoBuf für gRPC-API-Anfragen ist.

NetScaler unterstützt die folgenden Spezifikationsformate:

  • API öffnen - Swagger 2.0, OAS 3.0,3.1
  • ProtoBuf - v3 und v2
Importe