Referenz zu Richtlinienfehlern

Diese Seite gilt für Apigee und Apigee Hybrid.

Apigee Edge-Dokumentation aufrufen

AccessControl-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Diverse Fehlerkorrekturen
accesscontrol.IPDeniedAccess 403 Die Client-IP-Adresse oder eine in der API-Anfrage übergebene IP-Adresse entspricht einer IP-Adresse, die im Element <SourceAddress> des Elements <MatchRule> der Zugriffssteuerungsrichtlinie angegeben ist, und das Attribut action des Elements <MatchRule> ist auf DENY festgelegt.
accesscontrol.InvalidIPAddressInVariable 500 Die Ablaufvariable in <ClientIPVariable> enthält eine ungültige IP-Adresse.

Fehlervariablen

Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Für Richtlinienfehler spezifische Variablen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "IPDeniedAccess"
acl.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. acl.AC-AllowAccess.failed = true

Beispiel für eine Fehlerantwort

{
   "fault":{
     "faultstring":"Access Denied for client ip : 52.211.243.3"
      "detail":{
         "errorcode":"steps.accesscontrol.IPDeniedAccess"
      }
   }
}

Beispiel für eine Fehlerregel

<FaultRule name="IPDeniedAccess">
    <Step>
        <Name>AM-IPDeniedAccess</Name>
        <Condition>(fault.name Matches "IPDeniedAccess") </Condition>
    </Step>
    <Condition>(acl.failed = true) </Condition>
</FaultRule>

AccessEntity-Richtlinie

Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Bereitstellungsfehler

Fehlername Fehlerstring HTTP-Status Tritt auf, wenn Folgendes eintritt
InvalidEntityType Invalid type [entity_type] in ACCESSENTITYStepDefinition [policy_name] Der verwendete Entitätstyp muss einer der unterstützten Typen sein.

AssignMessage-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Diverse Fehlerkorrekturen
steps.assignmessage.SetVariableFailed 500 Die Richtlinie konnte keine Variable festlegen. Sehen Sie sich den Fehlerstring für den Namen der nicht aufgelösten Variable an.
steps.assignmessage.VariableOfNonMsgType 500

Dieser Fehler tritt auf, wenn für das Attribut source im Element <Copy> eine Variable festgelegt ist, die nicht vom Typ message ist.

Nachrichtentypvariablen stellen ganze HTTP-Anfragen und -Antworten dar. Die integrierten Apigee-Ablaufvariablen request, response und message sind vom Typ "Message". Weitere Informationen zu Nachrichtenvariablen finden Sie in der Variablenreferenz.

steps.assignmessage.UnresolvedVariable 500

Dieser Fehler tritt bei einer Variablen auf, die in der Richtlinie „AssignMessage“ angegeben ist, wobei gilt:

  • Wert liegt außerhalb des Bereichs (nicht in dem spezifischen Ablauf verfügbar, in dem die Richtlinie ausgeführt wird)
  • oder
  • kann nicht gelöst werden (ist nicht definiert)

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Diverse Fehlerkorrekturen
InvalidIndex Wenn der in den Elementen <Copy> und/oder <Remove> der AssignMessage-Richtlinie angegebene Index 0 oder eine negative Zahl ist, schlägt die Bereitstellung des API-Proxys fehl.
InvalidVariableName Wenn das untergeordnete Element <Name> leer ist oder nicht im Element <AssignVariable> angegeben ist, schlägt die Bereitstellung des API-Proxys fehl, da kein gültiger Variablenname vorhanden ist, dem ein Wert zugewiesen werden soll. Ein gültiger Variablenname ist erforderlich.
InvalidPayload Eine in der Richtlinie angegebene Nutzlast ist ungültig.

Fehlervariablen

Diese Variablen werden festgelegt, wenn diese Richtlinie zur Laufzeit einen Fehler auslöst. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="FAULT_NAME" FAULT_NAME ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "UnresolvedVariable"
assignmessage.POLICY_NAME.failed POLICY_NAME ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. assignmessage.AM-SetResponse.failed = true

Beispiel für eine Fehlerantwort

{  
   "fault":{  
      "detail":{  
         "errorcode":"steps.assignmessage.VariableOfNonMsgType"
      },
      "faultstring":"AssignMessage[AM-SetResponse]: value of variable is not of type Message"
   }
}

Beispiel für eine Fehlerregel

<FaultRule name="Assign Message Faults">
    <Step>
        <Name>AM-CustomNonMessageTypeErrorResponse</Name>
        <Condition>(fault.name Matches "VariableOfNonMsgType") </Condition>
    </Step>
    <Step>
        <Name>AM-CustomSetVariableErrorResponse</Name>
        <Condition>(fault.name = "SetVariableFailed")</Condition>
    </Step>
    <Condition>(assignmessage.failed = true) </Condition>
</FaultRule>

BasicAuthentication-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Diverse Fehlerkorrekturen
steps.basicauthentication.InvalidBasicAuthenticationSource 500 Bei einer Decodierung, wenn der eingehende Base64-codierte String keinen gültigen Wert enthält oder der Header fehlerhaft ist (beispielsweise beginnt nicht mit Basic).
steps.basicauthentication.UnresolvedVariable 500 Die erforderlichen Quellvariablen für die Decodierung oder Codierung sind nicht vorhanden. Dieser Fehler kann nur auftreten, wenn IgnoreUnresolvedVariables auf "false" gesetzt ist.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Tritt auf, wenn Folgendes eintritt Diverse Fehlerkorrekturen
UserNameRequired Das Element <User> muss für den benannten Vorgang vorhanden sein.
PasswordRequired Das Element <Password> muss für den benannten Vorgang vorhanden sein.
AssignToRequired Das Element <AssignTo> muss für den benannten Vorgang vorhanden sein.
SourceRequired Das Element <Source> muss für den benannten Vorgang vorhanden sein.

Fehlervariablen

Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "UnresolvedVariable"
BasicAuthentication.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. BasicAuthentication.BA-Authenticate.failed = true

Beispiel für eine Fehlerantwort

{  
   "fault":{  
      "detail":{  
         "errorcode":"steps.basicauthentication.UnresolvedVariable"
      },
      "faultstring":"Unresolved variable : request.queryparam.password"
   }
}

Beispiel für eine Fehlerregel

<FaultRule name="Basic Authentication Faults">
    <Step>
        <Name>AM-UnresolvedVariable</Name>
        <Condition>(fault.name Matches "UnresolvedVariable") </Condition>
    </Step>
    <Step>
        <Name>AM-AuthFailedResponse</Name>
        <Condition>(fault.name = "InvalidBasicAuthenticationSource")</Condition>
    </Step>
    <Condition>(BasicAuthentication.BA-Authentication.failed = true) </Condition>
</FaultRule>

DecodeJWS-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Tritt auf, wenn Folgendes eintritt
steps.jws.FailedToDecode 401 Die JWS konnte aufgrund der Richtlinie nicht entschlüsselt werden. Die JWS ist möglicherweise beschädigt.
steps.jws.FailedToResolveVariable 401 Tritt auf, wenn die im Element <Source> der Richtlinie angegebene Flussvariable nicht vorhanden ist.
steps.jws.InvalidClaim 401 Bei fehlendem Anspruch, nicht übereinstimmender Anforderung oder fehlendem oder nicht übereinstimmendem Header.
steps.jws.InvalidJsonFormat 401 Ungültige JSON-Datei im JWS-Header
steps.jws.InvalidJws 401 Dieser Fehler tritt auf, wenn die JWS-Signaturprüfung fehlschlägt.
steps.jws.InvalidPayload 401 Die JWS-Nutzlast ist ungültig.
steps.jws.InvalidSignature 401 <DetachedContent> wird weggelassen und das JWS hat eine separate Inhaltsnutzlast.
steps.jws.MissingPayload 401 Die JWS-Nutzlast fehlt.
steps.jws.NoAlgorithmFoundInHeader 401 Tritt auf, wenn der JWS den Algorithmusheader weglässt.
steps.jws.UnknownException 401 Es ist eine unbekannte Ausnahme aufgetreten.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Tritt auf, wenn Folgendes eintritt
InvalidAlgorithm Die einzigen gültigen Werte sind RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512, HS256, HS384, HS512.

EmptyElementForKeyConfiguration

FailedToResolveVariable

InvalidConfigurationForActionAndAlgorithmFamily

InvalidConfigurationForVerify

InvalidEmptyElement

InvalidFamiliesForAlgorithm

InvalidKeyConfiguration

InvalidNameForAdditionalClaim

InvalidNameForAdditionalHeader

InvalidPublicKeyId

InvalidPublicKeyValue

InvalidSecretInConfig

InvalidTypeForAdditionalClaim

InvalidTypeForAdditionalHeader

InvalidValueForElement

InvalidValueOfArrayAttribute

InvalidVariableNameForSecret

MissingConfigurationElement

MissingElementForKeyConfiguration

MissingNameForAdditionalClaim

MissingNameForAdditionalHeader

Andere mögliche Bereitstellungsfehler.

Fehlervariablen

Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "TokenExpired"
JWS.failed Bei allen JWT-Richtlinien wird im Fall eines Fehlers dieselbe Variable festgelegt. jws.JWS-Policy.failed = true

Beispiel für eine Fehlerantwort

Bei der Fehlerbehandlung besteht die Best Practice darin, den errorcode-Teil der Fehlerantwort zu beachten. Verlassen Sie sich nicht auf den Text in faultstring. Er kann sich ändern.

Beispiel für eine Fehlerregel

<FaultRules>
    <FaultRule name="JWS Policy Errors">
        <Step>
            <Name>JavaScript-1</Name>
            <Condition>(fault.name Matches "TokenExpired")</Condition>
        </Step>
        <Condition>JWS.failed=true</Condition>
    </FaultRule>
</FaultRules>

DecodeJWT-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Beheben
steps.jwt.FailedToDecode 401 Tritt auf, wenn die Richtlinie das JWT nicht decodieren kann. Das JWT ist möglicherweise fehlerhaft oder ungültig oder anderweitig nicht decodierbar.
steps.jwt.FailedToResolveVariable 401 Tritt auf, wenn die im Element <Source> der Richtlinie angegebene Flussvariable nicht vorhanden ist.
steps.jwt.InvalidToken 401 Tritt auf, wenn die im Element <Source> der Richtlinie angegebene Ablaufvariable den Gültigkeitsbereich überschreitet oder nicht aufgelöst werden kann.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Beheben
InvalidEmptyElement Tritt auf, wenn die Ablaufvariable, die das zu decodierende JWT enthält, nicht im Element <Source> der Richtlinie angegeben ist.

Fehlervariablen

Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "InvalidToken"
JWT.failed Bei allen JWT-Richtlinien wird im Fall eines Fehlers dieselbe Variable festgelegt. JWT.failed = true

Beispiel für eine Fehlerantwort

JWT-Richtlinienfehlercodes

Bei der Fehlerbehandlung besteht die Best Practice darin, den errorcode-Teil der Fehlerantwort zu beachten. Verlassen Sie sich nicht auf den Text in faultstring. Er kann sich ändern.

Beispiel für eine Fehlerregel

    <FaultRules>
        <FaultRule name="JWT Policy Errors">
            <Step>
                <Name>JavaScript-1</Name>
                <Condition>(fault.name Matches "InvalidToken")</Condition>
            </Step>
            <Condition>JWT.failed=true</Condition>
        </FaultRule>
    </FaultRules>
    

ExtractVariables-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Beheben
steps.extractvariables.ExecutionFailed 500

Dieser Fehler tritt in folgenden Fällen auf:

  • die Eingabe-Nutzlast (JSON, XML) leer ist.
  • die an die Richtlinie übergebene Eingabe (JSON, XML usw.) ungültig oder fehlerhaft ist.
steps.extractvariables.ImmutableVariable 500 Eine in der Richtlinie verwendete Variable ist unveränderlich. Diese Variable konnte von der Richtlinie nicht festgelegt werden.
steps.extractvariables.InvalidJSONPath 500 Dieser Fehler tritt auf, wenn im JSONPath-Element der Richtlinie ein ungültiger JSON-Pfad verwendet wird. Wenn beispielsweise eine JSON-Nutzlast das Objekt Name nicht enthält, Sie aber Name als Pfad in der Richtlinie angeben, tritt dieser Fehler auf.
steps.extractvariables.JsonPathParsingFailure 500 Dieser Fehler tritt auf, wenn die Richtlinie einen JSON-Pfad nicht parsen und keine Daten aus der im Element Source angegebenen Flussvariable extrahieren kann. Dies geschieht normalerweise, wenn die im Element Source angegebene Flussvariable im aktuellen Ablauf nicht vorhanden ist.
steps.extractvariables.SetVariableFailed 500 Dieser Fehler tritt auf, wenn die Richtlinie den Wert nicht auf eine Variable setzen konnte. Der Fehler tritt in der Regel auf, wenn Sie Werte für mehrere Variablen zuweisen möchten, deren Namen mit den gleichen Begriffen in einem verschachtelten, durch Punkte getrennten Format beginnen.
steps.extractvariables.SourceMessageNotAvailable 500 Dieser Fehler tritt auf, wenn auf die Variable message, die im Element Source der Richtlinie angegeben ist, einer der folgenden Punkte zutrifft:
  • außerhalb des Geltungsbereichs (nicht im spezifischen Ablauf verfügbar, in dem die Richtlinie ausgeführt wird) oder
  • kann nicht gelöst werden (ist nicht definiert)
steps.extractvariables.UnableToCast 500 Dieser Fehler tritt auf, wenn die Richtlinie den extrahierten Wert nicht in eine Variable umwandeln konnte. Dies ist in der Regel der Fall, wenn Sie versuchen, den Wert eines Datentyps auf die Variable eines anderen Datentyps festzulegen.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Beheben
NothingToExtract Wenn die Richtlinie keines der Elemente URIPath, QueryParam, Header, FormParam, XMLPayload oder JSONPayload enthält, schlägt die Bereitstellung des API-Proxys fehl, weil es nichts zu extrahieren gibt.
NONEmptyPrefixMappedToEmptyURI Dieser Fehler tritt auf, wenn im Namespace-Element unter dem XMLPayload-Element ein Präfix definiert ist, aber kein URI.
DuplicatePrefix Dieser Fehler tritt auf, wenn in der im Element Namespace unter dem Element XMLPayload dasselbe Element mehrmals definiert ist.
NoXPathsToEvaluate Wenn die Richtlinie im Element XMLPayload das Element XPath nicht enthält, schlägt die Bereitstellung des API-Proxys mit diesem Fehler fehl.
EmptyXPathExpression Wenn die Richtlinie im Element XMLPayload einen leeren XPath-Ausdruck enthält, schlägt die Bereitstellung des API-Proxys fehl.
NoJSONPathsToEvaluate Wenn die Richtlinie im Element JSONPayload das Element JSONPath nicht enthält, schlägt die Bereitstellung des API-Proxys mit diesem Fehler fehl.
EmptyJSONPathExpression Wenn die Richtlinie im Element XMLPayload einen leeren XPath-Ausdruck enthält, schlägt die Bereitstellung des API-Proxys fehl.
MissingName Wenn die Richtlinie das Attribut name in keinem der Richtlinienelemente wie QueryParam, Header, FormParam oder Variable enthält, wo dies erforderlich ist, dann schlägt die Bereitstellung des API-Proxys fehl.
PatternWithoutVariable Wenn in der Richtlinie im Element Pattern keine Variable angegeben ist, schlägt die Bereitstellung des API-Proxys fehl. Das Element Pattern erfordert den Namen der Variablen, in der extrahierte Daten gespeichert werden.
CannotBeConvertedToNodeset Wenn die Richtlinie einen Ausdruck XPath enthält, bei dem der Typ Variable als nodeset definiert ist, der Ausdruck jedoch nicht in ein Knotengruppe konvertiert werden kann, dann wird die Bereitstellung der API bereitgestellt. Proxy schlägt fehl.
JSONPathCompilationFailed Die Richtlinie konnte keinen angegebenen JSON-Pfad kompilieren.
InstantiationFailed Die Richtlinie konnte nicht instanziiert werden.
XPathCompilationFailed Wenn das Präfix oder der Wert, der im Element XPath verwendet wird, zu keinem der angegebenen Namespaces in der Richtlinie gehört, schlägt die Bereitstellung des API-Proxys fehl.
InvalidPattern Wenn die Definition des Pattern-Elements in einem der Elemente wie URIPath, QueryParam, Header, FormParam, XMLPayload oder JSONPayload in der Richtlinie ungültig ist, dann schlägt die Bereitstellung des API-Proxys fehl.

