Wenn eine von Ihnen an Server- und Workload Protection gesendete Anfrage Fehler enthält, umfasst die Antwort Informationen, die Sie zur
Identifizierung des Problems verwenden können:
- Wenn Sie die API direkt mit Software wie Postman oder cURL verwenden, können Sie Fehler anhand des Statuscodes der Antwort und der Fehlermeldung im Antworttext erkennen.
- Wenn Sie ein SDK verwenden, wird Ihnen die Antwort als Ausnahme (Python und Java) oder als Fehler (JavaScript) bereitgestellt. Die Ausnahme oder der Fehler enthält die Fehlermeldung aus dem Antworttext.
Um die Fehlerantworten besser zu beheben, sollten Sie die Arten von Fehlern, die auftreten
können, und einige häufige Ursachen verstehen.
Fehlerinformationen abrufen
Wenn Sie ein SDK verwenden, wird die Fehlermeldung in den Ausnahmen (Python und Java)
oder Fehlern (JavaScript) bereitgestellt, die Sie abfangen. Die Beispiele in Führen Sie eine GET-Anfrage aus: Richtlinien auflisten zeigen, wie man Ausnahmen abfängt und die Fehlermeldung ausgibt. Die folgenden Beispiele
sind Ausschnitte aus den Beispielen in diesem Abschnitt.
# Create a PoliciesApi object policies_api = api.PoliciesApi(api.ApiClient(configuration)) # List policies using version v1 of the API policies_list = policies_api.list_policies(api_version) # View the list of policies return policies_list
Für Postman oder cURL wird die Fehlermeldung angezeigt, wenn Sie die Antwort erhalten.
Authentifizierungsfehler
Authentifizierungsfehler führen zu einer Antwortnachricht von
Invalid API Key
. Für Postman- und cURL-Nutzer ist dieser Fehler mit einem 401
-Statuscode verbunden. Die folgenden Umstände verursachen diesen Fehler häufig:- Der zur Authentifizierung der Anfrage verwendete geheime Schlüssel ist falsch eingegeben
- Der zum Authentifizieren der Anfrage verwendete API-Schlüssel wurde gelöscht
Autorisierungsfehler
Autorisierungsfehler treten auf, wenn ein API-Schlüssel nicht berechtigt ist, eine
Aktion auszuführen oder auf eine Ressource zuzugreifen. Diese Fehler führen zu einer
Antwortnachricht in Form von
Not authorized to <action> <resource type>
, zum Beispiel Not authorized to delete computers
. Für Postman- und cURL-Nutzer ist dieser Fehler mit einem 403
-Statuscode verbunden. Die folgenden Umstände verursachen diesen Fehler häufig:- Die dem API-Schlüssel zugewiesene Rolle hat keine Zugriffsrechte für die Ressource, die Operation oder beides.
- Der API-Schlüssel ist gesperrt.
- Der API-Schlüssel ist abgelaufen.
Ressource nicht gefunden Fehler
Ressource-nicht-gefunden-Fehler treten auf, wenn eine Anfrage gestellt wird, um eine
Aktion auf einer bestimmten Ressource auszuführen und die Ressource nicht gefunden
wird. Diese Fehler führen zu einer Antwortnachricht in Form von
The <resource> does not exist
, zum Beispiel The policy does not exist
. Für Postman- und cURL-Nutzer ist dieser Fehler mit einem 404
-Statuscode verbunden. Die folgenden Umstände verursachen diesen Fehler häufig:- Die zur Identifizierung der Ressource verwendete ID ist falsch.
- Die Ressource wurde gelöscht.
Fehlerhafte Anfragen
Fehler bei fehlerhaften Anfragen treten auf, wenn die Anfrage nicht dem Format oder
der Syntax entspricht, die Server- und Workload Protection erwartet, oder Sie versuchen, eine Aufgabe auszuführen, die Server- und Workload Protection nicht zulässt. Die Nachricht ist spezifisch für die Umstände, die den Fehler verursacht
haben, die vielfältig sind:
- Ein Objekt, das als Parameter verwendet wird, ist nicht gültig. Zum Beispiel, wenn
beim Erstellen einer Rolle das bereitgestellte
Role
-Objekt diename
-Eigenschaft nicht gesetzt hat, führt dies zur FehlermeldungRole Name cannot be blank
. - (Postman oder cURL) Ein erforderlicher Header fehlt, oder der Headername ist falsch
geschrieben. Zum Beispiel führt ein falsch geschriebener
api-version
-Header zu der FehlermeldungMissing 'api-version' request header. Please set this header with the a value of a supported API version
. - Ein falscher Wert für die API-Version. Beispielsweise führt die Verwendung von
1
als API-Version zu der FehlermeldungInvalid 'api-version' request header. Please make sure this header starts with 'v' followed by a number. E.g. v1
. - Sie versuchen, eine Regel aufzuheben, die eine abhängige Regel hat, was Server- und Workload Protection nicht zulässt. Zum Beispiel führt der Versuch, die Regel zur Eindringungserkennung
mit dem Regelname HTTP-Protokoll-Dekodierung aus einer Richtlinie aufzuheben, zur
Fehlermeldung
Intrusion Prevention Rule 5341 could not be removed because Rule 8401 depends on Rule 5341
.
Für Postman- und cURL-Nutzer ist dieser Fehler mit einem
400
-Statuscode verbunden.Überprüfen Sie die SDK-Kompatibilität
Fehler können auftreten, wenn das von Ihnen verwendete SDK nicht mit Server- und Workload Protection kompatibel ist oder wenn Sie eine neuere Version des SDK verwenden, um Skripte auszuführen,
die mit einer älteren Version des SDK entwickelt wurden. Für weitere Informationen
siehe den Leitfaden SDK-Version-Kompatibilität.