Fehlervariablen

Diese Variablen werden festgelegt, wenn diese Richtlinie zur Laufzeit einen Fehler auslöst. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name = "SourceMessageNotAvailable"
extractvariables.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. extractvariables.EV-ParseJsonResponse.failed = true

Beispiel für eine Fehlerantwort

{
   "fault":{
      "detail":{
         "errorcode":"steps.extractvariables.SourceMessageNotAvailable"
      },
      "faultstring":"request message is not available for ExtractVariable: EV-ParseJsonResponse"
   }
}

Beispiel für eine Fehlerregel

<FaultRule name="Extract Variable Faults">
    <Step>
        <Name>AM-CustomErrorMessage</Name>
        <Condition>(fault.name = "SourceMessageNotAvailable") </Condition>
    </Step>
    <Condition>(extractvariables.EM-ParseJsonResponse.failed = true) </Condition>
</FaultRule>

GenerateJWS-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Tritt auf, wenn Folgendes eintritt
steps.jws.GenerationFailed 401 Die Richtlinie konnte das JWS nicht generieren.
steps.jws.InsufficientKeyLength 401 Für Schlüssel mit weniger als 32 Byte für den HS256-Algorithmus
steps.jws.InvalidClaim 401 Bei fehlendem Anspruch, nicht übereinstimmender Anforderung oder fehlendem oder nicht übereinstimmendem Header.
steps.jws.InvalidCurve 401 Die vom Schlüssel angegebene Kurve ist für den Elliptic-Curve-Algorithmus ungültig.
steps.jws.InvalidJsonFormat 401 Ungültige JSON-Datei im JWS-Header
steps.jws.InvalidPayload 401 Die JWS-Nutzlast ist ungültig.
steps.jws.InvalidSignature 401 <DetachedContent> wird weggelassen und das JWS hat eine separate Inhaltsnutzlast.
steps.jws.KeyIdMissing 401 Die Verifizierungsrichtlinie verwendet einen JWKS als Quelle für öffentliche Schlüssel, aber das signierte JWS hat kein kid-Attribut im Header.
steps.jws.KeyParsingFailed 401 Der öffentliche Schlüssel konnte anhand der angegebenen Schlüsselinformationen nicht geparst werden.
steps.jws.MissingPayload 401 Die JWS-Nutzlast fehlt.
steps.jws.NoAlgorithmFoundInHeader 401 Tritt auf, wenn der JWS den Algorithmusheader weglässt.
steps.jws.SigningFailed 401 In GenerateJWS, für Schlüssel, die kleiner als die Mindestgröße für den HS384- oder HS512-Algorithmus sind
steps.jws.UnknownException 401 Es ist eine unbekannte Ausnahme aufgetreten.
steps.jws.WrongKeyType 401 Falscher Schlüsseltyp angegeben. Wenn Sie beispielsweise einen RSA-Schlüssel für einen Elliptic Curve-Algorithmus oder einen Kurvenschlüssel für einen RSA-Algorithmus angeben.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Tritt auf, wenn Folgendes eintritt
InvalidAlgorithm Die einzigen gültigen Werte sind RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512, HS256, HS384, HS512.

EmptyElementForKeyConfiguration

FailedToResolveVariable

InvalidConfigurationForActionAndAlgorithmFamily

InvalidConfigurationForVerify

InvalidEmptyElement

InvalidFamiliesForAlgorithm

InvalidKeyConfiguration

InvalidNameForAdditionalClaim

InvalidNameForAdditionalHeader

InvalidPublicKeyId

InvalidPublicKeyValue

InvalidSecretInConfig

InvalidTypeForAdditionalClaim

InvalidTypeForAdditionalHeader

InvalidValueForElement

InvalidValueOfArrayAttribute

InvalidVariableNameForSecret

MissingConfigurationElement

MissingElementForKeyConfiguration

MissingNameForAdditionalClaim

MissingNameForAdditionalHeader

Andere mögliche Bereitstellungsfehler.

Fehlervariablen

Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "TokenExpired"
JWS.failed Bei allen JWT-Richtlinien wird im Fall eines Fehlers dieselbe Variable festgelegt. jws.JWS-Policy.failed = true

Beispiel für eine Fehlerantwort

Bei der Fehlerbehandlung besteht die Best Practice darin, den errorcode-Teil der Fehlerantwort zu beachten. Verlassen Sie sich nicht auf den Text in faultstring. Er kann sich ändern.

Beispiel für eine Fehlerregel

<FaultRules>
    <FaultRule name="JWS Policy Errors">
        <Step>
            <Name>JavaScript-1</Name>
            <Condition>(fault.name Matches "TokenExpired")</Condition>
        </Step>
        <Condition>JWS.failed=true</Condition>
    </FaultRule>
</FaultRules>

GenerateJWT-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Tritt auf, wenn Folgendes eintritt
steps.jwt.AlgorithmInTokenNotPresentInConfiguration 401 Tritt auf, wenn die Prüfungsrichtlinie mehrere Algorithmen nutzt.
steps.jwt.AlgorithmMismatch 401 Der in der Generierungsrichtlinie angegebene Algorithmus stimmte nicht mit dem in der Verifizierungsrichtlinie erwarteten Algorithmus überein. Die angegebenen Algorithmen müssen übereinstimmen.
steps.jwt.EncryptionFailed 401 Das Erstellen eines verschlüsselten JWT ist aus einem nicht spezifischen Grund fehlgeschlagen.
steps.jwt.FailedToDecode 401 Die Richtlinie konnte das JWT nicht decodieren. Das JWT ist möglicherweise beschädigt.
steps.jwt.GenerationFailed 401 Die Richtlinie konnte das JWT nicht generieren.
steps.jwt.InsufficientKeyLength 401 Für einen Schlüssel mit weniger als 32 Byte beim HS256-Algorithmus, weniger als 48 Byte beim HS386 Algorithmus und weniger als 64 Byte beim HS512-Algorithmus.
steps.jwt.InvalidClaim 401 Bei fehlendem Anspruch, nicht übereinstimmender Anforderung oder fehlendem oder nicht übereinstimmendem Header.
steps.jwt.InvalidConfiguration 401 Sowohl das Element <Algorithm> als auch das Element <Algorithms> sind vorhanden.
steps.jwt.InvalidCurve 401 Die vom Schlüssel angegebene Kurve ist für den Elliptic-Curve-Algorithmus ungültig.
steps.jwt.InvalidJsonFormat 401 Ungültiger JSON-Code im Header oder der Nutzlast gefunden.
steps.jwt.InvalidPasswordKey 401 Der angegebene Schlüssel erfüllte nicht die Anforderungen.
steps.jwt.InvalidPrivateKey 401 Der angegebene Schlüssel erfüllte nicht die Anforderungen.
steps.jwt.InvalidPublicKey 401 Der angegebene Schlüssel erfüllte nicht die Anforderungen.
steps.jwt.InvalidSecretKey 401 Der angegebene Schlüssel erfüllte nicht die Anforderungen.
steps.jwt.InvalidToken 401 Dieser Fehler tritt auf, wenn die JWT-Signaturprüfung fehlschlägt.
steps.jwt.JwtAudienceMismatch 401 Der Zielgruppenanspruch ist bei der Tokenprüfung fehlgeschlagen.
steps.jwt.JwtIssuerMismatch 401 Der Ausstelleranspruch ist bei der Tokenprüfung fehlgeschlagen.
steps.jwt.JwtSubjectMismatch 401 Der Betreffanspruch ist bei der Tokenprüfung fehlgeschlagen.
steps.jwt.KeyIdMissing 401 Die Verifizierungsrichtlinie verwendet einen JWKS als Quelle für öffentliche Schlüssel, aber das signierte JWT hat kein kid-Attribut im Header.
steps.jwt.KeyParsingFailed 401 Der öffentliche Schlüssel konnte anhand der angegebenen Schlüsselinformationen nicht geparst werden.
steps.jwt.NoAlgorithmFoundInHeader 401 Tritt auf, wenn das JWT keinen Algorithmus-Header enthält.
steps.jwt.NoMatchingPublicKey 401 Die Verifizierungsrichtlinie verwendet einen JWKS als Quelle für öffentliche Schlüssel, aber kid im signierten JWT ist nicht in JWKS aufgeführt.
steps.jwt.SigningFailed 401 In GenerateJWT, für Schlüssel, die kleiner als die Mindestgröße für den HS384- oder HS512-Algorithmus sind
steps.jwt.TokenExpired 401 Die Richtlinie versucht, ein abgelaufenes Token zu bestätigen.
steps.jwt.TokenNotYetValid 401 Das Token ist noch nicht gültig.
steps.jwt.UnhandledCriticalHeader 401 Ein Header, der von der JWT-Richtlinie im Header crit gefunden wurde, ist nicht in KnownHeaders aufgeführt.
steps.jwt.UnknownException 401 Es ist eine unbekannte Ausnahme aufgetreten.
steps.jwt.WrongKeyType 401 Falscher Schlüsseltyp angegeben. Wenn Sie beispielsweise einen RSA-Schlüssel für einen Elliptic Curve-Algorithmus oder einen Kurvenschlüssel für einen RSA-Algorithmus angeben.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Beheben
InvalidNameForAdditionalClaim Die Bereitstellung schlägt fehl, wenn der im untergeordneten Element <Claim> des Elements <AdditionalClaims> verwendete Anspruch einer der folgenden registrierten Namen ist: kid, iss, sub, aud, iat, exp, nbf oder jti.
InvalidTypeForAdditionalClaim Wenn der verwendete Anspruch im untergeordneten Element <Claim> des Elements <AdditionalClaims> nicht vom Typ string, number, boolean oder map ist, schlägt die Bereitstellung fehl.
MissingNameForAdditionalClaim Wenn der Name der Anforderung nicht im untergeordneten Element <Claim> des Elements <AdditionalClaims> angegeben ist, schlägt die Bereitstellung fehl.
InvalidNameForAdditionalHeader Dieser Fehler tritt auf, wenn der Name des verwendeten Anspruchs im untergeordneten Element <Claim> des Elements <AdditionalClaims> entweder alg oder typ ist.
InvalidTypeForAdditionalHeader Wenn die Art des verwendeten Anspruchs im untergeordneten Element <Claim> des Elements <AdditionalClaims> nicht zum Typ string, number, boolean oder map ist, schlägt die Bereitstellung fehl.
InvalidValueOfArrayAttribute Dieser Fehler tritt auf, wenn der Wert des Arrayattributs im untergeordneten Element <Claim> des Elements <AdditionalClaims> nicht auf true oder false festgelegt ist.
InvalidConfigurationForActionAndAlgorithm Wenn das Element <PrivateKey> mit HS-Family-Algorithmen oder das Element <SecretKey> mit RSA-Family-Algorithmen verwendet wird, schlägt die Bereitstellung fehl.
InvalidValueForElement Wenn der im Element <Algorithm> angegebene Wert kein unterstützter Wert ist, schlägt die Bereitstellung fehl.
MissingConfigurationElement Dieser Fehler tritt auf, wenn das Element <PrivateKey> nicht mit RSA Family-Algorithmen oder das Element <SecretKey> nicht mit HS Family-Algorithmen verwendet wird.
InvalidKeyConfiguration Wenn das untergeordnete Element <Value> nicht in den Elementen <PrivateKey> oder <SecretKey> definiert ist, schlägt die Bereitstellung fehl.
EmptyElementForKeyConfiguration Wenn das "ref"-Attribut des untergeordneten Elements <Value> der Elemente <PrivateKey> oder <SecretKey> leer oder nicht angegeben sind, schlägt die Bereitstellung fehl.
InvalidVariableNameForSecret Dieser Fehler tritt auf, wenn der Ablaufvariablenname, der im Attribut "ref" im untergeordneten Element <Value> der <PrivateKey> oder <SecretKey>-Elemente angegeben ist, nicht das private Präfix ((private.)) enthält.
InvalidSecretInConfig Dieser Fehler tritt auf, wenn das untergeordnete Element <Value> der <PrivateKey>- oder <SecretKey>-Elemente nicht das private Präfix (private.) enthält.
InvalidTimeFormat Wenn der im Element <NotBefore> angegebene Wert kein unterstütztes Format verwendet, schlägt die Bereitstellung fehl.

Fehlervariablen

Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "InvalidToken"
JWT.failed Bei allen JWT-Richtlinien wird im Fall eines Fehlers dieselbe Variable festgelegt. JWT.failed = true

Beispiel für eine Fehlerantwort

JWT-Richtlinienfehlercodes

Bei der Fehlerbehandlung besteht die Best Practice darin, den errorcode-Teil der Fehlerantwort zu beachten. Verlassen Sie sich nicht auf den Text in faultstring. Er kann sich ändern.

Beispiel für eine Fehlerregel

    <FaultRules>
        <FaultRule name="JWT Policy Errors">
            <Step>
                <Name>JavaScript-1</Name>
                <Condition>(fault.name Matches "InvalidToken")</Condition>
            </Step>
            <Condition>JWT.failed=true</Condition>
        </FaultRule>
    </FaultRules>
    

JavaCallout-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Beheben
steps.javacallout.ExecutionError 500 Tritt auf, wenn Java-Code eine Ausnahme auslöst oder null während der Ausführung eines JavaCallout policy zurückgibt.

Bereitstellungsfehler

Diese Fehler können bei der Bereitstellung des Proxy mit der Richtlinie auftreten.

Fehlername Fehlerstring HTTP-Status Tritt auf, wenn Folgendes eintritt
ResourceDoesNotExist Resource with name [name] and type [type] does not exist Die im Element <ResourceURL> angegebene Datei ist nicht vorhanden.
JavaCalloutInstantiationFailed Failed to instantiate the JavaCallout Class [classname] Die im Element <ClassName> angegebene Klassendatei befindet sich nicht in der JAR-Datei.
IncompatibleJavaVersion Failed to load java class [classname] definition due to - [reason] Siehe Fehlerstring. Unterstützte Java-Versionen: Oracle JDK 7/8 und OpenJDK 7/8
JavaClassNotFoundInJavaResource Failed to find the ClassName in java resource [jar_name] - [class_name] Siehe Fehlerstring.
JavaClassDefinitionNotFound Failed to load java class [class_name] definition due to - [reason] Siehe Fehlerstring.
NoAppropriateConstructor No appropriate constructor found in JavaCallout class [class_name] Siehe Fehlerstring.
NoResourceForURL Could not locate a resource with URL [string] Siehe Fehlerstring.

Fehlervariablen

Diese Variablen werden festgelegt, wenn die Richtlinie einen Fehler auslöst. Weitere Informationen finden sich unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "ExecutionError"
javacallout.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. javacallout.JC-GetUserData.failed = true

Beispiel für eine Fehlerantwort

{  
   "fault":{  
      "faultstring":"Failed to execute JavaCallout. [policy_name]",
      "detail":{  
         "errorcode":"javacallout.ExecutionError"
      }
   }
}

Beispiel für eine Fehlerregel

<FaultRule name="JavaCalloutFailed">
    <Step>
        <Name>AM-JavaCalloutError</Name>
    </Step>
    <Condition>(fault.name Matches "ExecutionError") </Condition>
</FaultRule>

JavaScript-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Diverse Fehlerkorrekturen
steps.javascript.ScriptExecutionFailed 500 Die Richtlinie JavaScript kann viele verschiedene Arten von ScriptExecutionFailed-Fehlern verursachen. Häufig auftretende Fehler sind unter anderem:RangeError ,ReferenceError ,SyntaxError ,TypeError und URIError.
steps.javascript.ScriptExecutionFailedLineNumber 500 Im Code JavaScript ist ein Fehler aufgetreten. Weitere Informationen finden Sie im Fehlerstring.
steps.javascript.ScriptSecurityError 500 Beim Ausführen von JavaScript ist ein Sicherheitsfehler aufgetreten. Weitere Informationen finden Sie im Fehlerstring.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Diverse Fehlerkorrekturen
InvalidResourceUrlFormat Wenn das Format der Ressourcen-URL im <ResourceURL>-Element oder im <IncludeURL>-Element der JavaScriptPythonScript-Richtlinie ungültig ist, schlägt die Bereitstellung des API-Proxys fehl.
InvalidResourceUrlReference Wenn <ResourceURL> oder <IncludeURL> auf eine JavaScript-Datei verweist, die nicht vorhanden ist, schlägt die Bereitstellung des API-Proxys fehl. Die referenzierte Quelldatei muss entweder in der API-Proxy, der Umgebung oder auf Organisationsebene vorhanden sein.
WrongResourceType Dieser Fehler tritt während der Bereitstellung auf, wenn die Elemente <ResourceURL> oder <IncludeURL> der Richtlinie JavaScript auf einen anderen Ressourcentyp als jsc (JavaScript-Datei) verweisen.
NoResourceURLOrSource Die Bereitstellung der Richtlinie JavaScript kann mit diesem Fehler fehlschlagen, wenn das Element <ResourceURL> nicht deklariert ist oder die Ressourcen-URL nicht innerhalb dieses Elements definiert ist. <ResourceURL> ist ein erforderliches Element. Oder das Element <IncludeURL> wird deklariert, aber die Ressourcen-URL ist in diesem Element nicht definiert. Das Element <IncludeURL> ist optional, aber wenn es deklariert wird, muss die Ressourcen-URL im Element <IncludeURL> angegeben werden.

Fehlervariablen

Diese Variablen werden festgelegt, wenn diese Richtlinie zur Laufzeit einen Fehler auslöst. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "ScriptExecutionFailed"
javascript.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. javascript.JavaScript-1.failed = true

Beispiel für eine Fehlerantwort

{
  "fault": {
    "faultstring": "Execution of SetResponse failed with error: Javascript runtime error: "ReferenceError: "status" is not defined. (setresponse.js:6)\"",
    "detail": {
      "errorcode": "steps.javascript.ScriptExecutionFailed"
    }
  }
}

Beispiel für eine Fehlerregel

<FaultRule name="JavaScript Policy Faults">
    <Step>
        <Name>AM-CustomErrorResponse</Name>
        <Condition>(fault.name Matches "ScriptExecutionFailed") </Condition>
    </Step>
    <Condition>(javascript.JavaScript-1.failed = true) </Condition>
</FaultRule>

JSONThreatProtection-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Diverse Fehlerkorrekturen
steps.jsonthreatprotection.ExecutionFailed 500 Die Richtlinie JSONThreatProtection kann viele verschiedene Arten von ExecutionFailed-Fehlern verursachen. Die meisten dieser Fehler treten auf, wenn ein bestimmter Schwellenwert in der Richtlinie überschritten wird. Zu diesen Arten von Fehlern gehören:Länge des Objekteintrags ,Anzahl der Objekteinträge ,Anzahl der Arrayelemente ,Containertiefe ,Stringstring-Stringlänge Dieser Fehler tritt auch auf, wenn die Nutzlast ein ungültiges JSON-Objekt enthält.
steps.jsonthreatprotection.SourceUnavailable 500 Dieser Fehler tritt auf, wenn für die im Element <Source> angegebene Variable message eine der folgenden Aussagen gilt:
  • Der Wert liegt außerhalb des Bereichs (ist nicht in dem spezifischen Ablauf verfügbar, in dem die Richtlinie ausgeführt wird)
  • Sie hat keinen der gültigen Werte request, response oder message.
steps.jsonthreatprotection.NonMessageVariable 500 Dieser Fehler tritt auf, wenn das Element <Source> auf eine Variable mit einem anderen Typ als message gesetzt ist.

Bereitstellungsfehler

Fehlervariablen

Diese Variablen werden festgelegt, wenn die Richtlinie einen Fehler auslöst. Weitere Informationen finden sich unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "SourceUnavailable"
jsonattack.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. jsonattack.JTP-SecureRequest.failed = true

Beispiel für eine Fehlerantwort

{
  "fault": {
    "faultstring": "JSONThreatProtection[JPT-SecureRequest]: Execution failed. reason: JSONThreatProtection[JTP-SecureRequest]: Exceeded object entry name length at line 2",
    "detail": {
      "errorcode": "steps.jsonthreatprotection.ExecutionFailed"
    }
  }
}

Beispiel für eine Fehlerregel

<FaultRule name="JSONThreatProtection Policy Faults">
    <Step>
        <Name>AM-CustomErrorResponse</Name>
        <Condition>(fault.name Matches "ExecutionFailed") </Condition>
    </Step>
    <Condition>(jsonattack.JPT-SecureRequest.failed = true) </Condition>
</FaultRule>

Die JSONThreatProtection-Richtlinientypen definieren folgende Fehlercodes:

JSONtoXML-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Behebung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Diverse Fehlerkorrekturen
steps.jsontoxml.ExecutionFailed 500 Die Nutzlast der JSON-Eingabe ist leer oder die an JSON-zu-XML-Richtlinie übergebene JSON-Eingabe ist ungültig oder fehlerhaft.
steps.jsontoxml.InCompatibleTypes 500 Dieser Fehler tritt auf, wenn der Typ der im <Source>-Element definierten Variable und das <OutputVariable>-Element nicht identisch sind. Der Typ der im Element <Source>-Element enthaltenen Variablen muss mit dem Typ der im <OutputVariable>Element enthaltenden Variable übereinstimmen. Gültige Typen sind message und string.
steps.jsontoxml.InvalidSourceType 500 Dieser Fehler tritt auf, wenn der Variablentyp, der zum Definieren des <Source>-Elements verwendet wird, ungültig ist. Die gültigen Variablentypen sind message und string.
steps.jsontoxml.OutputVariableIsNotAvailable 500 Dieser Fehler tritt auf, wenn die im <Source>-Element der JSON-zu-XML-Richtlinie angegebene Variable den Typ "String" hat und das <OutputVariable>-Element nicht definiert ist. Das <OutputVariable>-Element ist obligatorisch, wenn die im <Source>-Element definierte Variable vom Typ "String" ist.
steps.jsontoxml.SourceUnavailable 500 Dieser Fehler tritt auf, wenn für die im <Source>-Element der JSON-zu-XML-Richtlinie angegebene Variable message eine der folgenden Aussagen gilt:
  • Außerhalb des Geltungsbereichs (nicht im spezifischen Ablauf verfügbar, in dem die Richtlinie ausgeführt wird) oder
  • kann nicht gelöst werden (ist nicht definiert)

Bereitstellungsfehler

Fehlervariablen

Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "SourceUnavailable"
jsontoxml.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. jsontoxml.JSON-to-XML-1.failed = true

Beispiel für eine Fehlerantwort

{
  "fault": {
    "faultstring": "JSONToXML[JSON-to-XML-1]: Source xyz is not available",
    "detail": {
      "errorcode": "steps.json2xml.SourceUnavailable"
    }
  }
}

Beispiel für eine Fehlerregel

<FaultRule name="JSON To XML Faults">
    <Step>
        <Name>AM-SourceUnavailableMessage</Name>
        <Condition>(fault.name Matches "SourceUnavailable") </Condition>
    </Step>
    <Step>
        <Name>AM-BadJSON</Name>
        <Condition>(fault.name = "ExecutionFailed")</Condition>
    </Step>
    <Condition>(jsontoxml.JSON-to-XML-1.failed = true) </Condition>
</FaultRule>

KeyValueMapOperations-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Behebung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Diverse Fehlerkorrekturen
steps.keyvaluemapoperations.UnsupportedOperationException 500

Dieser Fehler tritt auf, wenn das mapIdentifier-Attribut auf einen leeren String in derKeyValueMapOperations-Richtlinie festgelegt ist.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Diverse Fehlerkorrekturen
InvalidIndex Wenn das im Element <Get> der KeyValueMapOperations-Richtlinie angegebene Attribut index null oder eine negative Zahl ist, schlägt die Bereitstellung des API-Proxys fehl. Der Index beginnt bei 1, sodass ein Index mit null oder einer negativen Ganzzahl als ungültig angesehen wird.
KeyIsMissing Dieser Fehler tritt auf, wenn das <Key>-Element komplett fehlt oder das <Parameter>-Element im <Key>-Element unterhalb des <Entry> des <InitialEntries>-Elements der KeyValueMapOperations-Richtlinie fehlt.
ValueIsMissing Dieser Fehler tritt auf, wenn das Element <Value> unter dem Element <Entry> des Elements <InitialEntries> der KeyValueMapOperations-Richtlinie fehlt.

MessageLogging-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache
steps.messagelogging.StepDefinitionExecutionFailed 500 Siehe Fehlerstring.
steps.messagelogging.InvalidGoogleCloudLogName 500 Dieser Fehler wird ausgegeben, wenn der LogName nicht das gültige Format von projects/{project}/logs/{logid} ergibt.
steps.messagelogging.InvalidJsonMessage 500 Dieser Fehler tritt auf, wenn der Wert des contentType-Attributs als application/json ausgewählt wurde, der tatsächliche Nachrichtenwert aber kein gültiger JSON-String ist.
steps.messagelogging.TooManyPendingLoggingRequest 500 Dieser Fehler tritt auf, wenn mehr als 2.500 ausstehende Anfragen vorliegen, die noch nicht in Cloud Logging geschrieben wurden. Das Limit von 2.500 gilt für jeden Apigee-Laufzeit-Pod. Wenn der Traffic beispielsweise auf zwei Instanzen von Apigee-Laufzeit-Pods verteilt wird, beträgt das effektive Limit 5.000 Anfragen.
-

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Diverse Fehlerkorrekturen
InvalidProtocol Die Bereitstellung der MessageLogging-Richtlinie kann mit diesem Fehler fehlschlagen, wenn das im <Protocol>-Element angegebene Protokoll nicht gültig ist. Gültige Protokolle sind TCP und UDP. Zum Senden von Syslog-Nachrichten über TLS/SSL wird nur TCP unterstützt.
InvalidPort Die Bereitstellung der MessageLogging-Richtlinie kann mit diesem Fehler fehlschlagen, wenn die Portnummer nicht im <Port>-Element angegeben oder ungültig ist. Die Portnummer muss eine Ganzzahl größer als null sein.

Fehlervariablen

Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "StepDefinitionExecutionFailed"
messagelogging.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. messagelogging.ML-LogMessages.failed = true

Beispiel für eine Fehlerantwort

{  
   "fault":{
      "detail":{
         "errorcode":"steps.messagelogging.StepDefinitionExecutionFailed"
      },
      "faultstring":"Execution failed"
   }
}

Beispiel für eine Fehlerregel

<FaultRule name="MessageLogging">
    <Step>
        <Name>ML-LogMessages</Name>
        <Condition>(fault.name Matches "StepDefinitionExecutionFailed") </Condition>
    </Step>
    <Condition>(messagelogging.ML-LogMessages.failed = true) </Condition>
</FaultRule>

OASValidation-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache
steps.oasvalidation.Failed 400 Der Text der Anfragenachricht kann nicht mit der bereitgestellten OpenAPI-Spezifikation validiert werden.
steps.oasvalidation.Failed 500 Der Text der Antwortnachricht kann nicht mit der bereitgestellten OpenAPI-Spezifikation validiert werden.
steps.oasvalidation.SourceMessageNotAvailable 500

Die im Element <Source> der Richtlinie angegebene Variable liegt entweder außerhalb des Gültigkeitsbereichs oder kann nicht aufgelöst werden.

steps.oasvalidation.NonMessageVariable 500

Für das <Source>-Element ist eine Variable festgelegt, die nicht vom Typ message ist.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache
ResourceDoesNotExist Die im Element <OASResource> referenzierte OpenAPI-Spezifikation ist nicht vorhanden.
ResourceCompileFailed Die in der Bereitstellung enthaltene OpenAPI-Spezifikation enthält Fehler, die verhindern, dass sie kompiliert werden. Dies weist im Allgemeinen darauf hin, dass die Spezifikation keine korrekt formatierte OpenAPI-Spezifikation 3.0 darstellt.
BadResourceURL Die im Element <OASResource> angegebene OpenAPI-Spezifikation kann nicht verarbeitet werden. Dieser Fehler kann auftreten, wenn die Datei keine JSON- oder YAML-Datei ist oder die Datei-URL nicht korrekt angegeben wurde.

Fehlervariablen

Diese Variablen werden festgelegt, wenn diese Richtlinie zur Laufzeit einen Fehler auslöst. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variable Beschreibung Beispiel
fault.category Die Fehlerkategorie. Wenn die Richtlinie einen Antrag ablehnt, gilt dies immer für Step. fault.category = "Step"
fault.name Der Name des Fehlers, wie er in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "ResourceDoesNotExist"
fault.reason Die Ursache des Fehlers. Es ist ein für Menschen lesbarer String, der den Grund für den Fehler erläutert. OASValidation OAS-1 with resource "oas://my-spec1.yaml": failed with reason: "[ERROR - POST operation not allowed on path '/persons/13'.: []]"
fault.subcategory Die Unterkategorie des Fehlers. Wenn die Richtlinie einen Antrag ablehnt, gilt dies immer für OASValidationFailure. fault.subcategory = "OASValidationFailure"
OASValidation.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. OASValidation.myoaspolicy.failed = true

PopulateCache-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Tritt auf, wenn Folgendes eintritt
policies.populatecache.EntryCannotBeCached 500 Ein Eintrag kann nicht im Cache gespeichert werden. Das im Cache gespeicherte Nachrichtenobjekt ist keine Instanz einer serialisierbaren Klasse.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Diverse Fehlerkorrekturen
InvalidCacheResourceReference Dieser Fehler tritt auf, wenn für das Element <CacheResource> in der Richtlinie PopulateCache ein Name angegeben ist, der in der Umgebung, in der der API-Proxy bereitgestellt wird, nicht vorhanden ist.
CacheNotFound Der im Element <CacheResource> angegebene Cache ist nicht vorhanden.

Fehlervariablen

Diese Variablen werden festgelegt, wenn die Richtlinie einen Fehler auslöst. Weitere Informationen finden sich unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name = "EntryCannotBeCached"
populatecache.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. populatecache.POP-CACHE-1.failed = true

Beispiel für eine Fehlerantwort

{
  "fault": {
    "faultstring": "[entry] can not be cached. Only serializable entries are cached.",
    "detail": {
      "errorcode": "steps.populatecache.EntryCannotBeCached"
    }
  }
}

Beispiel für eine Fehlerregel

<FaultRule name="Populate Cache Fault">
    <Step>
        <Name>AM-EntryCannotBeCached</Name>
        <Condition>(fault.name Matches "EntryCannotBeCached") </Condition>
    </Step>
    <Condition>(populatecache.POP-CACHE-1.failed = true) </Condition>
</FaultRule>

LookupCache-Richtlinie

In diesem Abschnitt werden die Fehlermeldungen und Ablaufvariablen beschrieben, die festgelegt werden, wenn diese Richtlinie einen Fehler auslöst. Dieses Informationen sind wichtig, wenn Sie Fehlerregeln für einen Proxy entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Fehlercode-Präfix

Laufzeitfehler

Diese Richtlinie gibt keine Laufzeitfehler aus.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Beheben
InvalidCacheResourceReference Dieser Fehler tritt auf, wenn für das <CacheResource>-Element ein Name festgelegt ist, der in der Umgebung, in der der API-Proxy bereitgestellt wird, nicht vorhanden ist.
InvalidTimeout Wenn das <CacheLookupTimeoutInSeconds>-Element auf eine negative Zahl eingestellt ist, schlägt die Bereitstellung des API-Proxys fehl.
CacheNotFound Dieser Fehler tritt auf, wenn der in der Fehlermeldung erwähnte Cache nicht auf einer bestimmten Message Processor-Komponente erstellt wurde.

Fehlervariablen

Beispiel für eine Fehlerantwort

InvalidateCache-Richtlinie

In diesem Abschnitt werden die Fehlermeldungen und Ablaufvariablen beschrieben, die festgelegt werden, wenn diese Richtlinie einen Fehler auslöst. Dieses Informationen sind wichtig, wenn Sie Fehlerregeln für einen Proxy entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Fehlercode-Präfix

Laufzeitfehler

Diese Richtlinie gibt keine Laufzeitfehler aus.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Beheben
InvalidCacheResourceReference Dieser Fehler tritt auf, wenn für das Element <CacheResource> in der Richtlinie InvalidateCache ein Name angegeben ist, der in der Umgebung, in der der API-Proxy bereitgestellt wird, nicht vorhanden ist.
CacheNotFound Dieser Fehler tritt auf, wenn der in der Fehlermeldung erwähnte Cache nicht auf einer bestimmten Message Processor-Komponente erstellt wurde.

Fehlervariablen

Beispiel für eine Fehlerantwort

ResponseCache-Richtlinie

In diesem Abschnitt werden die Fehlermeldungen und Ablaufvariablen beschrieben, die festgelegt werden, wenn diese Richtlinie einen Fehler auslöst. Dieses Informationen sind wichtig, wenn Sie Fehlerregeln für einen Proxy entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Fehlercode-Präfix

Laufzeitfehler

Diese Richtlinie gibt keine Laufzeitfehler aus.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Beheben
InvalidTimeout Wenn das <CacheLookupTimeoutInSeconds>-Element einer ResponseCache-Richtlinie auf eine negative Zahl gesetzt ist, schlägt die Bereitstellung des API-Proxys fehl.
InvalidCacheResourceReference Dieser Fehler tritt auf, wenn für das Element <CacheResource> in der Richtlinie ResponseCache ein Name angegeben ist, der in der Umgebung, in der der API-Proxy bereitgestellt wird, nicht vorhanden ist.
ResponseCacheStepAttachmentNotAllowedReq Dieser Fehler tritt auf, wenn dieselbe ResponseCache-Richtlinie an mehrere Antwortpfade innerhalb eines Ablaufs eines API-Proxys angehängt wird.
ResponseCacheStepAttachmentNotAllowedResp Dieser Fehler tritt auf, wenn dieselbe ResponseCache-Richtlinie an mehrere Antwortpfade innerhalb eines Ablaufs eines API-Proxys angehängt wird.
InvalidMessagePatternForErrorCode Dieser Fehler tritt auf, wenn das Element <SkipCacheLookup> oder <SkipCachePopulation> in einer ResponseCache-Richtlinie eine ungültige Bedingung enthält.
CacheNotFound Dieser Fehler tritt auf, wenn der in der Fehlermeldung erwähnte Cache nicht auf einer bestimmten Message Processor-Komponente erstellt wurde.

Fehlervariablen

Beispiel für eine Fehlerantwort

OAuthV2-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Wird nach Vorgängen ausgelöst
steps.oauth.v2.access_token_expired 401 Das Zugriffstoken ist abgelaufen.

VerifyAccessToken
InvalidateToken

steps.oauth.v2.access_token_not_approved 401 Das Zugriffstoken wurde widerrufen. VerifyAccessToken
steps.oauth.v2.apiresource_doesnot_exist 401 Die angeforderte Ressource existiert nicht für die mit dem Zugriffstoken verknüpften API-Produkte. VerifyAccessToken
steps.oauth.v2.FailedToResolveAccessToken 500 Die Richtlinie, die in einer im Element <AccessToken> angegebenen Variablen nach einem Zugriffstoken suchen, konnte aber die Variable nicht auflösen. GenerateAccessToken
steps.oauth.v2.FailedToResolveAuthorizationCode 500 Die Richtlinie erwartete einen Autorisierungscode in einer Variablen, die im Element <Code> angegeben ist, die Variable konnte jedoch nicht aufgelöst werden. GenerateAuthorizationCode
steps.oauth.v2.FailedToResolveClientId 500 Die Richtlinie, die die Client-ID in einer im Element <ClientId> angegebenen Variable finden muss, konnte aber nicht aufgelöst werden. GenerateAccessToken
GenerateAuthorizationCode
GenerateAccessTokenImplicitGrant
RefreshAccessToken
steps.oauth.v2.FailedToResolveRefreshToken 500 Die Richtlinie, von der ein Aktualisierungstoken in einer im <RefreshToken>-Element angegebenen Variablen gefunden wird, konnte aber nicht aufgelöst werden. RefreshAccessToken
steps.oauth.v2.FailedToResolveToken 500 Die Richtlinie, von der ein Token in einer im <Tokens>-Element angegebenen Variable erwartet wird, konnte aber nicht aufgelöst werden.

ValidateToken
InvalidateToken

steps.oauth.v2.InsufficientScope 403 Der in der Anfrage enthaltene Zugriffstoken hat einen Bereich, der nicht mit dem in der Richtlinie des Zugriffs-Token angegebenen Bereichs übereinstimmt. Weitere Informationen zum Umfang finden Sie unter Mit OAuth2-Bereichen arbeiten. VerifyAccessToken
steps.oauth.v2.invalid_access_token 401 Das vom Client gesendete Zugriffstoken ist ungültig. VerifyAccessToken
steps.oauth.v2.invalid_client 401

Dieser Fehlername wird zurückgegeben, wenn das Attribut <GenerateResponse> der Richtlinie auf true und die in der Anfrage gesendete Client-ID ungültig ist. Achten Sie darauf, dass Sie die richtigen Clientschlüssel und Secret-Werte für die mit Ihrem Proxy verknüpfte Entwickler-App verwenden. In der Regel werden diese Werte als Base64-codierter Basic Authorization-Header gesendet.

GenerateAccessToken
RefreshAccessToken
steps.oauth.v2.invalid_request 400 Dieser Fehlername wird für verschiedene Arten von Fehlern verwendet, in der Regel für fehlende oder falsche Parameter, die in der Anfrage gesendet werden. Wenn <GenerateResponse> auf false gesetzt ist, verwenden Sie Fehlervariablen (siehe unten), um Details zum Fehler wie den Fehlernamen und die Ursache abzurufen. GenerateAccessToken
GenerateAuthorizationCode
GenerateAccessTokenImplicitGrant
RefreshAccessToken
steps.oauth.v2.InvalidAccessToken 401 Der Autorisierungs-Header enthält nicht das Wort Bearer, welches erforderlich ist. Zum Beispiel: Authorization: Bearer your_access_token VerifyAccessToken
steps.oauth.v2.InvalidAPICallAsNo\
ApiProductMatchFound
401

Der aktuell ausgeführte API-Proxy oder -Vorgang befindet sich nicht in dem Produkt, das mit dem Zugriffstoken verknüpft ist.

Tipps: Das mit dem Zugriffstoken verknüpfte Produkt muss ordnungsgemäß konfiguriert sein. Wenn Sie in Ressourcenpfaden Platzhalter verwenden, achten Sie darauf, dass die Platzhalter richtig verwendet werden. Weitere Informationen finden Sie unter API-Produkte verwalten.

Weitere Informationen zu den Ursachen für diesen Fehler finden Sie unter OAuth 2.0-Zugriffstoken-Bestätigung mit dem Fehler „Invalid API call as no apiproduct match found”.

VerifyAccessToken
steps.oauth.v2.InvalidClientIdentifier 500

Dieser Fehlername wird zurückgegeben, wenn das Attribut <GenerateResponse> der Richtlinie auf false und die in der Anfrage gesendete Client-ID ungültig ist. Achten Sie darauf, dass Sie die richtigen Clientschlüssel und Secret-Werte für die mit Ihrem Proxy verknüpfte Entwickleranwendung verwenden. Normalerweise werden diese Werte als Base64-codierter Basisautorisierungs-Header gesendet.

GenerateAccessToken
RefreshAccessToken

steps.oauth.v2.InvalidParameter 500 Die Richtlinie muss entweder ein Zugriffstoken oder einen Autorisierungscode angeben, jedoch nicht beides. GenerateAuthorizationCode
GenerateAccessTokenImplicitGrant
steps.oauth.v2.InvalidTokenType 500 Für das Element <Tokens>/<Token> müssen Sie den Tokentyp angeben, z. B. refreshtoken. Wenn der Client den falschen Typ übergibt, wird dieser Fehler ausgegeben. ValidateToken
InvalidateToken
steps.oauth.v2.MissingParameter 500 Der Antworttyp lautet token, es sind jedoch keine Angabetypen angegeben. GenerateAuthorizationCode
GenerateAccessTokenImplicitGrant
steps.oauth.v2.UnSupportedGrantType 500

Der Client hat eine Art der Gewährung angegeben, die von der Richtlinie nicht unterstützt wird (nicht im Element <SupportedGrantTypes> aufgeführt).

GenerateAccessToken
GenerateAuthorizationCode
GenerateAccessTokenImplicitGrant
RefreshAccessToken

JWT-Token-spezifische Laufzeitfehler

Laufzeitfehlercodes und Beschreibungen für JWT-Authentifizierungstoken-Abläufe hängen vom OAuth2-Ablaufkontext ab:

Fehlercodes für JWT-Token-Generierung und Aktualisierungsabläufe

Bei OAuth2-Abläufen, die JWT-Tokens generieren oder aktualisieren, entsprechen Fehlerantworten den in RFC6749 angegebenen Fehlerantworten. Weitere Informationen finden Sie in Abschnitt 5.2 Fehlerantwort.

Fehlercodes für Tokenverifizierungsabläufe

Die in der folgenden Tabelle aufgeführten Fehlercodes gelten nur für den VerifyAccessToken-Vorgang.

Fehlercode HTTP-Status Ursache Wird nach Vorgängen ausgelöst
oauth.v2.JWTSigningFailed 401 Die Richtlinie konnte das JWT nicht signieren.

GenerateJWTAccessToken

oauth.v2.InvalidValueForJWTAlgorithm 401 Tritt auf, wenn der Algorithmus im JWT-Zugriffstoken nicht vorhanden ist oder der Wert nicht unterstützt wird.

GenerateJWTAccessToken
VerifyJWTAccessToken

oauth.v2.InsufficientKeyLength 401 Tritt bei der Generierung von JWT auf, wenn ein Schlüssel kleiner als die Mindestgröße für die HS384- oder HS512-Algorithmen ist.

GenerateJWTAccessToken
VerifyJWTAccessToken

oauth.v2.JWTAlgorithmMismatch 401 Der in der Generierungsrichtlinie angegebene Algorithmus stimmte nicht mit dem in der Verifizierungsrichtlinie erwarteten Algorithmus überein. Die angegebenen Algorithmen müssen übereinstimmen.

VerifyJWTAccessToken

oauth.v2.JWTDecodingFailed 401 Die Richtlinie konnte das JWT nicht decodieren. Das JWT ist möglicherweise beschädigt.

VerifyJWTAccessToken

oauth.v2.MissingMandatoryClaimsInJWT 401 Tritt auf, wenn die erforderlichen Anforderungen im JWT-Zugriffstoken nicht vorhanden sind.

VerifyJWTAccessToken

oauth.v2.InvalidJWTSignature 401 Tritt auf, wenn die Signatur des JWT-Zugriffstokens nicht überprüft werden konnte oder wenn die Signatur ungültig ist.

VerifyJWTAccessToken

oauth.v2.InvalidTypeInJWTHeader 401 Tritt auf, wenn der Typ des JWT nicht at+Jwt ist.

VerifyJWTAccessToken

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache
InvalidValueForExpiresIn

Für das <ExpiresIn>-Element sind gültige Werte positive Ganzzahlen und -1.

InvalidValueForRefreshTokenExpiresIn Für das <RefreshTokenExpiresIn>-Element sind gültige Werte positive Ganzzahlen und -1.
InvalidGrantType Im Element <SupportedGrantTypes> ist ein ungültiger Zugriffstyp angegeben. Eine Liste der gültigen Typen finden Sie in der Richtlinienreferenz.
ExpiresInNotApplicableForOperation Die im <Operations>-Element angegebenen Vorgänge müssen ablaufen. Der Vorgang VerifyToken läuft beispielsweise nicht ab.
RefreshTokenExpiresInNotApplicableForOperation Achten Sie darauf, dass die im <Operations>-Element angegebenen Vorgänge das Ablaufdatum des Aktualisierungstokens unterstützen. Der Vorgang "VerifyToken" beispielsweise nicht.
GrantTypesNotApplicableForOperation Achten Sie darauf, dass die in <SupportedGrantTypes> angegebenen Förderungstypen für den angegebenen Vorgang unterstützt werden.
OperationRequired

Sie müssen in dieser Richtlinie einen Vorgang mithilfe des <Operation>-Elements angeben.

InvalidOperation

Mit dem Element <Operation> müssen Sie in dieser Richtlinie einen gültigen Vorgang angeben.

TokenValueRequired Sie müssen einen <Token>-Tokenwert im Element <Tokens> angeben.

Fehler bei der JWT-Token-Bereitstellung

Diese Bereitstellungsfehler sind spezifisch für Richtlinien, die JWT-Tokenvorgänge verwenden.

Fehlername Ursache
InvalidValueForAlgorithm Der im Element <Algorithm> angegebene Algorithmus ist nicht in der Liste der verfügbaren Algorithmen enthalten oder ist nicht vorhanden.
MissingKeyConfiguration Je nach verwendetem Algorithmus fehlen die erforderlichen Elemente <SecretKey>, <PrivateKey> oder <PublicKey>.
EmptyValueElementForKeyConfiguration Das erforderliche untergeordnete Element <Value> ist in den Elementen <PrivateKey>, <PublicKey> oder <SecretKey> nicht definiert.
InvalidKeyConfiguration Das Element <PrivateKey> wird nicht mit übergeordneten RSA-Algorithmen verwendet oder das Element <SecretKey> wird nicht mit übergeordneten HS-Algorithmen verwendet.
EmptyRefAttributeForKeyconfiguration Das Attribut ref des untergeordneten Elements <Value> der Elemente <PrivateKey>, <PublicKey> oder <SecretKey> ist leer.
InvalidVariableNameForKey Der Name der Ablaufvariablen, der im Attribut ref des untergeordneten Elements <Value> der Elemente <PrivateKey>, <PublicKey> oder <SecretKey> angegeben ist, enthält nicht das private-Präfix.

Fehlervariablen

Diese Variablen werden festgelegt, wenn diese Richtlinie zur Laufzeit einen Fehler auslöst.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name = "invalid_request"
oauthV2.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. oauthV2.GenerateAccesstoken.failed = true
oauthV2.policy_name.fault.name policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. oauthV2.GenerateAccesstoken.fault.name = invalid_request
oauthV2.policy_name.fault.cause policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. oauthV2.GenerateAccesstoken.cause = Required param : grant_type

Beispiel für eine Fehlerantwort

Diese Antworten werden an den Client zurückgesendet, wenn das Element <GenerateResponse> den Wert true hat.

Wenn <GenerateResponse> true ist, gibt die Richtlinie Fehler in diesem Format für Vorgänge zurück, die Tokens und Codes generieren. Eine vollständige Liste finden Sie in der Referenz zur OAuth-HTTP-Fehlerantwort.

{"ErrorCode" : "invalid_client", "Error" :"ClientId is Invalid"}

Wenn <GenerateResponse> true ist, gibt die Richtlinie Fehler in diesem Format zur Überprüfung und Überprüfung zurück. Eine vollständige Liste finden Sie in der Referenz zur OAuth-HTTP-Fehlerantwort.

{  
   {  
      "fault":{  
         "faultstring":"Invalid Access Token",
         "detail":{  
            "errorcode":"keymanagement.service.invalid_access_token"
         }
      }
   }

Beispiel für eine Fehlerregel

<FaultRule name="OAuthV2 Faults">
    <Step>
        <Name>AM-InvalidClientResponse</Name>
        <Condition>(fault.name = "invalid_client") OR (fault.name = "InvalidClientIdentifier")</Condition>
    </Step>
    <Step>
        <Name>AM-InvalidTokenResponse</Name>
        <Condition>(fault.name = "invalid_access_token")</Condition>
    </Step>
    <Condition>(oauthV2.failed = true) </Condition>
</FaultRule>

GetOAuthV2Info-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten. Die unten aufgeführten Fehlernamen sind die Strings, die der Variable fault.name zugewiesen sind, wenn ein Fehler auftritt. Weitere Informationen finden Sie unten im Abschnitt "Fehlervariablen".

Fehlercode HTTP-Status Ursache
steps.oauth.v2.access_token_expired 500 Das an die Richtlinie gesendete Zugriffstoken ist abgelaufen.
steps.oauth.v2.authorization_code_expired 500 Der an die Richtlinie gesendete Autorisierungscode ist abgelaufen.
steps.oauth.v2.invalid_access_token 500 Das an die Richtlinie gesendete Zugriffstoken ist ungültig.
steps.oauth.v2.invalid_client-invalid_client_id 500 Die an die Richtlinie gesendete Client-ID ist ungültig.
steps.oauth.v2.invalid_refresh_token 500 Das an die Richtlinie gesendete Aktualisierungstoken ist ungültig.
steps.oauth.v2.invalid_request-authorization_code_invalid 500 Der an die Richtlinie gesendete Autorisierungscode ist ungültig.
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound 401 Informationen zur Fehlerbehebung finden Sie unter Fehler bei der OAuth 2.0-Zugriffstoken-Bestätigung mit dem Fehler „Invalid API call as no apiproduct match found”.
steps.oauth.v2.refresh_token_expired 500 Das an die Richtlinie gesendete Aktualisierungstoken ist abgelaufen.

Bereitstellungsfehler

Informationen zu Bereitstellungsfehlern finden Sie in der Benutzeroberfläche, die in der Benutzeroberfläche angezeigt wird.

Fehlervariablen

Diese Variablen werden festgelegt, wenn diese Richtlinie zur Laufzeit einen Fehler auslöst.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "IPDeniedAccess"
oauthV2.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. oauthV2.GetTokenInfo.failed = true
oauthV2.policy_name.fault.name policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. oauthV2.GetToKenInfo.fault.name = invalid_client-invalid_client_id
oauthV2.policy_name.fault.cause policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. oauthV2.GetTokenInfo.cause = ClientID is Invalid

Beispiel für eine Fehlerantwort

{  
   "fault":{  
      "faultstring":"ClientId is Invalid",
      "detail":{  
         "errorcode":"keymanagement.service.invalid_client-invalid_client_id"
      }
   }
}

Beispiel für eine Fehlerregel

<FaultRule name="OAuthV2 Faults">
    <Step>
        <Name>AM-InvalidClientIdResponse</Name>
    </Step>
    <Condition>(fault.name = "invalid_client-invalid_client_id")</Condition>
</FaultRule>

SetOAuth v2-Informationsrichtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache
steps.oauth.v2.access_token_expired 500 Das an die Richtlinie gesendete Zugriffstoken ist abgelaufen.
steps.oauth.v2.invalid_access_token 500 Das an die Richtlinie gesendete Zugriffstoken ist ungültig.
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound 401 Informationen zur Fehlerbehebung finden Sie unter Fehler bei der OAuth 2.0-Zugriffstoken-Bestätigung mit dem Fehler „Invalid API call as no apiproduct match found”.

Bereitstellungsfehler

Informationen zu Bereitstellungsfehlern finden Sie in der Benutzeroberfläche, die in der Benutzeroberfläche angezeigt wird.

Fehlervariablen

Diese Variablen werden festgelegt, wenn diese Richtlinie zur Laufzeit einen Fehler auslöst.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name = "invalid_access_token"
oauthV2.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. oauthV2.SetTokenInfo.failed = true
oauthV2.policy_name.fault.name policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. oauthV2.SetTokenInfo.fault.name = invalid_access_token
oauthv2.policy_name.fault.cause policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. oauthV2.SetTokenInfo.cause = Invalid Access Token

Beispiel für eine Fehlerantwort

{
  "fault": {
    "faultstring": "Invalid Access Token",
    "detail": {
      "errorcode": "keymanagement.service.invalid_access_token"
    }
  }
}

Beispiel für eine Fehlerregel

<FaultRule name=SetOAuthV2Info Faults">
    <Step>
        <Name>AM-InvalidTokenResponse</Name>
        <Condition>(fault.name = "invalid_access_token")</Condition>
    </Step>
    <Condition>(oauthV2.failed = true) </Condition>
</FaultRule>

DeleteOAuthV2Info-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache
steps.oauth.v2.invalid_access_token 401 Das an die Richtlinie gesendete Zugriffstoken ist ungültig.
steps.oauth.v2.invalid_request-authorization_code_invalid 401 Der an die Richtlinie gesendete Autorisierungscode ist ungültig.
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound 401 Informationen zur Fehlerbehebung finden Sie unter Fehler bei der OAuth 2.0-Zugriffstoken-Bestätigung mit dem Fehler "Invalid API call as no apiproduct match found".

Bereitstellungsfehler

Informationen zu Bereitstellungsfehlern finden Sie in der Benutzeroberfläche, die in der Benutzeroberfläche angezeigt wird.

Fehlervariablen

Diese Variablen werden festgelegt, wenn diese Richtlinie zur Laufzeit einen Fehler auslöst.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name = "invalid_access_token"
oauthV2.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. oauthV2.DeleteTokenInfo.failed = true
oauthV2.policy_name.fault.name policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. oauthV2.DeleteTokenInfo.fault.name = invalid_access_token
oauthv2.policy_name.fault.cause policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. oauthV2.DeleteTokenInfo.cause = Invalid Access Token

Beispiel für eine Fehlerantwort

{
  "fault": {
    "faultstring": "Invalid Access Token",
    "detail": {
      "errorcode": "keymanagement.service.invalid_access_token"
    }
  }
}

Beispiel für eine Fehlerregel

<faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="DeleteOAuthV2Info_Faults">
    <Step>
        <Name>AM-InvalidTokenResponse</Name>
    </Step>
    <Condition>(fault.name = "invalid_access_token")</Condition>
</FaultRule>

PythonScript-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Diverse Fehlerkorrekturen
steps.script.ScriptEvaluationFailed 500 Die PythonScript-Richtlinie kann verschiedene Arten von ScriptExecutionFailed-Fehlern auslösen. Häufig auftretende Fehler sind NameError und ZeroDivisionError.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Diverse Fehlerkorrekturen
InvalidResourceUrlFormat Wenn das Format der Ressourcen-URL im <ResourceURL>-Element oder im <IncludeURL>-Element der PythonScript-Richtlinie ungültig ist, schlägt die Bereitstellung des API-Proxys fehl.
InvalidResourceUrlReference Wenn <ResourceURL> oder <IncludeURL> auf eine PythonScript-Datei verweist, die nicht vorhanden ist, schlägt die Bereitstellung des API-Proxys fehl. Die referenzierte Quelldatei muss entweder in der API-Proxy, der Umgebung oder auf Organisationsebene vorhanden sein.

Fehlervariablen

Diese Variablen werden festgelegt, wenn diese Richtlinie zur Laufzeit einen Fehler auslöst. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "ScriptExecutionFailed"
pythonscript.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. pythonscript.PythonScript-1.failed = true

Beispiel für eine Fehlerantwort

{
  "fault": {
    "faultstring": "Execution of SetResponse failed with error: Pythonscript runtime error: "ReferenceError: "status" is not defined.\"",
    "detail": {
      "errorcode": "steps.script.ScriptExecutionFailed"
    }
  }
}

Beispiel für eine Fehlerregel

<FaultRule name="PythonScript Policy Faults">
    <Step>
        <Name>AM-CustomErrorResponse</Name>
        <Condition>(fault.name Matches "ScriptExecutionFailed") </Condition>
    </Step>
    <Condition>(pythonscript.PythonScript-1.failed = true) </Condition>
</FaultRule>

Kontingentrichtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Diverse Fehlerkorrekturen
policies.ratelimit.FailedToResolveQuotaIntervalReference 500 Tritt auf, wenn das <Interval>-Element nicht in der Quota-Richtlinie definiert ist. Dieses Element ist obligatorisch und wird verwendet, um das Zeitintervall anzugeben, das für das Kontingent gilt. Das Zeitintervall kann Minuten, Stunden, Tage, Wochen oder Monate sein, wie mit dem <TimeUnit>-Element definiert.
policies.ratelimit.FailedToResolveQuotaIntervalTimeUnitReference 500 Tritt auf, wenn das <TimeUnit>-Element nicht in der Quota-Richtlinie definiert ist. Dieses Element ist obligatorisch und wird verwendet, um die Zeiteinheit anzugeben, die für das Kontingent gilt. Das Zeitintervall kann in Minuten, Stunden, Tagen, Wochen oder Monaten angegeben werden.
policies.ratelimit.InvalidMessageWeight 500 Tritt auf, wenn der Wert des <MessageWeight>-Elements, das über eine Ablaufvariable angegeben wird, ungültig ist (ein ganzzahliger Wert).
policies.ratelimit.QuotaViolation 500 Das Kontingentlimit wurde überschritten.

Bereitstellungsfehler

Fehlername Ursache Diverse Fehlerkorrekturen
InvalidQuotaInterval Wenn das im <Interval>-Element angegebene Kontingentintervall keine Ganzzahl ist, schlägt die Bereitstellung des API-Proxys fehl. Wenn das angegebene Kontingentintervall beispielsweise 0,1 im <Interval>-Element lautet, schlägt die Bereitstellung des API-Proxys fehl.
InvalidQuotaTimeUnit Wenn die im <TimeUnit>-Element angegebene Zeiteinheit nicht unterstützt wird, schlägt die Bereitstellung des API-Proxys fehl. Die unterstützten Zeiteinheiten sind minute, hour, day, week und month.
InvalidQuotaType Wenn der Typ des Kontingents, das im <Quota>-Attribut des type-Attribut angegeben ist, ungültig ist, dann schlägt die Bereitstellung des API-Proxys fehl. Unterstützte Kontingenttypen sind default, calendar, flexi und rollingwindow.
InvalidStartTime Wenn das im <StartTime>-Element angegebene Zeitformat ungültig ist, schlägt die Bereitstellung des API-Proxys fehl. Das gültige Format ist yyyy-MM-dd HH:mm:ss, also das Datums- und Uhrzeitformat ISO 8601. Wenn beispielsweise die im <StartTime>-Element angegebene Zeit 7-16-2017 12:00:00 lautet, schlägt die Bereitstellung des API-Proxys fehl.
StartTimeNotSupported Wenn das <StartTime>-Element angegeben ist, dessen Kontingenttyp nicht calendar ist, schlägt die Bereitstellung des API-Proxys fehl. Das <StartTime>-Element wird nur für den calendar-Kontingenttyp unterstützt. Wenn beispielsweise für das type-Attribut im <Quota>-Element der Wert flexi oder rolling window festgelegt ist, schlägt die Bereitstellung des API-Proxys fehl.
InvalidTimeUnitForDistributedQuota Ist das <Distributed>-Element auf true und das <TimeUnit>-Element auf second gesetzt, so schlägt die Bereitstellung des API-Proxys fehl. Die Zeiteinheit second ist für verteilte Kontingente unzulässig.
InvalidSynchronizeIntervalForAsyncConfiguration Ist der für das <SyncIntervalInSeconds>-Element im <AsynchronousConfiguration>-Element in einer Quota-Richtlinie angegebene Wert kleiner als null, so schlägt die Bereitstellung des API-Proxys fehl.
InvalidAsynchronizeConfigurationForSynchronousQuota Wenn der Wert des <AsynchronousConfiguration>-Elements in einer Quota-Richtlinie auf true gesetzt wird, aber auch eine asynchrone Konfiguration mithilfe des <AsynchronousConfiguration>-Elements vorliegt, dann wird die Bereitstellung des API-Proxy schlägt fehl.

Fehlervariablen

Diese Variablen werden festgelegt, wenn die Richtlinie einen Fehler auslöst. Weitere Informationen finden sich unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "QuotaViolation"
ratelimit.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. ratelimit.QT-QuotaPolicy.failed = true

Beispiel für eine Fehlerantwort

{  
   "fault":{  
      "detail":{  
         "errorcode":"policies.ratelimit.QuotaViolation"
      },
      "faultstring":"Rate limit quota violation. Quota limit  exceeded. Identifier : _default"
   }
}

Beispiel für eine Fehlerregel

<FaultRules>
    <FaultRule name="Quota Errors">
        <Step>
            <Name>JavaScript-1</Name>
            <Condition>(fault.name Matches "QuotaViolation") </Condition>
        </Step>
        <Condition>ratelimit.Quota-1.failed=true</Condition>
    </FaultRule>
</FaultRules>

ResetQuota-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Beheben
policies.resetquota.InvalidRLPolicy 500 Die im Element <Quota> der Richtlinie ResetQuota angegebene Richtlinie Quota ist nicht im API-Proxy definiert und daher während des Ablaufs nicht verfügbar. Das Element <Quota> ist obligatorisch und identifiziert die Zielrichtlinie Quota, deren Zähler anhand der Richtlinie ResetQuota aktualisiert werden soll.
policies.resetquota.FailedToResolveAllowCountRef Der Verweis auf die Variable mit der zulässigen Anzahl im Element <Allow> der Richtlinie kann nicht in einen Wert aufgelöst werden. Dieses Element ist obligatorisch und gibt den Betrag zur Verringerung des Kontingentzählers an.
policies.resetquota.FailedToResolveRLPolicy 500 Die Variable, auf die im Attribut ref im Element <Quota> verwiesen wird, kann nicht aufgelöst werden.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Beheben
InvalidCount Wenn der im Element <Allow> der ResetQuota-Richtlinie angegebene Zählwert keine Ganzzahl ist, schlägt die Bereitstellung des API-Proxys fehl.

RaiseFaultpolicy

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache
steps.raisefault.RaiseFault 500 Siehe Fehlerstring.

Bereitstellungsfehler

Fehlervariablen

Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name = "RaiseFault"
raisefault.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. raisefault.RF-ThrowError.failed = true

Beispiel für eine Fehlerantwort

{
   "fault":{
      "detail":{
         "errorcode":"steps.raisefault.RaiseFault"
      },
      "faultstring":"Raising fault. Fault name: [name]"
   }
}

RegularExpressionProtection-Richtlinie

In diesem Abschnitt werden die Fehlercodes und Fehlermeldungen sowie die von Apigee festgelegten Fehlervariablen beschrieben, die zurückgegeben werden, wenn diese Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Wenn Sie einen Fehler erfassen und einen eigenen benutzerdefinierten Fehler erzeugen möchten, legen Sie das Attribut continueOnError="true" für das Richtlinien-Stammelement fest. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode Nachricht
ExecutionFailed Failed to execute the RegularExpressionProtection StepDefinition {0}. Reason: {1}
InstantiationFailed Failed to instantiate the RegularExpressionProtection StepDefinition {0}
NonMessageVariable Variable {0} does not resolve to a Message
SourceMessageNotAvailable {0} message is not available for RegularExpressionProtection StepDefinition {1}
ThreatDetected Regular Expression Threat Detected in {0}: regex: {1} input: {2}
VariableResolutionFailed Failed to resolve variable {0}

Bereitstellungsfehler

Fehlercode Nachricht Beheben
CannotBeConvertedToNodeset RegularExpressionProtection {0}: Result of xpath {1} cannot be converted to nodeset. Context {2}
DuplicatePrefix RegularExpressionProtection {0}: Duplicate prefix {1}
EmptyJSONPathExpression RegularExpressionProtection {0}: Empty JSONPath expression
EmptyXPathExpression RegularExpressionProtection {0}: Empty XPath expression
InvalidRegularExpression RegularExpressionProtection {0}: Invalid Regular Expression {1}, Context {2}
JSONPathCompilationFailed RegularExpressionProtection {0}: Failed to compile jsonpath {1}. Context {2}
NONEmptyPrefixMappedToEmptyURI RegularExpressionProtection {0}: Non-empty prefix {1} cannot be mapped to empty uri
NoPatternsToEnforce RegularExpressionProtection {0}: No patterns to enforce in {1}
NothingToEnforce RegularExpressionProtection {0}: at least one of URIPath, QueryParam, Header, FormParam, XMLPayload, JSONPayload is mandatory
XPathCompilationFailed RegularExpressionProtection {0}: Failed to compile xpath {1}. Context {2}

Fehlervariablen

Diese Variablen werden festgelegt, wenn die Richtlinie einen Fehler auslöst. Weitere Informationen finden sich unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers, der in der Tabelle oben aufgeführt ist. fault.name Matches "ThreatDetected"
regularexpressionprotection.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. regularexpressionprotection.Regular-Expressions-Protection-1.failed = true

SAMLAssertion-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Bereitstellungsfehler

Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

Fehlername Ursache Diverse Fehlerkorrekturen
SourceNotConfigured Mindestens eines der folgenden Elemente der Richtlinie ValidateSAMLAssertion ist nicht definiert oder leer: <Source>, <XPath>, <Namespaces>, <Namespace>.
TrustStoreNotConfigured Wenn das Element <TrustStore> leer oder nicht in der ValidateSAMLAssertion-Richtlinie angegeben ist, schlägt die Bereitstellung des API-Proxys fehl. Ein gültiger Trust Store ist erforderlich.
NullKeyStoreAlias Wenn das untergeordnete Element <Alias> leer oder im Element <Keystore> der GenerateSAMLAssertion-Richtlinie nicht angegeben ist, schlägt die Bereitstellung des API-Proxys fehl. Ein gültiger Keystore-Alias ist erforderlich.
NullKeyStore Wenn das untergeordnete Element <Name> leer oder im Element <Keystore> der GenerateSAMLAssertion-Richtlinie nicht angegeben ist, schlägt die Bereitstellung des API-Proxys fehl. Ein gültiger Keystore-Name ist erforderlich.
NullIssuer Wenn das Element <Issuer> leer oder nicht in der GenerateSAMLAssertion-Richtlinie angegeben ist, schlägt die Bereitstellung des API-Proxys fehl. Geben Sie einen gültigen <Issuer>-Wert ein.

Fehlervariablen

Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

Variablen Wo Beispiel
fault.name="fault_name" fault_name ist der Name des Fehlers. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name = "InvalidMediaTpe"
GenerateSAMLAssertion.failed Bei einer validierten SAML-Assertion-Richtlinienkonfiguration lautet das Fehlerpräfix ValidateSAMLAssertion. GenerateSAMLAssertion.failed = true

Beispiel für eine Fehlerantwort

{
  "fault": {
    "faultstring": "GenerateSAMLAssertion[GenSAMLAssert]: Invalid media type",
    "detail": {
      "errorcode": "steps.saml.generate.InvalidMediaTpe"
    }
  }
}

Beispiel für eine Fehlerregel

<FaultRules>
    <FaultRule name="invalid_saml_rule">
        <Step>
            <Name>invalid-saml</Name>
        </Step>
        <Condition>(GenerateSAMLAssertion.failed = "true")</Condition>
    </FaultRule>
</FaultRules>

ServiceCallout-Richtlinie

In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

Laufzeitfehler

Diese Fehler können bei Ausführung der Richtlinie auftreten.

Fehlercode HTTP-Status Ursache Beheben
steps.servicecallout.ExecutionFailed 500

Dieser Fehler kann in folgenden Fällen auftreten:

  • Die Richtlinie wird aufgefordert, fehlerhafte oder anderweitig eingegebene Eingaben zu verarbeiten.
  • Der Back-End-Zieldienst gibt einen Fehlerstatus zurück (standardmäßig, 4xx oder 5xx).
steps.servicecallout.RequestVariableNotMessageType 500 Die in der Richtlinie angegebene Variable Request gehört nicht zum Typ Message. Wenn es sich beispielsweise um einen String oder einen anderen Nachrichtentyp handelt, wird kein Fehler angezeigt.
steps.servicecallout.RequestVariableNotRequestMessageType 500 Die in der Richtlinie angegebene Variable Request gehört nicht zum Typ RequestMessage. Wenn es sich beispielsweise um einen Antworttyp handelt, wird dieser Fehler angezeigt.
googletoken.EmptyIDTokenAudience 500

<GoogleIDToken> ist aktiviert, aber useTargetUrl ist auf „false“ gesetzt, und <Audience> wird zum Zeitpunkt des Fehlers weder direkt noch über einen Verweis ein Wert zugewiesen.

messaging.adaptors.http.filter.GoogleTokenGenerationFailure 500 Dieser Fehler kann auftreten, wenn der API-Proxy mit dem Element <Authentication> konfiguriert wurde. Hier einige Gründe dafür:
  • Das mit dem Proxy bereitgestellte Dienstkonto:
    • existiert nicht in Ihrem Projekt
    • wurde deaktiviert
    • (Nur Apigee Hybrid) hat dem Dienstkonto apigee-runtime die Rolle roles/iam.serviceAccountTokenCreator nicht gewährt.
  • Die IAMCredentials API ist im Quellprojekt des Dienstkontos apigee-runtime deaktiviert.
  • Das Element <GoogleAccessToken> wird verwendet und es werden ein oder mehrere ungültige Bereiche angegeben. Suchen Sie zum Beispiel nach Tippfehlern oder leeren Bereichen.
  • Nur für Apigee Hybrid, überprüfen Sie das Log des Laufzeitcontainers und suchen Sie nach GoogleTokenGenerationFailure, um detailliertere Fehlermeldungen zu finden, die bei der Fehlersuche helfen können.

    Bereitstellungsfehler

    Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

    Fehlername Ursache Beheben
    URLMissing Das <URL>-Element in <HTTPTargetConnection> fehlt oder ist leer.
    ConnectionInfoMissing Dieser Fehler tritt auf, wenn die Richtlinie kein <HTTPTargetConnection>- oder <LocalTargetConnection>-Element enthält.
    InvalidTimeoutValue Dieser Fehler tritt auf, wenn der Wert von <Timeout> negativ oder null ist.
    FAILED_PRECONDITION Dieser Fehler tritt auf, wenn das Dienstkonto fehlt, wenn der Proxy mit dem Tag <Authentication> konfiguriert ist.

    Beispiel:

    Deployment of \"organizations/foo/apis/apiproxy/revisions/1\" requires a service
              account identity, but one was not provided with the request.
    PERMISSION_DENIED Dieser Fehler tritt auf, wenn ein Berechtigungsproblem mit dem Dienstkonto besteht und der Proxy mit dem Tag <Authentication> konfiguriert ist. Mögliche Ursachen:
    • Das Dienstkonto ist nicht vorhanden.
    • Das Dienstkonto wurde nicht im selben Google Cloud-Projekt wie die Apigee-Organisation erstellt.
    • Der Bereitsteller hat die Berechtigung iam.serviceAccounts.actAs für das Dienstkonto. Weitere Informationen finden Sie im Hilfeartikel Dienstkontoberechtigungen.

    Fehlervariablen

    Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

    Variablen Wo Beispiel
    fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name = "RequestVariableNotMessageType"
    servicecallout.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. servicecallout.SC-GetUserData.failed = true

    Beispiel für eine Fehlerantwort

    {
       "fault":{
          "detail":{
             "errorcode":"steps.servicecallout.RequestVariableNotMessageType"
          },
          "faultstring":"ServiceCallout[ServiceCalloutGetMockResponse]:
                request variable data_str value is not of type Message"
       }
    }

    Beispiel für eine Fehlerregel

    <FaultRule name="RequestVariableNotMessageType">
        <Step>
            <Name>AM-RequestVariableNotMessageType</Name>
        </Step>
        <Condition>(fault.name = "RequestVariableNotMessageType")</Condition>
    </FaultRule>

    SOAPMessageValidation-Richtlinie

    In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

    Laufzeitfehler

    Diese Fehler können bei Ausführung der Richtlinie auftreten.

    Fehlercode HTTP-Status Ursache Beheben
    steps.messagevalidation.SourceMessageNotAvailable 500

    Dieser Fehler tritt bei einer Variablen auf, die im Element <Source> der Richtlinie angegeben ist:

    • Der Wert liegt außerhalb des Bereichs (ist nicht in dem spezifischen Ablauf verfügbar, in dem die Richtlinie ausgeführt wird)
    • oder
    • Der Wert nicht aufgelöst werden kann (nicht definiert ist)
    steps.messagevalidation.NonMessageVariable 500

    Dieser Fehler tritt auf, wenn für das Element <Source> in der SOAPMessageValidation-Richtlinie eine Variable festgelegt ist, die nicht vom Typ message ist.

    Nachrichtentypvariablen stellen ganze HTTP-Anfragen und -Antworten dar. Die integrierten Apigee-Ablaufvariablen request, response und message sind vom Typ "Message". Weitere Informationen zu Nachrichtenvariablen finden Sie in der Variablenreferenz.

    steps.messagevalidation.Failed 500 Dieser Fehler tritt auf, wenn die SOAPMessageValidation-Richtlinie die Eingabe-Nachrichten-Nutzlast nicht gegen das XSD-Schema oder die WSDL-Definition validiert. Sie wird auch angezeigt, wenn die Nutzlastnachricht fehlerhaft formatierte JSON- oder XML-Daten enthält.

    Bereitstellungsfehler

    Diese Fehler können auftreten, wenn Sie einen Proxy bereitstellen, der diese Richtlinie enthält.

    Fehlername Ursache Korrigieren
    InvalidResourceType Das Element <ResourceURL> in der SOAPMessageValidation-Richtlinie ist auf einen Ressourcentyp festgelegt, der von der Richtlinie nicht unterstützt wird.
    ResourceCompileFailed Das Ressourcenskript, auf das im <ResourceURL>-Element der SOAPMessageValidation-Richtlinie verwiesen wird, enthält einen Fehler, der die Kompilierung verhindert.
    RootElementNameUnspecified Das Element <Element> in der SOAPMessageValidation-Richtlinie enthält nicht den Namen des Stammelements.
    InvalidRootElementName Das Element <Element> in der SOAPMessageValidation-Richtlinie enthält einen Stammelementnamen, der nicht den XML-Regeln für gültige Elementnamen entspricht.

    SpikeArrest-Richtlinie

    In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

    Laufzeitfehler

    Diese Fehler können bei Ausführung der Richtlinie auftreten.

    Fehlercode HTTP-Status Ursache Diverse Fehlerkorrekturen
    policies.ratelimit.FailedToResolveSpikeArrestRate 500 Dieser Fehler tritt auf, wenn der Verweis auf die Variable mit der Rateneinstellung im Element <Rate> nicht zu einem Wert in der SpikeArrest-Richtlinie aufgelöst werden kann. Dieses Element ist obligatorisch und wird verwendet, um die Arrestrate im Format intpm oder intps anzugeben.
    policies.ratelimit.InvalidMessageWeight 500 Dieser Fehler tritt auf, wenn der für das Element <MessageWeight> angegebene Wert über eine Ablaufvariable ungültig ist (ein nicht ganzzahliger Wert).
    policies.ratelimit.SpikeArrestViolation 429 Das Ratenlimit wurde überschritten.

    Bereitstellungsfehler

    Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

    Fehlername Ursache Diverse Fehlerkorrekturen
    InvalidAllowedRate Wenn die Spike Arrest-Rate im <Rate>-Element der SpikeArrest-Richtlinie keine Ganzzahl ist oder die Rate weder ps noch pm enthält nicht als Suffix zurückgegeben, schlägt die Bereitstellung des API-Proxys fehl.

    Fehlervariablen

    Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

    Variablen Wo Beispiel
    fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "SpikeArrestViolation"
    ratelimit.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. ratelimit.SA-SpikeArrestPolicy.failed = true

    Beispiel für eine Fehlerantwort

    Im Folgenden sehen Sie ein Beispiel für eine Fehlerantwort:

    {  
       "fault":{  
          "detail":{  
             "errorcode":"policies.ratelimit.SpikeArrestViolation"
          },
          "faultstring":"Spike arrest violation. Allowed rate : 10ps"
       }
    }

    Beispiel für eine Fehlerregel

    Unten sehen Sie ein Beispiel für eine Fehlerregel zum Verarbeiten eines SpikeArrestViolation-Fehlers:

    <FaultRules>
        <FaultRule name="Spike Arrest Errors">
            <Step>
                <Name>JavaScript-1</Name>
                <Condition>(fault.name Matches "SpikeArrestViolation") </Condition>
            </Step>
            <Condition>ratelimit.Spike-Arrest-1.failed=true</Condition>
        </FaultRule>
    </FaultRules>

    VerifyAPIKey-Richtlinie

    In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

    Laufzeitfehler

    Diese Fehler können bei Ausführung der Richtlinie auftreten.

    Fehlercode HTTP-Status Ursache
    keymanagement.service.consumer_key_missing_api_product_association 400

    Für die Anmeldedaten der Anwendung fehlt eine API-Produktverknüpfung. Verknüpfen Sie die Anwendung des Schlüssels mit einem API-Produkt. Hinweis: Dies gilt für alle Anwendungstypen, z. B. Entwickler- und AppGroup-Apps.

    keymanagement.service.DeveloperStatusNotActive 401

    Der Entwickler, der die den verwendeten API-Schlüssel besitzende Entwickler-App erstellt hat, hat den Status "Inaktiv". Wird der Status eines App-Entwicklers auf "Inaktiv" gesetzt, werden alle von diesem Entwickler erstellten Entwickler-Apps deaktiviert. Ein Administrator mit entsprechenden Berechtigungen (z. B. ein Organisationsadministrator) kann den Status eines Entwicklers auf folgende Weise ändern:

    keymanagement.service.invalid_client-app_not_approved 401 Die mit dem API-Schlüssel verknüpfte Entwickler-App wird widerrufen. Eine aufgehobene Anwendung kann nicht auf API-Produkte zugreifen und keine von Apigee verwaltete API aufrufen. Ein Organisationsadministrator kann den Status einer Entwickleranwendung mithilfe der Apigee API ändern. Weitere Informationen finden Sie unter Schlüsselpaar generieren oder Entwickleranwendung aktualisieren.
    oauth.v2.FailedToResolveAPIKey 401 Die Richtlinie erwartet, den API-Schlüssel in einer im <APIKey>-Element der Richtlinie angegebenen Variablen zu finden. Dieser Fehler tritt auf, wenn die erwartete Variable nicht existiert (die Aufgabe kann nicht aufgelöst werden).
    oauth.v2.InvalidApiKey 401 Ein API-Schlüssel wurde von Apigee empfangen, ist aber ungültig. Wenn Apigee den Schlüssel in seiner Datenbank sucht, muss er exakt mit dem übereinstimmen, der in der Anfrage gesendet wurde. Wenn die API funktioniert hat, sorgen Sie dafür, dass der Schlüssel nicht neu generiert wurde. Wenn der Schlüssel neu generiert wurde, wird diese Fehlermeldung angezeigt, wenn Sie versuchen, den alten Schlüssel zu verwenden. Weitere Informationen finden Sie unter Zugriff auf APIs durch Registrierung von Anwendungen steuern.
    oauth.v2.InvalidApiKeyForGivenResource 401 Ein API-Schlüssel wurde von Apigee empfangen und ist gültig; er stimmt jedoch mit keinem genehmigten Schlüssel in der Entwickler-App überein, die über ein Produkt mit Ihrem API-Proxy verknüpft ist.

    Bereitstellungsfehler

    Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

    Fehlername Ursache
    SpecifyValueOrRefApiKey Für das Element <APIKey> wurde kein Wert oder Schlüssel angegeben.

    Fehlervariablen

    Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

    Variablen Wo Beispiel
    fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "FailedToResolveAPIKey"
    oauthV2.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. oauthV2.VK-VerifyAPIKey.failed = true

    Beispiele für Fehlerantworten

    {  
       "fault":{  
          "faultstring":"Invalid ApiKey",
          "detail":{  
             "errorcode":"oauth.v2.InvalidApiKey"
          }
       }
    }
    {  
       "fault":{  
          "detail":{  
             "errorcode":"keymanagement.service.DeveloperStatusNotActive"
          },
          "faultstring":"Developer Status is not Active"
       }
    }

    Beispiel für eine Fehlerregel

    <FaultRule name="FailedToResolveAPIKey">
        <Step>
            <Name>AM-FailedToResolveAPIKey</Name>
        </Step>
        <Condition>(fault.name Matches "FailedToResolveAPIKey") </Condition>
    </FaultRule>

    VerifyIAM-Richtlinie

    In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Behebung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

    Laufzeitfehler

    Diese Fehler können bei Ausführung der Richtlinie auftreten.

    Fehlercode HTTP-Status Ursache
    steps.verifyiam.CredentialSourceRefUnresolved 400 Die in der Anmeldedatenquelle angegebene Ablaufvariable konnte nicht aufgelöst werden.
    steps.verifyiam.CredentialValueNotProvided 400 Anmeldedaten nicht gefunden. Wenn die Referenz auf die Anmeldedatenquelle nicht angegeben ist, wird der Standardspeicherort wie der Autorisierungsheader verwendet.
    steps.verifyiam.Forbidden 403 Die Anfrage konnte aufgrund unzureichender Berechtigungen, fehlender Zugriffsbereiche oder anderer damit zusammenhängender Probleme nicht weitergeleitet werden.
    steps.verifyiam.MiscellaneousAuthorizationConfigurationError 500 Ein Problem mit der Authentifizierungsanfrage an IAM. Der API-Ersteller muss diesen Fehler anhand der Details in der Fehlerantwort beheben.
    steps.verifyiam.Unauthorized 401 Problem mit den Anmeldedaten, z. B. ungültiger oder abgelaufener Wert
    steps.verifyiam.UnexpectedAuthorizationInfrastructureError 500 Interner Fehler.

    Bereitstellungsfehler

    Diese Richtlinie gibt keine richtlinienspezifischen Bereitstellungsfehler zurück.

    Fehlervariablen

    Diese Variablen werden festgelegt, wenn diese Richtlinie zur Laufzeit einen Fehler auslöst.

    Variablen Wo Beispiel
    fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name="Unauthorized"
    verifyiam.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. verifyiam.Verify-IAMToken.failed = true

    VerifyJWS-Richtlinie

    In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

    Laufzeitfehler

    Diese Fehler können bei Ausführung der Richtlinie auftreten.

    Fehlercode HTTP-Status Tritt auf, wenn Folgendes eintritt
    steps.jws.AlgorithmInTokenNotPresentInConfiguration 401 Tritt auf, wenn die Prüfungsrichtlinie mehrere Algorithmen nutzt.
    steps.jws.AlgorithmMismatch 401 Der im Header durch die Richtlinie Generate angegebene Algorithmus stimmte nicht mit dem in der Richtlinie Verify erwarteten überein. Die angegebenen Algorithmen müssen übereinstimmen.
    steps.jws.ContentIsNotDetached 401 <DetachedContent> wird angegeben, wenn das JWS keine getrennte Inhaltsnutzlast enthält.
    steps.jws.FailedToDecode 401 Die JWS konnte aufgrund der Richtlinie nicht entschlüsselt werden. Die JWS ist möglicherweise beschädigt.
    steps.jws.InsufficientKeyLength 401 Für Schlüssel mit weniger als 32 Byte für den HS256-Algorithmus
    steps.jws.InvalidClaim 401 Bei fehlendem Anspruch, nicht übereinstimmender Anforderung oder fehlendem oder nicht übereinstimmendem Header.
    steps.jws.InvalidCurve 401 Die vom Schlüssel angegebene Kurve ist für den Elliptic-Curve-Algorithmus ungültig.
    steps.jws.InvalidJsonFormat 401 Ungültige JSON-Datei im JWS-Header
    steps.jws.InvalidJws 401 Dieser Fehler tritt auf, wenn die JWS-Signaturprüfung fehlschlägt.
    steps.jws.InvalidPayload 401 Die JWS-Nutzlast ist ungültig.
    steps.jws.InvalidSignature 401 <DetachedContent> wird weggelassen und das JWS hat eine separate Inhaltsnutzlast.
    steps.jws.KeyIdMissing 401 Die Verify-Richtlinie verwendet einen JWKS als Quelle für öffentliche Schlüssel, aber das signierte JWS hat kein kid-Attribut im Header.
    steps.jws.KeyParsingFailed 401 Der öffentliche Schlüssel konnte anhand der angegebenen Schlüsselinformationen nicht geparst werden.
    steps.jws.MissingPayload 401 Die JWS-Nutzlast fehlt.
    steps.jws.NoAlgorithmFoundInHeader 401 Tritt auf, wenn der JWS den Algorithmusheader weglässt.
    steps.jws.NoMatchingPublicKey 401 Die Verify-Richtlinie verwendet einen JWKS als Quelle für öffentliche Schlüssel, aber der kid im signierten JWS ist nicht in JWKS aufgeführt.
    steps.jws.UnhandledCriticalHeader 401 Ein Header, der von der JWS-Richtlinie im Header crit gefunden wurde, ist nicht in KnownHeaders aufgeführt.
    steps.jws.UnknownException 401 Es ist eine unbekannte Ausnahme aufgetreten.
    steps.jws.WrongKeyType 401 Falscher Schlüsseltyp angegeben. Wenn Sie beispielsweise einen RSA-Schlüssel für einen Elliptic Curve-Algorithmus oder einen Kurvenschlüssel für einen RSA-Algorithmus angeben.

    Bereitstellungsfehler

    Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

    Fehlername Tritt auf, wenn Folgendes eintritt
    InvalidAlgorithm Die einzigen gültigen Werte sind RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512, HS256, HS384, HS512.

    EmptyElementForKeyConfiguration

    FailedToResolveVariable

    InvalidConfigurationForActionAndAlgorithmFamily

    InvalidConfigurationForVerify

    InvalidEmptyElement

    InvalidFamiliesForAlgorithm

    InvalidKeyConfiguration

    InvalidNameForAdditionalClaim

    InvalidNameForAdditionalHeader

    InvalidPublicKeyId

    InvalidPublicKeyValue

    InvalidSecretInConfig

    InvalidTypeForAdditionalClaim

    InvalidTypeForAdditionalHeader

    InvalidValueForElement

    InvalidValueOfArrayAttribute

    InvalidVariableNameForSecret

    MissingConfigurationElement

    MissingElementForKeyConfiguration

    MissingNameForAdditionalClaim

    MissingNameForAdditionalHeader

    Andere mögliche Bereitstellungsfehler.

    Fehlervariablen

    Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

    Variablen Wo Beispiel
    fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "TokenExpired"
    JWS.failed Bei allen JWT-Richtlinien wird im Fall eines Fehlers dieselbe Variable festgelegt. jws.JWS-Policy.failed = true

    Beispiel für eine Fehlerantwort

    Bei der Fehlerbehandlung besteht die Best Practice darin, den errorcode-Teil der Fehlerantwort zu beachten. Verlassen Sie sich nicht auf den Text in faultstring. Er kann sich ändern.

    Beispiel für eine Fehlerregel

    <FaultRules>
        <FaultRule name="JWS Policy Errors">
            <Step>
                <Name>JavaScript-1</Name>
                <Condition>(fault.name Matches "TokenExpired")</Condition>
            </Step>
            <Condition>JWS.failed=true</Condition>
        </FaultRule>
    </FaultRules>

    VerifyJWT-Richtlinie

    In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

    Laufzeitfehler

    Diese Fehler können bei Ausführung der Richtlinie auftreten.

    Fehlercode HTTP-Status Tritt auf, wenn Folgendes eintritt
    steps.jwt.AlgorithmInTokenNotPresentInConfiguration 401 Tritt auf, wenn die Prüfungsrichtlinie mehrere Algorithmen nutzt.
    steps.jwt.AlgorithmMismatch 401 Der in der Richtlinie Generate angegebene Algorithmus stimmte nicht mit dem in der Richtlinie Verify erwarteten überein. Die angegebenen Algorithmen müssen übereinstimmen.
    steps.jwt.FailedToDecode 401 Die Richtlinie konnte das JWT nicht decodieren. Das JWT ist möglicherweise beschädigt.
    steps.jwt.GenerationFailed 401 Die Richtlinie konnte das JWT nicht generieren.
    steps.jwt.InsufficientKeyLength 401 Für einen Schlüssel mit weniger als 32 Byte beim HS256-Algorithmus, weniger als 48 Byte beim HS386 Algorithmus und weniger als 64 Byte beim HS512-Algorithmus.
    steps.jwt.InvalidClaim 401 Bei fehlendem Anspruch, nicht übereinstimmender Anforderung oder fehlendem oder nicht übereinstimmendem Header.
    steps.jwt.InvalidConfiguration 401 Sowohl das Element <Algorithm> als auch das Element <Algorithms> sind vorhanden.
    steps.jwt.InvalidCurve 401 Die vom Schlüssel angegebene Kurve ist für den Elliptic-Curve-Algorithmus ungültig.
    steps.jwt.InvalidIterationCount 401 Die im verschlüsselten JWT verwendete Iterationsanzahl entspricht nicht der in der VerifyJWT-Richtlinienkonfiguration angegebenen Iterationsanzahl. Dies gilt nur für JWT, die <PasswordKey> verwenden.
    steps.jwt.InvalidJsonFormat 401 Ungültiger JSON-Code im Header oder der Nutzlast gefunden.
    steps.jwt.InvalidKeyConfiguration 401 JWKS im <PublicKey>-Element ist ungültig. Möglicherweise ist der JWKS-URI-Endpunkt nicht über die Apigee-Instanz erreichbar. Testen Sie die Verbindung zum Endpunkt, indem Sie einen Passthrough-Proxy erstellen und den JWKS-Endpunkt als Ziel verwenden.
    steps.jwt.InvalidSaltLength 401 Die Salt-Länge, die im verschlüsselten JWT verwendet wurde, entspricht nicht der Salt-Länge, die in der VerifyJWT-Richtlinienkonfiguration angegeben ist. Dies gilt nur für JWT, die <PasswordKey> verwenden.
    steps.jwt.InvalidPasswordKey 401 Der angegebene Schlüssel erfüllte nicht die Anforderungen.
    steps.jwt.InvalidPrivateKey 401 Der angegebene Schlüssel erfüllte nicht die Anforderungen.
    steps.jwt.InvalidPublicKey 401 Der angegebene Schlüssel erfüllte nicht die Anforderungen.
    steps.jwt.InvalidSecretKey 401 Der angegebene Schlüssel erfüllte nicht die Anforderungen.
    steps.jwt.InvalidToken 401 Dieser Fehler tritt auf, wenn die JWT-Signaturprüfung fehlschlägt.
    steps.jwt.JwtAudienceMismatch 401 Der Zielgruppenanspruch ist bei der Tokenprüfung fehlgeschlagen.
    steps.jwt.JwtIssuerMismatch 401 Der Ausstelleranspruch ist bei der Tokenprüfung fehlgeschlagen.
    steps.jwt.JwtSubjectMismatch 401 Der Betreffanspruch ist bei der Tokenprüfung fehlgeschlagen.
    steps.jwt.KeyIdMissing 401 Die Verify-Richtlinie verwendet einen JWKS als Quelle für öffentliche Schlüssel, aber das signierte JWT hat kein kid-Attribut im Header.
    steps.jwt.KeyParsingFailed 401 Der öffentliche Schlüssel konnte anhand der angegebenen Schlüsselinformationen nicht geparst werden.
    steps.jwt.NoAlgorithmFoundInHeader 401 Tritt auf, wenn das JWT keinen Algorithmus-Header enthält.
    steps.jwt.NoMatchingPublicKey 401 Die Verify-Richtlinie verwendet einen JWKS als Quelle für öffentliche Schlüssel, aber der kid im signierten JWT ist nicht in JWKS aufgeführt.
    steps.jwt.SigningFailed 401 In GenerateJWT, für Schlüssel, die kleiner als die Mindestgröße für den HS384- oder HS512-Algorithmus sind
    steps.jwt.TokenExpired 401 Die Richtlinie versucht, ein abgelaufenes Token zu bestätigen.
    steps.jwt.TokenNotYetValid 401 Das Token ist noch nicht gültig.
    steps.jwt.UnhandledCriticalHeader 401 Ein Header, der von der JWT-Richtlinie im Header crit gefunden wurde, ist nicht in KnownHeaders aufgeführt.
    steps.jwt.UnknownException 401 Es ist eine unbekannte Ausnahme aufgetreten.
    steps.jwt.WrongKeyType 401 Falscher Schlüsseltyp angegeben. Wenn Sie beispielsweise einen RSA-Schlüssel für einen Elliptic Curve-Algorithmus oder einen Kurvenschlüssel für einen RSA-Algorithmus angeben.

    Bereitstellungsfehler

    Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

    Fehlername Ursache Beheben
    InvalidNameForAdditionalClaim Die Bereitstellung schlägt fehl, wenn der im untergeordneten Element <Claim> des Elements <AdditionalClaims> verwendete Anspruch einer der folgenden registrierten Namen ist: kid, iss, sub, aud, iat, exp, nbf oder jti.
    InvalidTypeForAdditionalClaim Wenn der verwendete Anspruch im untergeordneten Element <Claim> des Elements <AdditionalClaims> nicht vom Typ string, number, boolean oder map ist, schlägt die Bereitstellung fehl.
    MissingNameForAdditionalClaim Wenn der Name der Anforderung nicht im untergeordneten Element <Claim> des Elements <AdditionalClaims> angegeben ist, schlägt die Bereitstellung fehl.
    InvalidNameForAdditionalHeader Dieser Fehler tritt auf, wenn der Name des verwendeten Anspruchs im untergeordneten Element <Claim> des Elements <AdditionalClaims> entweder alg oder typ ist.
    InvalidTypeForAdditionalHeader Wenn die Art des verwendeten Anspruchs im untergeordneten Element <Claim> des Elements <AdditionalClaims> nicht zum Typ string, number, boolean oder map ist, schlägt die Bereitstellung fehl.
    InvalidValueOfArrayAttribute Dieser Fehler tritt auf, wenn der Wert des Arrayattributs im untergeordneten Element <Claim> des Elements <AdditionalClaims> nicht auf true oder false festgelegt ist.
    InvalidValueForElement Wenn der im Element <Algorithm> angegebene Wert kein unterstützter Wert ist, schlägt die Bereitstellung fehl.
    MissingConfigurationElement Dieser Fehler tritt auf, wenn das Element <PrivateKey> nicht mit RSA Family-Algorithmen oder das Element <SecretKey> nicht mit HS Family-Algorithmen verwendet wird.
    InvalidKeyConfiguration Wenn das untergeordnete Element <Value> nicht in den Elementen <PrivateKey> oder <SecretKey> definiert ist, schlägt die Bereitstellung fehl.
    EmptyElementForKeyConfiguration Wenn das "ref"-Attribut des untergeordneten Elements <Value> der Elemente <PrivateKey> oder <SecretKey> leer oder nicht angegeben sind, schlägt die Bereitstellung fehl.
    InvalidConfigurationForVerify Dieser Fehler tritt auf, wenn das Element <Id> im Element <SecretKey> definiert ist.
    InvalidEmptyElement Dieser Fehler tritt auf, wenn das <Source>-Element der Verify JWT-Richtlinie leer ist. Falls vorhanden, muss dieses mit einem Apigee-Ablaufvariablennamen definiert werden.
    InvalidPublicKeyValue Wenn der im untergeordneten Element <JWKS> des Elements <PublicKey> verwendete Wert kein gültiges Format wie in RFC 7517 angegeben verwendet, schlägt die Bereitstellung fehl.
    InvalidConfigurationForActionAndAlgorithm Wenn das Element <PrivateKey> mit HS-Family-Algorithmen oder das Element <SecretKey> mit RSA-Family-Algorithmen verwendet wird, schlägt die Bereitstellung fehl.

    Fehlervariablen

    Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

    Variablen Wo Beispiel
    fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "InvalidToken"
    JWT.failed Bei allen JWT-Richtlinien wird im Fall eines Fehlers dieselbe Variable festgelegt. JWT.failed = true

    Beispiel für eine Fehlerantwort

    JWT-Richtlinienfehlercodes

    Bei der Fehlerbehandlung besteht die Best Practice darin, den errorcode-Teil der Fehlerantwort zu beachten. Verlassen Sie sich nicht auf den Text in faultstring. Er kann sich ändern.

    Beispiel für eine Fehlerregel

        <FaultRules>
            <FaultRule name="JWT Policy Errors">
                <Step>
                    <Name>JavaScript-1</Name>
                    <Condition>(fault.name Matches "InvalidToken")</Condition>
                </Step>
                <Condition>JWT.failed=true</Condition>
            </FaultRule>
        </FaultRules>
        

    XMLThreatProtection-Richtlinie

    In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

    Laufzeitfehler

    Diese Fehler können bei Ausführung der Richtlinie auftreten.

    Fehlercode HTTP-Status Ursache Diverse Fehlerkorrekturen
    steps.xmlthreatprotection.ExecutionFailed 500 Die Richtlinie XMLThreatProtection kann viele verschiedene Arten von ExecutionFailed-Fehlern verursachen. Die meisten dieser Fehler treten auf, wenn ein bestimmter Schwellenwert in der Richtlinie überschritten wird. Zu diesen Arten von Fehlern gehören: Länge des Elementnamens, Anzahl der untergeordneten Elemente, Knotentiefe, Anzahl der Attribute, Länge des Attributnamens und viele weitere. Die vollständige Liste finden Sie unter XML-Richtlinie zum Schutz vor Bedrohungen – Fehlerbehebung.
    steps.xmlthreatprotection.InvalidXMLPayload 500 Dieser Fehler tritt auf, wenn die Nutzlast der Eingabenachricht, die durch das Element <Source> der -Richtlinie ‌XMLThreatProtection angegeben wurde, kein gültiges XML-Dokument ist.
    steps.xmlthreatprotection.SourceUnavailable 500 Dieser Fehler tritt auf, wenn für die im Element <Source> angegebene Variable message eine der folgenden Aussagen gilt:
    • Der Wert liegt außerhalb des Bereichs (ist nicht in dem spezifischen Ablauf verfügbar, in dem die Richtlinie ausgeführt wird)
    • Sie hat keinen der gültigen Werte request, response oder message.
    steps.xmlthreatprotection.NonMessageVariable 500 Dieser Fehler tritt auf, wenn das Element <Source> auf eine Variable mit einem anderen Typ als message gesetzt ist.

    Bereitstellungsfehler

    Fehlervariablen

    Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

    Variablen Wo Beispiel
    fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name Matches "SourceUnavailable"
    xmlattack.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. xmlattack.XPT-SecureRequest.failed = true

    Beispiel für eine Fehlerantwort

    {
      "fault": {
        "faultstring": "XMLThreatProtection[XPT-SecureRequest]: Execution failed. reason: XMLThreatProtection[XTP-SecureRequest]: Exceeded object entry name length at line 2",
        "detail": {
          "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
      }
    }

    Beispiel für eine Fehlerregel

    <FaultRule name="XML Threat Protection Policy Faults">
        <Step>
            <Name>AM-CustomErrorResponse</Name>
            <Condition>(fault.name Matches "ExecutionFailed") </Condition>
        </Step>
        <Condition>(xmlattack.XPT-SecureRequest.failed = true) </Condition>
    </FaultRule>

    XMLtoJSON-Richtlinie

    In diesem Abschnitt werden die zurückgegebenen Fehlercodes und Fehlermeldungen beschrieben, die von Apigee festgelegt werden, wenn die Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.

    Laufzeitfehler

    Diese Fehler können bei Ausführung der Richtlinie auftreten.

    Fehlercode HTTP-Status Ursache Diverse Fehlerkorrekturen
    steps.xmltojson.ExecutionFailed ExecutionFailed Dieser Fehler tritt auf, wenn die Eingabenutzlast (XML) leer ist oder die Eingabe-XML ungültig oder fehlerhaft ist.
    steps.xmltojson.InCompatibleTypes ExecutionFailed Dieser Fehler tritt auf, wenn der Typ der im Element <Source> definierten Variable und das Element <OutputVariable> nicht identisch sind. Der Typ der im Element <Source> enthaltenen Variablen muss mit dem Typ der im Element <OutputVariable> enthaltenden Variable übereinstimmen.
    steps.xmltojson.InvalidSourceType ExecutionFailed Dieser Fehler tritt auf, wenn der Typ der Variablen zum Definieren des Elements <Source> ungültig ist. Gültige Variablentypen sind "message" und "string".
    steps.xmltojson.OutputVariableIsNotAvailable ExecutionFailed Dieser Fehler tritt auf, wenn die im <Source>-Element der XML-zu-JSON-Richtlinie angegebene Variable den Typ "String" aufweist und das Element <OutputVariable> nicht definiert ist. Das Element <OutputVariable> ist obligatorisch, wenn die im Element <Source> definierte Variable vom Typ "String" ist.
    steps.xmltojson.SourceUnavailable ExecutionFailed Dieser Fehler tritt auf, wenn die im Element <Source> der XML-zu-JSON-Richtlinie angegebene Variable message entweder:
    • außerhalb des Geltungsbereichs (nicht im spezifischen Ablauf verfügbar, in dem die Richtlinie ausgeführt wird) oder
    • kann nicht gelöst werden (ist nicht definiert)

    Bereitstellungsfehler

    Diese Fehler können auftreten, wenn Sie einen Proxy mit dieser Richtlinie bereitstellen.

    Fehlername Ursache Diverse Fehlerkorrekturen
    EitherOptionOrFormat Ist eines der Elemente <Options> oder <Format> in der "XML-to-JSON"-Richtlinie nicht deklariert, schlägt die Bereitstellung des API-Proxys fehl.
    UnknownFormat Wenn für das Element <Format> in der "XML-to-JSON"-Richtlinie ein unbekanntes Format definiert ist, schlägt die Bereitstellung des API-Proxys fehl. Vordefinierte Formate sind: xml.com, yahoo, google und badgerFish.

    Fehlervariablen

    Diese Variablen werden bei Laufzeitfehlern festgelegt. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen.

    Variablen Wo Beispiel
    fault.name="fault_name" fault_name ist der Name des Fehlers, der in der obigen Tabelle Laufzeitfehler aufgeführt ist. Der Fehlername ist der letzte Teil des Fehlercodes. fault.name = "SourceUnavailable"
    xmltojson.policy_name.failed policy_name ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. xmltojson.XMLtoJSON-1.failed = true

    Beispiel für eine Fehlerantwort

    {
      "fault": {
        "faultstring": "XMLToJSON[XMLtoJSON-1]: Source xyz is not available",
        "detail": {
          "errorcode": "steps.xml2json.SourceUnavailable"
        }
      }
    }

    Beispiel für eine Fehlerregel

    <faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="XML to JSON Faults">
        <Step>
            <Name>AM-SourceUnavailableMessage</Name>
            <Condition>(fault.name Matches "SourceUnavailable") </Condition>
        </Step>
        <Step>
            <Name>AM-BadXML</Name>
            <Condition>(fault.name = "ExecutionFailed")</Condition>
        </Step>
        <Condition>(xmltojson.XMLtoJSON-1.failed = true) </Condition>
    </FaultRule>

    XSLTransform-Richtlinie

    Laufzeitfehler

    Diese Fehler können bei Ausführung der Richtlinie auftreten.

    Fehlercode HTTP-Status Ursache Beheben
    steps.xsl.XSLSourceMessageNotAvailable 500 Dieser Fehler tritt auf, wenn die Nachricht oder Stringvariable, die im <Source>-Element der Richtlinie XSLTransform angegeben ist, entweder außerhalb des zulässigen Bereichs ist (nicht im spezifischen Ablauf, in dem die Richtlinie ausgeführt wird) oder nicht aufgelöst werden kann (ist nicht definiert).
    steps.xsl.XSLEvaluationFailed 500 Dieser Fehler tritt auf, wenn die XML-Eingabenutzlast nicht verfügbar/fehlerhaft ist oder die XSLTransform-Richtlinie fehlschlägt/die XML-Eingabedatei nicht auf Basis der in der XSL-Datei bereitgestellten Transformationsregeln transformieren kann. Es sind viele verschiedene Gründe dafür denkbar, dass die XSLTransform-Richtlinie fehlschlägt. Der in der Fehlermeldung angegebene Fehlerursache enthält weitere Informationen zum Grund.

    Bereitstellungsfehler

    Diese Fehler können auftreten, wenn Sie einen Proxy bereitstellen, der diese Richtlinie enthält.

    Fehlername Ursache Beheben
    XSLEmptyResourceUrl Wenn das Element <ResourceURL> in der Richtlinie XSLTransform leer ist, schlägt die Bereitstellung des API-Proxys fehl.
    XSLInvalidResourceType Wenn der im <ResourceURL>-Element der XSLTransform-Richtlinie angegebene Ressourcentyp nicht dem Typ xsl ist, schlägt die Bereitstellung des API-Proxys fehl.