Esta página se aplica a Apigee y Apigee Hybrid.
Consulta la documentación de Apigee Edge.
Política AccessControl
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
accesscontrol.IPDeniedAccess |
403 |
La dirección IP del cliente, o una dirección IP que se pasa en la solicitud a la API, coincide con una dirección IP especificada en el elemento <SourceAddress> dentro del elemento <MatchRule> de la Política de control de acceso y el atributo action del elemento <MatchRule> se configura como DENY . |
build |
accesscontrol.InvalidIPAddressInVariable |
500 |
La variable de flujo en <ClientIPVariable> contiene una dirección IP no válida. |
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Variables específicas de los errores de política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "IPDeniedAccess" |
acl.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | acl.AC-AllowAccess.failed = true |
Ejemplo de respuesta de falla
{ "fault":{ "faultstring":"Access Denied for client ip : 52.211.243.3" "detail":{ "errorcode":"steps.accesscontrol.IPDeniedAccess" } } }
Ejemplo de regla de falla
<FaultRule name="IPDeniedAccess"> <Step> <Name>AM-IPDeniedAccess</Name> <Condition>(fault.name Matches "IPDeniedAccess") </Condition> </Step> <Condition>(acl.failed = true) </Condition> </FaultRule>
Política AccessEntity
Para obtener información relacionada, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Ninguno
Errores en la implementación
Nombre del error | String de error | Estado de HTTP | Ocurre cuando |
---|---|---|---|
InvalidEntityType |
Invalid type [entity_type] in ACCESSENTITYStepDefinition
[policy_name] |
N/A | El tipo de entidad que se use debe ser uno de los tipos compatibles. |
Política AssignMessage
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.assignmessage.SetVariableFailed |
500 |
La política no pudo establecer una variable. Consulta la string con error para el nombre de la variable sin resolver. | |
steps.assignmessage.VariableOfNonMsgType |
500 |
Este error ocurre si el atributo Las variables del tipo de mensaje representan respuestas y solicitudes HTTP completas. Las variables de flujo integradas de Apigee |
build |
steps.assignmessage.UnresolvedVariable |
500 |
Este error se produce si una variable especificada en la política AssignMessage es una de las siguientes:
|
build |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidIndex |
Si el índice especificado en los elementos <Copy> o <Remove> de la política AssignMessage es 0 o un número negativo, fallará la implementación del proxy de API.
|
build |
InvalidVariableName |
Si el elemento secundario <Name> está vacío o no se especificó en el elemento <AssignVariable> , la implementación del proxy de API fallará porque no hay un nombre de variable válido al que asignarle un valor. Se requiere un nombre de variable válido.
|
build |
InvalidPayload |
Una carga útil especificada en la política no es válida. |
Variables con fallas
Estas variables se configuran cuando esta política activa un error en el entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="FAULT_NAME" |
FAULT_NAME es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "UnresolvedVariable" |
assignmessage.POLICY_NAME.failed |
POLICY_NAME es el nombre especificado por el usuario de la política que generó la falla. | assignmessage.AM-SetResponse.failed = true |
Ejemplo de respuesta de error
{ "fault":{ "detail":{ "errorcode":"steps.assignmessage.VariableOfNonMsgType" }, "faultstring":"AssignMessage[AM-SetResponse]: value of variable is not of type Message" } }
Ejemplo de regla de falla
<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>
Política BasicAuthentication
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de controlar errores. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.basicauthentication.InvalidBasicAuthenticationSource |
500 |
En una decodificación cuando la string codificada Base64 entrante no contiene un valor válido o el encabezado tiene un formato incorrecto (por ejemplo, no comienza con Basic ). |
build |
steps.basicauthentication.UnresolvedVariable |
500 |
Las variables de origen necesarias para la decodificación o codificación no están presentes. Este error solo puede ocurrir si IgnoreUnresolvedVariables es falso. |
build |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Ocurre cuando | Corregir |
---|---|---|
UserNameRequired |
El elemento <User> debe estar presente para la operación con nombre. |
build |
PasswordRequired |
El elemento <Password> debe estar presente para la operación con nombre. |
build |
AssignToRequired |
El elemento <AssignTo> debe estar presente para la operación con nombre. |
build |
SourceRequired |
El elemento <Source> debe estar presente para la operación con nombre. |
build |
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "UnresolvedVariable" |
BasicAuthentication.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | BasicAuthentication.BA-Authenticate.failed = true |
Ejemplo de respuesta de error
{ "fault":{ "detail":{ "errorcode":"steps.basicauthentication.UnresolvedVariable" }, "faultstring":"Unresolved variable : request.queryparam.password" } }
Ejemplo de regla de falla
<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>
Política DecodeJWS
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Ocurre cuando |
---|---|---|
steps.jws.FailedToDecode |
401 |
La política no pudo decodificar el JWS Es posible que el JWS esté dañado. |
steps.jws.FailedToResolveVariable |
401 |
Ocurre cuando la variable de flujo especificada en el elemento <Source> de la política no existe. |
steps.jws.InvalidClaim |
401 |
Para una reclamación faltante o una falta de coincidencia de una reclamación, o bien un encabezado faltante o una falta de coincidencia de un encabezado. |
steps.jws.InvalidJsonFormat |
401 |
Se encontró un archivo JSON que no es válido en el encabezado JWS. |
steps.jws.InvalidJws |
401 |
Este error ocurre cuando falla la verificación de la firma del JWS. |
steps.jws.InvalidPayload |
401 |
La carga útil JWS no es válida. |
steps.jws.InvalidSignature |
401 |
<DetachedContent> se omite y la JWS tiene una carga útil de contenido desconectada. |
steps.jws.MissingPayload |
401 |
Falta la carga útil JWS. |
steps.jws.NoAlgorithmFoundInHeader |
401 |
Ocurre cuando el JWS omite el encabezado del algoritmo. |
steps.jws.UnknownException |
401 |
Se produjo una excepción desconocida. |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Ocurre cuando |
---|---|
InvalidAlgorithm |
Los únicos valores válidos son RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512,
HS256, HS384, HS512 . |
|
Otros errores de implementación posibles. |
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "TokenExpired" |
JWS.failed |
Todas las políticas de JWS establecen la misma variable en caso de falla. | jws.JWS-Policy.failed = true |
Ejemplo de respuesta de error
Para controlar errores, se recomienda capturar la parte errorcode
de la respuesta de error. No dependas del texto en la faultstring
, ya que podría cambiar.
Ejemplo de regla de falla
<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>
Política DecodeJWT
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.jwt.FailedToDecode |
401 |
Ocurre cuando la política no puede decodificar el JWT. El JWT puede tener errores de formato, no es válido o no se puede decodificar. | build |
steps.jwt.FailedToResolveVariable |
401 |
Ocurre cuando la variable de flujo especificada en el elemento <Source> de la política no existe. |
|
steps.jwt.InvalidToken |
401 |
Ocurre cuando la variable de flujo especificada en el elemento <Source> de la política está fuera de alcance o no se puede resolver. |
build |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidEmptyElement |
Ocurre cuando la variable de flujo que contiene el JWT que se decodificará no se especifica en el elemento <Source> de la política.
|
build |
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "InvalidToken" |
JWT.failed |
Todas las políticas de JWT establecen la misma variable en caso de falla. | JWT.failed = true |
Ejemplo de respuesta de error
Para controlar errores, se recomienda capturar la parte errorcode
de la respuesta de error. No dependas del texto en la faultstring
, ya que podría cambiar.
Ejemplo de regla de falla
<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>
Política ExtractVariables
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.extractvariables.ExecutionFailed |
500 |
Este error ocurre en los siguientes casos:
|
build |
steps.extractvariables.ImmutableVariable |
500 |
Una variable utilizada en la política es inmutable. La política no pudo establecer esta variable. | N/A |
steps.extractvariables.InvalidJSONPath |
500 |
Este error se produce si se usa una ruta de acceso JSON no válida en el elemento JSONPath de la política. Por ejemplo, si una carga útil de JSON no tiene el objeto Name , pero especificas Name como la ruta de acceso en la política, se produce este error. |
build |
steps.extractvariables.JsonPathParsingFailure |
500 |
Este error se produce cuando la política no puede analizar una ruta JSON ni extraer datos de la variable de flujo especificada en el elemento Source . Por lo general, esto sucede si la variable de flujo especificada en el elemento Source no existe en el flujo actual. |
build |
steps.extractvariables.SetVariableFailed |
500 |
Este error se produce si la política no pudo establecer el valor en una variable. Esto ocurre si intentas asignar valores a múltiples variables cuyos nombres comienzan con las mismas palabras en un formato separado por puntos y comas. | build |
steps.extractvariables.SourceMessageNotAvailable |
500 |
Este error se produce si la variable mensaje especificada en el elemento Source de la política JSONThreatProtection es una de las siguientes opciones:
|
build |
steps.extractvariables.UnableToCast |
500 |
Este error se produce si la política no pudo convertir el valor extraído en una variable. Por lo general, esto sucede si intentas establecer el valor de un tipo de datos como una variable de otro tipo de datos. | build |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
NothingToExtract |
Si la política no tiene ninguno de los elementos URIPath , QueryParam , Header , FormParam , XMLPayload o JSONPayload , la implementación del proxy de la API falla, no hay nada que extraer. |
build |
NONEmptyPrefixMappedToEmptyURI |
Este error se produce si la política tiene un prefijo definido en el elemento Namespace debajo del elemento XMLPayload , pero no se define un URI. |
build |
DuplicatePrefix |
Este error se produce si la política tiene el mismo prefijo definido más de una vez en el elemento Namespace debajo del elemento XMLPayload . |
build |
NoXPathsToEvaluate |
Si la política no tiene el elemento XPath dentro del elemento XMLPayload , entonces la implementación del proxy de API falla con este error.
|
build |
EmptyXPathExpression |
Si la política tiene una expresión XPath vacía dentro del elemento XMLPayload , fallará la implementación del proxy de API. |
build |
NoJSONPathsToEvaluate |
Si la política no tiene el elemento JSONPath dentro del elemento JSONPayload , entonces la implementación del proxy de API falla con este error. |
build |
EmptyJSONPathExpression |
Si la política tiene una expresión XPath vacía dentro del elemento XMLPayload , fallará la implementación del proxy de API. |
build |
MissingName |
Si la política no tiene el atributo name en ninguno de los elementos de la política, como QueryParam , Header , FormParam o Variable , cuando sea necesario, la implementación del proxy de API falla. |
build |
PatternWithoutVariable |
Si la política no tiene una variable especificada en el elemento Pattern , la implementación del proxy de API fallará. El elemento Pattern requiere el nombre de la variable en la que se almacenarán los datos extraídos. |
build |
CannotBeConvertedToNodeset |
Si la política tiene una expresión XPath en la que el tipo Variable se define como nodeset, pero la expresión no se puede convertir en el conjunto de nodos, la implementación de la API de proxy falla. |
build |
JSONPathCompilationFailed |
La política no pudo compilar una ruta JSON especificada. | N/A |
InstantiationFailed |
No se pudo crear la instancia de la política. | N/A |
XPathCompilationFailed |
Si el prefijo o el valor usado en el elemento XPath no forma parte de los espacios de nombres declarados en la política, la implementación del proxy de API falla. |
build |
InvalidPattern |
Si la definición del elemento Pattern no es válida en ninguno de los elementos, como URIPath , QueryParam , Header , FormParam , XMLPayload o JSONPayload , dentro de la política, fallará la implementación del proxy de API.
|
build |
Variables con fallas
Estas variables se configuran cuando esta política activa un error en el entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name = "SourceMessageNotAvailable" |
extractvariables.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | extractvariables.EV-ParseJsonResponse.failed = true |
Ejemplo de respuesta de error
{ "fault":{ "detail":{ "errorcode":"steps.extractvariables.SourceMessageNotAvailable" }, "faultstring":"request message is not available for ExtractVariable: EV-ParseJsonResponse" } }
Ejemplo de regla de falla
<FaultRule name="Extract Variable Faults"> <Step> <Name>AM-CustomErrorMessage</Name> <Condition>(fault.name = "SourceMessageNotAvailable") </Condition> </Step> <Condition>(extractvariables.EM-ParseJsonResponse.failed = true) </Condition> </FaultRule>
Política GenerateJWS
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Lo que necesitas saber sobre errores de políticas y Controla fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Ocurre cuando |
---|---|---|
steps.jws.GenerationFailed |
401 |
La política no pudo generar el JWS. |
steps.jws.InsufficientKeyLength |
401 |
En el caso de una clave de menos de 32 bytes para el algoritmo HS256 |
steps.jws.InvalidClaim |
401 |
Para una reclamación faltante o una falta de coincidencia de una reclamación, o bien un encabezado faltante o una falta de coincidencia de un encabezado. |
steps.jws.InvalidCurve |
401 |
La curva especificada por la clave no es válida para el algoritmo de curva elíptica. |
steps.jws.InvalidJsonFormat |
401 |
Se encontró un archivo JSON que no es válido en el encabezado JWS. |
steps.jws.InvalidPayload |
401 |
La carga útil JWS no es válida. |
steps.jws.InvalidSignature |
401 |
<DetachedContent> se omite y la JWS tiene una carga útil de contenido desconectada. |
steps.jws.KeyIdMissing |
401 |
La política de verificación usa un JWKS como fuente para las claves públicas, pero el JWS firmado no incluye una propiedad kid en el encabezado. |
steps.jws.KeyParsingFailed |
401 |
No se pudo analizar la clave pública a partir de la información de claves determinada. |
steps.jws.MissingPayload |
401 |
Falta la carga útil JWS. |
steps.jws.NoAlgorithmFoundInHeader |
401 |
Ocurre cuando el JWS omite el encabezado del algoritmo. |
steps.jws.SigningFailed |
401 |
En GenerateJWS, ocurre en el caso de una clave que es menor que el tamaño mínimo para los algoritmos HS384 o HS512. |
steps.jws.UnknownException |
401 |
Se produjo una excepción desconocida. |
steps.jws.WrongKeyType |
401 |
El tipo de clave especificado es incorrecto. Por ejemplo, si especificas una clave RSA para un algoritmo de curva elíptica o una clave de curva para un algoritmo de RSA. |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Ocurre cuando |
---|---|
InvalidAlgorithm |
Los únicos valores válidos son RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512,
HS256, HS384, HS512 . |
|
Otros errores de implementación posibles. |
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "TokenExpired" |
JWS.failed |
Todas las políticas de JWS establecen la misma variable en caso de falla. | jws.JWS-Policy.failed = true |
Ejemplo de respuesta de error
Para controlar errores, se recomienda capturar la parte errorcode
de la respuesta de error. No dependas del texto en la faultstring
, ya que podría cambiar.
Ejemplo de regla de falla
<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>
Genera GenerateJWT
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Ocurre cuando |
---|---|---|
steps.jwt.AlgorithmInTokenNotPresentInConfiguration |
401 |
Se produce cuando la política de verificación tiene varios algoritmos. |
steps.jwt.AlgorithmMismatch |
401 |
El algoritmo especificado en la política de generación no coincide con el esperado en la política de verificación. Los algoritmos especificados deben coincidir. |
steps.jwt.EncryptionFailed |
401 |
No se pudo crear un JWT encriptado por un motivo no específico |
steps.jwt.FailedToDecode |
401 |
La política no pudo decodificar el JWT. Es posible que el JWT esté dañado. |
steps.jwt.GenerationFailed |
401 |
La política no pudo generar el JWT. |
steps.jwt.InsufficientKeyLength |
401 |
En el caso de las claves inferiores a 32 bytes para el algoritmo HS256, menos de 48 bytes para el algoritmo HS386 y menos de 64 bytes para el algoritmo HS512. |
steps.jwt.InvalidClaim |
401 |
Para una reclamación faltante o una falta de coincidencia de una reclamación, o bien un encabezado faltante o una falta de coincidencia de un encabezado. |
steps.jwt.InvalidConfiguration |
401 |
Los elementos <Algorithm> y <Algorithms> están presentes. |
steps.jwt.InvalidCurve |
401 |
La curva especificada por la clave no es válida para el algoritmo de curva elíptica. |
steps.jwt.InvalidJsonFormat |
401 |
Se encontró un archivo JSON que no es válido en el encabezado o la carga útil. |
steps.jwt.InvalidPasswordKey |
401 |
La clave especificada no cumplió con los requisitos. |
steps.jwt.InvalidPrivateKey |
401 |
La clave especificada no cumplió con los requisitos. |
steps.jwt.InvalidPublicKey |
401 |
La clave especificada no cumplió con los requisitos. |
steps.jwt.InvalidSecretKey |
401 |
La clave especificada no cumplió con los requisitos. |
steps.jwt.InvalidToken |
401 |
Este error ocurre cuando falla la verificación de la firma del JWT. |
steps.jwt.JwtAudienceMismatch |
401 |
La reclamación del público falló en la verificación del token. |
steps.jwt.JwtIssuerMismatch |
401 |
La reclamación de la entidad emisora falló durante la verificación del token. |
steps.jwt.JwtSubjectMismatch |
401 |
La reclamación de la entidad falló durante la verificación del token. |
steps.jwt.KeyIdMissing |
401 |
La política de verificación usa un JWKS como fuente para las claves públicas, pero el JWT firmado no incluye una propiedad kid en el encabezado. |
steps.jwt.KeyParsingFailed |
401 |
No se pudo analizar la clave pública a partir de la información de claves determinada. |
steps.jwt.NoAlgorithmFoundInHeader |
401 |
Ocurre cuando el JWT no contiene un encabezado de algoritmo. |
steps.jwt.NoMatchingPublicKey |
401 |
La política de verificación usa un JWKS como fuente para claves públicas, pero la propiedad kid en el JWT firmado no aparece en el JWKS. |
steps.jwt.SigningFailed |
401 |
En GenerateJWT , ocurre en el caso de una clave que es menor que el tamaño mínimo para los algoritmos HS384 o HS512. |
steps.jwt.TokenExpired |
401 |
La política intenta verificar un token vencido. |
steps.jwt.TokenNotYetValid |
401 |
El token aún no es válido. |
steps.jwt.UnhandledCriticalHeader |
401 |
Un encabezado que encontró la política de verificación de JWT en el encabezado crit no aparece en KnownHeaders . |
steps.jwt.UnknownException |
401 |
Se produjo una excepción desconocida. |
steps.jwt.WrongKeyType |
401 |
El tipo de clave especificado es incorrecto. Por ejemplo, si especificas una clave RSA para un algoritmo de curva elíptica o una clave de curva para un algoritmo de RSA. |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidNameForAdditionalClaim |
La implementación fallará si la reclamación que se usa en el elemento secundario <Claim> del elemento <AdditionalClaims> es uno de los siguientes nombres registrados: kid , iss , sub , aud , iat , exp , nbf o jti . |
build |
InvalidTypeForAdditionalClaim |
Si la reclamación usada en el elemento secundario <Claim> del elemento <AdditionalClaims> no es del tipo string , number , boolean ni map , la implementación fallará. |
build |
MissingNameForAdditionalClaim |
Si no se especifica el nombre de la reclamación en el elemento secundario <Claim> del elemento <AdditionalClaims> , fallará la implementación. |
build |
InvalidNameForAdditionalHeader |
Este error ocurre cuando el nombre de la reclamación que se usó en el elemento secundario <Claim> del elemento <AdditionalClaims> es alg o typ . |
build |
InvalidTypeForAdditionalHeader |
Si el tipo de reclamación usado en el elemento secundario <Claim> del elemento <AdditionalClaims> no es del tipo string , number , boolean ni map , la implementación fallará. |
build |
InvalidValueOfArrayAttribute |
Este error ocurre cuando el valor del atributo de arreglo en el elemento secundario <Claim> del elemento <AdditionalClaims> no está configurado como true ni false . |
build |
InvalidConfigurationForActionAndAlgorithm |
Si el elemento <PrivateKey> se usa con algoritmos de la familia HS o el elemento <SecretKey> se usa con algoritmos de la familia RSA, la implementación fallará. |
build |
InvalidValueForElement |
Si el valor especificado en el elemento <Algorithm> no es un valor admitido, la implementación fallará. |
build |
MissingConfigurationElement |
Este error se producirá si el elemento <PrivateKey> no se usa con algoritmos de la familia RSA o si el elemento <SecretKey> no se usa con algoritmos de la familia HS. |
build |
InvalidKeyConfiguration |
Si el elemento secundario <Value> no está definido en los elementos <PrivateKey> ni <SecretKey> , la implementación fallará. |
build |
EmptyElementForKeyConfiguration |
Si el atributo de referencia del elemento secundario <Value> de los elementos <PrivateKey> o <SecretKey> está vacío o no se especifica, la implementación fallará. |
build |
InvalidVariableNameForSecret |
Este error se produce si el nombre de la variable del flujo especificado en el atributo de referencia del elemento secundario <Value> de los elementos <PrivateKey> o <SecretKey> no contiene el prefijo privado (private.) . |
build |
InvalidSecretInConfig |
Este error se produce si el elemento secundario <Value> de los elementos <PrivateKey> o <SecretKey> no contiene el prefijo privado (private.) . |
build |
InvalidTimeFormat |
Si el valor especificado en el elemento <NotBefore> no usa un formato admitido, la implementación fallará. |
build |
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "InvalidToken" |
JWT.failed |
Todas las políticas de JWT establecen la misma variable en caso de falla. | JWT.failed = true |
Ejemplo de respuesta de error
Para controlar errores, se recomienda capturar la parte errorcode
de la respuesta de error. No dependas del texto en la faultstring
, ya que podría cambiar.
Ejemplo de regla de falla
<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>
Política JavaCallout
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.javacallout.ExecutionError |
500 |
Ocurre cuando el código Java muestra una excepción o un valor nulo durante la ejecución de un JavaCallout policy . |
build |
Errores en la implementación
Estos errores se pueden generar cuando se implementa el proxy que contiene la política.
Nombre del error | String de error | Estado de HTTP | Ocurre cuando |
---|---|---|---|
ResourceDoesNotExist |
Resource with name
[name] and type [type] does not exist |
N/A | No existe el archivo especificado en el elemento <ResourceURL> . |
JavaCalloutInstantiationFailed |
Failed to instantiate the JavaCallout Class [classname] |
N/A | El archivo de clase especificado en el elemento <ClassName> no está en el archivo jar. |
IncompatibleJavaVersion |
Failed to load java class [classname] definition due to - [reason] |
N/A | Consulta la cadena de errores. Las versiones de Java compatibles incluyen Oracle JDK 7/8 y OpenJDK 7/8. |
JavaClassNotFoundInJavaResource |
Failed to find the ClassName in java resource [jar_name] -
[class_name] |
N/A | Consulta la cadena de errores. |
JavaClassDefinitionNotFound |
Failed to load java class [class_name] definition due to - [reason] |
N/A | Consulta la cadena de errores. |
NoAppropriateConstructor |
No appropriate constructor found in JavaCallout class [class_name] |
N/A | Consulta la cadena de errores. |
NoResourceForURL |
Could not locate a resource with URL [string] |
N/A | Consulta la cadena de errores. |
Variables con fallas
Estas variables se establecen cuando esta política activa un error. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "ExecutionError" |
javacallout.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | javacallout.JC-GetUserData.failed = true |
Ejemplo de respuesta de error
{ "fault":{ "faultstring":"Failed to execute JavaCallout. [policy_name]", "detail":{ "errorcode":"javacallout.ExecutionError" } } }
Ejemplo de regla de falla
<FaultRule name="JavaCalloutFailed"> <Step> <Name>AM-JavaCalloutError</Name> </Step> <Condition>(fault.name Matches "ExecutionError") </Condition> </FaultRule>
Política JavaScript
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Lo que necesitas saber sobre errores de políticas y Controla fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.javascript.ScriptExecutionFailed |
500 |
La política JavaScript puede generar muchos tipos de errores ScriptExecutionFailed . Los tipos de errores más comunes que aparecen son RangeError, ReferenceError, SyntaxError, TypeError y URIError. |
build |
steps.javascript.ScriptExecutionFailedLineNumber |
500 |
Se produjo un error en el código JavaScript . Consulta la string con error para obtener más detalles. |
N/A |
steps.javascript.ScriptSecurityError |
500 |
Se produjo un error de seguridad cuando se ejecutó JavaScript . Consulta la string con error para obtener más detalles. |
N/A |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidResourceUrlFormat |
Si el formato de la URL del recurso especificado en elemento <ResourceURL> o <IncludeURL> de la política de JavaScript no es válido, la implementación del proxy de la API falla. |
build |
InvalidResourceUrlReference |
Si los elementos <ResourceURL> o <IncludeURL> hacen referencia a un archivo de JavaScript que no existe, la implementación del proxy de API falla.
El archivo de origen al que se hace referencia debe existir a nivel de proxy de API, entorno u organización. |
build |
WrongResourceType |
Este error ocurre durante la implementación si los elementos <ResourceURL> o <IncludeURL> de la política JavaScript hacen referencia a cualquier tipo de recurso que no sea jsc (archivo JavaScript ). |
build |
NoResourceURLOrSource |
La implementación de la política de JavaScript puede fallar con este error si no se declara el elemento <ResourceURL> o si la URL del recurso no se define dentro de este elemento.
El elemento <ResourceURL> es obligatorio. El elemento <IncludeURL> se declara, pero la URL del recurso no se define dentro de este elemento. El elemento <IncludeURL> es opcional, pero si se declara, la URL del recurso se debe especificar dentro del elemento <IncludeURL> . |
build |
Variables con fallas
Estas variables se configuran cuando esta política activa un error en el entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "ScriptExecutionFailed" |
javascript.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | javascript.JavaScript-1.failed = true |
Ejemplo de respuesta de error
{ "fault": { "faultstring": "Execution of SetResponse failed with error: Javascript runtime error: "ReferenceError: "status" is not defined. (setresponse.js:6)\"", "detail": { "errorcode": "steps.javascript.ScriptExecutionFailed" } } }
Ejemplo de regla de falla
<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>
Política JSONThreatProtection
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Soluciona fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.jsonthreatprotection.ExecutionFailed |
500 |
La política JSONThreatProtection puede generar muchos tipos de errores ExecutionFailed .
La mayoría de estos errores se generan cuando se supera un límite específico establecido en la política. Estos tipos de errores incluyen la longitud del nombre de entrada del objeto, el recuento de entradas de objetos, el recuento de elementos del array, la profundidad del contenedor, longitud del valor de strings de la string.
Este error también ocurre cuando la carga útil contiene un objeto JSON no válido.
|
build |
steps.jsonthreatprotection.SourceUnavailable |
500 |
Este error se genera si la variable mensaje especificada en el elemento <Source> :
|
build |
steps.jsonthreatprotection.NonMessageVariable |
500 |
Este error se genera si el elemento <Source> se configura como una variable que no es del tipo mensaje. |
build |
Errores en la implementación
Ninguno
Variables con fallas
Estas variables se establecen cuando esta política activa un error. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "SourceUnavailable" |
jsonattack.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | jsonattack.JTP-SecureRequest.failed = true |
Ejemplo de respuesta de error
{ "fault": { "faultstring": "JSONThreatProtection[JPT-SecureRequest]: Execution failed. reason: JSONThreatProtection[JTP-SecureRequest]: Exceeded object entry name length at line 2", "detail": { "errorcode": "steps.jsonthreatprotection.ExecutionFailed" } } }
Ejemplo de regla de falla
<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>
Los tipos de políticas JSONThreatProtection definen los siguientes códigos de error:
Política JSONtoXML
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.jsontoxml.ExecutionFailed |
500 |
La carga útil de entrada (JSON) está vacía o la entrada (JSON) que se pasó a la política JSON to XML no es válida o presenta errores de formato. | build |
steps.jsontoxml.InCompatibleTypes |
500 |
Este error se genera si el tipo de variable definida en el elemento <Source> y el elemento <OutputVariable> no son iguales. Es obligatorio que el tipo de variables incluidas dentro del elemento <Source> y el elemento <OutputVariable> coincidan. Los tipos válidos son message y string . |
build |
steps.jsontoxml.InvalidSourceType |
500 |
Este error se genera si el tipo de variable que se usa para definir el elemento <Source> no es válido. Los tipos de variable válidos son message y string . |
build |
steps.jsontoxml.OutputVariableIsNotAvailable |
500 |
Este error se produce si la variable especificada en el elemento <Source> de la política JSON a XML es de string de tipo y el elemento <OutputVariable> no está definido.
El elemento <OutputVariable> es obligatorio cuando la variable definida en el elemento <Source> es de tipo de string. |
build |
steps.jsontoxml.SourceUnavailable |
500 |
Este error ocurre si la variable message especificada en el elemento <Source> de la política JSON a XML tiene una de las siguientes características:
|
build |
Errores en la implementación
Ninguno
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "SourceUnavailable" |
jsontoxml.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | jsontoxml.JSON-to-XML-1.failed = true |
Ejemplo de respuesta de error
{ "fault": { "faultstring": "JSONToXML[JSON-to-XML-1]: Source xyz is not available", "detail": { "errorcode": "steps.json2xml.SourceUnavailable" } } }
Ejemplo de regla de falla
<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>
Política de operaciones de mapas de clave-valor
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Soluciona fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.keyvaluemapoperations.UnsupportedOperationException |
500 |
Este error se produce si el atributo |
build |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidIndex |
Si el atributo index especificado en el elemento <Get> de la política KeyValueMapOperations es cero o un número negativo, entonces, la implementación del proxy de API falla. El índice comienza desde 1 , por lo que un índice de cero o un número entero negativo se considera no válido.
|
build |
KeyIsMissing |
Este error ocurre si falta el elemento <Key> o falta el elemento <Parameter> dentro del elemento <Key> debajo del <Entry> del elemento <InitialEntries> de la política KeyValueMapOperations .
|
build |
ValueIsMissing |
Este error ocurre si el elemento <Value> falta debajo del elemento <Entry> del elemento <InitialEntries> de la política KeyValueMapOperations . |
build |
Política MessageLogging
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa |
---|---|---|
steps.messagelogging.StepDefinitionExecutionFailed |
500 |
Consulta la cadena de errores. |
steps.messagelogging.InvalidGoogleCloudLogName |
500 |
Este error se produce cuando LogName no se evalúa como el formato válido de projects/{project}/logs/{logid}. |
steps.messagelogging.InvalidJsonMessage |
500 |
Este error se produce cuando el valor de los atributos contentType se eligió como application/json , pero el valor del mensaje real no es una string JSON válida. |
steps.messagelogging.TooManyPendingLoggingRequest |
500 |
Se produce este error cuando hay más de 2,500 solicitudes pendientes que aún no se escriben en Cloud Logging. El límite de 2,500 es para cada Pod del entorno de ejecución de Apigee. Por ejemplo, si el tráfico se distribuye a través de dos instancias de Pods del entorno de ejecución de Apigee, el límite efectivo es de 5,000 solicitudes. |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidProtocol |
La implementación de la política de MessageLogging puede generar este error si el protocolo especificado en el elemento <Protocol> no es válido. Los protocolos válidos son TCP y UDP.
Para enviar mensajes de syslog a través de TLS y SSL, solo se admite TCP. |
build |
InvalidPort |
La implementación de la política de MessageLogging puede fallar con este error si no se especifica el número de puerto en el elemento <Port> o no es válido. El número de puerto debe ser un número entero mayor que cero. |
build |
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "StepDefinitionExecutionFailed" |
messagelogging.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | messagelogging.ML-LogMessages.failed = true |
Ejemplo de respuesta de error
{ "fault":{ "detail":{ "errorcode":"steps.messagelogging.StepDefinitionExecutionFailed" }, "faultstring":"Execution failed" } }
Ejemplo de regla de falla
<FaultRule name="MessageLogging"> <Step> <Name>ML-LogMessages</Name> <Condition>(fault.name Matches "StepDefinitionExecutionFailed") </Condition> </Step> <Condition>(messagelogging.ML-LogMessages.failed = true) </Condition> </FaultRule>
Política OASValidation
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa |
---|---|---|
steps.oasvalidation.Failed |
400 |
El cuerpo del mensaje de solicitud no se puede validar en la especificación de OpenAPI proporcionada. |
steps.oasvalidation.Failed |
500 |
El cuerpo del mensaje de solicitud no se puede validar en la especificación de OpenAPI proporcionada. |
steps.oasvalidation.SourceMessageNotAvailable |
500 |
La variable especificada en el elemento |
steps.oasvalidation.NonMessageVariable |
500 |
El elemento |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | |
---|---|---|
ResourceDoesNotExist |
La especificación de OpenAPI a la que se hace referencia en el elemento <OASResource> no existe.
|
|
ResourceCompileFailed |
La especificación de OpenAPI que se incluye en la implementación contiene errores que evitan que se compile. Por lo general, esto indica que la especificación no es una especificación 3.0 de OpenAPI con el formato correcto. | |
BadResourceURL |
No se puede procesar la especificación de OpenAPI a la que se hace referencia en el elemento <OASResource> . Esto puede ocurrir si el archivo no es un archivo JSON o YAML, o si la URL del archivo no se especificó de forma correcta.
|
Variables con fallas
Estas variables se configuran cuando esta política activa un error en el entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variable | Descripción | Ejemplo |
---|---|---|
fault.category |
La categoría de la falla. Cuando la política rechaza una solicitud, siempre se aplicará Step . |
fault.category = "Step" |
fault.name |
El nombre de la falla como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "ResourceDoesNotExist" |
fault.reason |
El motivo de la falla. Es una string legible que explica el motivo de la falla. | OASValidation OAS-1 with resource "oas://my-spec1.yaml": failed with reason: "[ERROR - POST operation not allowed on path '/persons/13'.: []]" |
fault.subcategory |
La subcategoría de la falla. Cuando la política rechace una solicitud, siempre se conservará OASValidationFailure . |
fault.subcategory = "OASValidationFailure" |
OASValidation.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | OASValidation.myoaspolicy.failed = true |
Política PopulateCache
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Ocurre cuando |
---|---|---|
policies.populatecache.EntryCannotBeCached |
500 |
Una entrada no se puede almacenar en caché. El objeto del mensaje que se almacena en caché no es una instancia de una clase que se pueda serializar. |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidCacheResourceReference |
Este error se genera si el elemento <CacheResource> en la política PopulateCache se configura como un nombre que no existe en el entorno en el que se implementa el proxy de API. |
build |
CacheNotFound |
No existe la caché especificada en el elemento <CacheResource> . |
build |
Variables con fallas
Estas variables se establecen cuando esta política activa un error. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name = "EntryCannotBeCached" |
populatecache.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | populatecache.POP-CACHE-1.failed = true |
Ejemplo de respuesta de error
{ "fault": { "faultstring": "[entry] can not be cached. Only serializable entries are cached.", "detail": { "errorcode": "steps.populatecache.EntryCannotBeCached" } } }
Ejemplo de regla de falla
<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>
Política LookupCache
En esta sección, se describen los mensajes de error y las variables de flujo que se configuran cuando esta política activa un error. Esta información es importante si deseas saber si desarrollas reglas de fallas para un proxy. Para obtener más información, consulta Lo que necesitas saber sobre errores de políticas y Controla fallas.
Prefijo del código de error
N/A
Errores de entorno de ejecución
Esta política no arroja ningún error de entorno de ejecución.
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidCacheResourceReference |
Este error ocurre si el elemento <CacheResource> se configuró en un nombre que no existe en el entorno en el que se implementa el proxy de API. |
build |
InvalidTimeout |
Si el elemento <CacheLookupTimeoutInSeconds> se configuró como un número negativo, la implementación del proxy de API falla. |
build |
CacheNotFound |
Este error se genera si la caché específica que se menciona en el mensaje de error no se creó en un componente específico del procesador de mensajes. | build |
Variables con fallas
N/A
Ejemplo de respuesta de error
N/A
Política InvalidateCache
En esta sección, se describen los mensajes de error y las variables de flujo que se configuran cuando esta política activa un error. Esta información es importante si deseas saber si desarrollas reglas de fallas para un proxy. Para obtener más información, consulta Lo que necesitas saber sobre errores de políticas y Controla fallas.
Prefijo del código de error
N/A
Errores de entorno de ejecución
Esta política no arroja ningún error de entorno de ejecución.
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidCacheResourceReference |
Este error se genera si el elemento <CacheResource> en la política InvalidateCache se configura como un nombre que no existe en el entorno en el que se implementa el proxy de API. |
build |
CacheNotFound |
Este error se genera si la caché específica que se menciona en el mensaje de error no se creó en un componente específico del procesador de mensajes. | build |
Variables con fallas
N/A
Ejemplo de respuesta de error
N/A
Política ResponseCache
En esta sección, se describen los mensajes de error y las variables de flujo que se configuran cuando esta política activa un error. Esta información es importante si deseas saber si desarrollas reglas de fallas para un proxy. Para obtener más información, consulta Lo que necesitas saber sobre errores de políticas y Controla fallas.
Prefijo del código de error
N/A
Errores de entorno de ejecución
Esta política no arroja ningún error de entorno de ejecución.
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidTimeout |
Si el elemento <CacheLookupTimeoutInSeconds> de una política ResponseCache está configurado como un número negativo, la implementación del proxy de API falla. |
build |
InvalidCacheResourceReference |
Este error se genera si el elemento <CacheResource> en la política ResponseCache se configura como un nombre que no existe en el entorno en el que se implementa el proxy de API. |
build |
ResponseCacheStepAttachmentNotAllowedReq |
Este error se produce si la misma política ResponseCache se vincula con varias rutas de solicitud dentro de cualquier flujo de un proxy de API. |
build |
ResponseCacheStepAttachmentNotAllowedResp |
Este error se produce si la misma política ResponseCache se adjunta a varias rutas de respuesta dentro de cualquier flujo de un proxy de API. |
build |
InvalidMessagePatternForErrorCode |
Este error se produce si el elemento <SkipCacheLookup> o <SkipCachePopulation> en una política ResponseCache contiene una condición no válida. |
build |
CacheNotFound |
Este error se genera si la caché específica que se menciona en el mensaje de error no se creó en un componente específico del procesador de mensajes. | build |
Variables con fallas
N/A
Ejemplo de respuesta de error
N/A
Política de OAuthV2
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Arrojados por operaciones |
---|---|---|---|
steps.oauth.v2.access_token_expired |
401 |
El token de acceso expiró. |
|
steps.oauth.v2.access_token_not_approved |
401 |
El token de acceso se revocó. | VerifyAccessToken |
steps.oauth.v2.apiresource_doesnot_exist |
401 |
El recurso solicitado no existe en ninguno de los productos de API asociados con el token de acceso. | VerifyAccessToken |
steps.oauth.v2.FailedToResolveAccessToken |
500 |
La política esperaba encontrar un token de acceso en una variable especificada en el elemento <AccessToken> , pero no se pudo resolver la variable. |
GenerateAccessToken |
steps.oauth.v2.FailedToResolveAuthorizationCode |
500 |
La política esperaba encontrar un código de autorización en una variable especificada en el elemento <Code> , pero no se pudo resolver la variable. |
GenerateAuthorizationCode |
steps.oauth.v2.FailedToResolveClientId |
500 |
La política esperaba encontrar el ID de cliente en una variable especificada en el elemento <ClientId> , pero no se pudo resolver la variable. |
GenerateAccessToken GenerateAuthorizationCode GenerateAccessTokenImplicitGrant RefreshAccessToken |
steps.oauth.v2.FailedToResolveRefreshToken |
500 |
La política esperaba encontrar un token de actualización en una variable especificada en el elemento <RefreshToken> , pero no se pudo resolver la variable. |
RefreshAccessToken |
steps.oauth.v2.FailedToResolveToken |
500 |
La política esperaba encontrar un token en una variable especificada en el elemento <Tokens> , pero no se pudo resolver la variable. |
|
steps.oauth.v2.InsufficientScope |
403 | El token de acceso presentado en la solicitud tiene un permiso que no coincide con el permiso especificado en la política de verificación de token de acceso. Para obtener información sobre el alcance, consulta Trabaja con permisos de OAuth2. | VerifyAccessToken |
steps.oauth.v2.invalid_access_token |
401 |
No es válido el token de acceso que se envió desde el cliente. | VerifyAccessToken |
steps.oauth.v2.invalid_client |
401 |
Este nombre de error se muestra cuando la propiedad |
GenerateAccessToken RefreshAccessToken |
steps.oauth.v2.invalid_request |
400 | Este nombre de error se usa para varios tipos de errores, por lo general, para parámetros incorrectos o faltantes de la solicitud enviada. Si <GenerateResponse> está configurado como false , usa las variables de falla (descritas a continuación) para recuperar detalles sobre el error, como el nombre y la causa de la falla. |
GenerateAccessToken GenerateAuthorizationCode GenerateAccessTokenImplicitGrant RefreshAccessToken |
steps.oauth.v2.InvalidAccessToken |
401 |
El encabezado de autorización no tiene la palabra Bearer , que es obligatoria. Por ejemplo: Authorization: Bearer your_access_token |
VerifyAccessToken |
steps.oauth.v2.InvalidAPICallAsNo\ |
401 |
La operación o el proxy de API que se encuentra en ejecución no está en el producto asociado con el token de acceso. Sugerencias: Asegúrate de que el producto asociado con el token de acceso esté configurado correctamente. Por ejemplo, si usas comodines en las rutas de acceso a los recursos, asegúrate de que los comodines se usen correctamente. Consulta Administra productos de API para obtener más información. Consulta también la Verificación del token de acceso de Oauth2.0 muestra el error “Llamada a la API no válida porque no se encontró ninguna coincidencia de apiproduct” para obtener más instrucciones sobre las causas de este error. |
VerifyAccessToken |
steps.oauth.v2.InvalidClientIdentifier |
500 |
Este nombre de error se muestra cuando la propiedad |
|
steps.oauth.v2.InvalidParameter |
500 |
La política debe especificar un token de acceso o un código de autorización, pero no ambos. | GenerateAuthorizationCode GenerateAccessTokenImplicitGrant |
steps.oauth.v2.InvalidTokenType |
500 |
El elemento <Tokens>/<Token> requiere que especifiques el tipo de token (por ejemplo, refreshtoken ). Si el cliente pasa el tipo incorrecto, se genera este error. |
ValidateToken InvalidateToken |
steps.oauth.v2.MissingParameter |
500 |
El tipo de respuesta es token , pero no se especifican tipos de otorgamiento. |
GenerateAuthorizationCode GenerateAccessTokenImplicitGrant |
steps.oauth.v2.UnSupportedGrantType |
500 |
El cliente especificó un tipo de otorgamiento que no es compatible con la política (no incluido en el elemento |
GenerateAccessToken GenerateAuthorizationCode GenerateAccessTokenImplicitGrant RefreshAccessToken |
Errores específicos de entorno de ejecución del token JWT
Los códigos de error del entorno de ejecución y las descripciones para los flujos del token de autenticación JWT dependen del contexto del flujo de OAuth2:
- Si el contexto del flujo es la generación o actualización de tokens, consulta Códigos de error para los flujos de generación y actualización de tokens de JWT a continuación.
- Para el flujo de verificación de tokens, consulta Códigos de error para flujos de verificación de tokens a continuación.
Códigos de error para los flujos de generación y actualización de tokens de JWT
Para los flujos de OAuth2 que generan o actualizan tokens de JWT, las respuestas de error se rigen por las respuestas de error especificadas en RFC6749. Para obtener más información, consulta la Sección 5.2 Respuesta de error.
Códigos de error del flujo de verificación de tokens
Los códigos de error que se enumeran en la siguiente tabla se aplican solo a la operación VerifyAccessToken.
Código de falla | Estado de HTTP | Causa | Arrojados por operaciones |
---|---|---|---|
oauth.v2.JWTSigningFailed |
401 |
La política no pudo firmar el JWT. |
|
oauth.v2.InvalidValueForJWTAlgorithm |
401 |
Esto ocurre cuando el algoritmo no está presente en el token de acceso de JWT o cuando el valor no es compatible. |
|
oauth.v2.InsufficientKeyLength |
401 |
En la generación de JWT, en el caso de una clave que es menor que el tamaño mínimo para los algoritmos HS384 o HS512 |
|
oauth.v2.JWTAlgorithmMismatch |
401 |
El algoritmo especificado en la política de generación no coincide con el esperado en la política de verificación. Los algoritmos especificados deben coincidir. |
|
oauth.v2.JWTDecodingFailed |
401 |
La política no pudo decodificar el JWT. Es posible que el JWT esté dañado. |
|
oauth.v2.MissingMandatoryClaimsInJWT |
401 |
Ocurre cuando las reclamaciones obligatorias no están presentes en el token de acceso de JWT. |
|
oauth.v2.InvalidJWTSignature |
401 |
Esto ocurre cuando no se puede verificar la firma del token de acceso de JWT o cuando esta no es válida. |
|
oauth.v2.InvalidTypeInJWTHeader |
401 |
Ocurre cuando el tipo de JWT no es at+Jwt . |
|
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa |
---|---|
InvalidValueForExpiresIn |
Para el elemento |
InvalidValueForRefreshTokenExpiresIn |
Para el elemento <RefreshTokenExpiresIn> , los valores válidos son números enteros positivos y -1 . |
InvalidGrantType |
Se especifica un tipo de otorgamiento no válido en el elemento <SupportedGrantTypes> . Consulta la referencia de la política para obtener una lista de tipos válidos. |
ExpiresInNotApplicableForOperation |
Asegúrate de que las operaciones especificadas en el elemento <Operations> admitan el vencimiento. Por ejemplo, la operación VerifyToken no lo hace. |
RefreshTokenExpiresInNotApplicableForOperation |
Asegúrate de que las operaciones especificadas en el elemento <Operations> admitan el vencimiento del token. Por ejemplo, la operación VerifyToken no lo hace. |
GrantTypesNotApplicableForOperation |
Asegúrate de que los tipos de otorgamiento especificados en <SupportedGrantTypes> sean compatibles con la operación especificada. |
OperationRequired |
Debes especificar una operación en esta política mediante el elemento |
InvalidOperation |
Debes especificar una operación válida en esta política con el elemento |
TokenValueRequired |
Debes especificar un valor <Token> del token en el elemento <Tokens> . |
Errores específicos de implementación del token JWT
Estos errores de implementación son específicos de las políticas que usan operaciones de token de JWT.
Nombre del error | Causa |
---|---|
InvalidValueForAlgorithm |
El algoritmo especificado en el elemento <Algorithm> no se encuentra entre la lista de algoritmos disponibles o no está presente. |
MissingKeyConfiguration |
Faltan los elementos <SecretKey> , <PrivateKey> o <PublicKey> obligatorios, según el algoritmo que se use. |
EmptyValueElementForKeyConfiguration |
El elemento secundario obligatorio <Value> no está definido en los elementos <PrivateKey> , <PublicKey> ni <SecretKey> . |
InvalidKeyConfiguration |
El elemento <PrivateKey> no se usa con algoritmos de la familia RSA o el elemento <SecretKey> no se usa con algoritmos de la familia HS. |
EmptyRefAttributeForKeyconfiguration |
El atributo ref del elemento secundario <Value> de los elementos <PrivateKey> , <PublicKey> o <SecretKey> está vacío. |
InvalidVariableNameForKey |
El nombre de la variable de flujo especificado en el atributo ref del elemento secundario <Value> de los elementos <PrivateKey> , <PublicKey> o <SecretKey> no contiene el prefijo private . |
Variables con fallas
Estas variables se configuran cuando esta política activa un error en el entorno de ejecución.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name = "invalid_request" |
oauthV2.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | oauthV2.GenerateAccesstoken.failed = true |
oauthV2.policy_name.fault.name |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | oauthV2.GenerateAccesstoken.fault.name = invalid_request |
oauthV2.policy_name.fault.cause |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | oauthV2.GenerateAccesstoken.cause = Required param : grant_type |
Ejemplo de respuesta de error
Estas respuestas se envían al cliente si el elemento <GenerateResponse>
es true.
Si <GenerateResponse>
es true, la política muestra errores en este formato para las operaciones que generan tokens y códigos. Para obtener una lista completa, consulta la referencia de respuesta de error de HTTP de OAuth.
{"ErrorCode" : "invalid_client", "Error" :"ClientId is Invalid"}
Si <GenerateResponse>
es true, la política muestra errores en este formato para verificar y validar operaciones. Para obtener una lista completa, consulta la referencia de respuesta de falla de HTTP de OAuth.
{ { "fault":{ "faultstring":"Invalid Access Token", "detail":{ "errorcode":"keymanagement.service.invalid_access_token" } } }
Ejemplo de regla de falla
<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>
Política de GetOAuthV2Info
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política. Los nombres de error que se muestran a continuación son las strings que se asignan a la variable fault.name
cuando se produce un error. Consulta la sección Variables de falla a continuación para obtener más información.
Código de falla | Estado de HTTP | Causa |
---|---|---|
steps.oauth.v2.access_token_expired |
500 |
El token de acceso que se envió a la política venció. |
steps.oauth.v2.authorization_code_expired |
500 |
El código de autorización enviado a la política venció. |
steps.oauth.v2.invalid_access_token |
500 |
El token de acceso enviado a la política no es válido. |
steps.oauth.v2.invalid_client-invalid_client_id |
500 |
El ID de cliente que se envió a la política no es válido. |
steps.oauth.v2.invalid_refresh_token |
500 |
El token de actualización que se envió a la política no es válido. |
steps.oauth.v2.invalid_request-authorization_code_invalid |
500 |
El código de autorización que se envió a la política no es válido. |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound |
401 | Consulta La verificación del token de acceso de Oauth2.0 muestra el error “Se produjo una llamada a la API no válida, ya que no se encontró ninguna coincidencia de apiproduct” para obtener información sobre la solución de este error. |
steps.oauth.v2.refresh_token_expired |
500 |
El token de actualización que se envió a la política venció. |
Errores en la implementación
Consulta el mensaje reportado en la IU para obtener información sobre los errores de implementación.
Variables con fallas
Estas variables se configuran cuando esta política activa un error en el entorno de ejecución.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "IPDeniedAccess" |
oauthV2.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | oauthV2.GetTokenInfo.failed = true |
oauthV2.policy_name.fault.name |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | oauthV2.GetToKenInfo.fault.name = invalid_client-invalid_client_id |
oauthV2.policy_name.fault.cause |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | oauthV2.GetTokenInfo.cause = ClientID is Invalid |
Ejemplo de respuesta de error
{ "fault":{ "faultstring":"ClientId is Invalid", "detail":{ "errorcode":"keymanagement.service.invalid_client-invalid_client_id" } } }
Ejemplo de regla de falla
<FaultRule name="OAuthV2 Faults"> <Step> <Name>AM-InvalidClientIdResponse</Name> </Step> <Condition>(fault.name = "invalid_client-invalid_client_id")</Condition> </FaultRule>
Política SetOAuthV2Info
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa |
---|---|---|
steps.oauth.v2.access_token_expired |
500 |
El token de acceso que se envió a la política venció. |
steps.oauth.v2.invalid_access_token |
500 |
El token de acceso enviado a la política no es válido. |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound |
401 |
Consulta La verificación del token de acceso de Oauth2.0 muestra el error “Se produjo una llamada a la API no válida, ya que no se encontró ninguna coincidencia de apiproduct” para obtener información sobre la solución de este error. |
Errores en la implementación
Consulta el mensaje reportado en la IU para obtener información sobre los errores de implementación.
Variables con fallas
Estas variables se configuran cuando esta política activa un error en el entorno de ejecución.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name = "invalid_access_token" |
oauthV2.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | oauthV2.SetTokenInfo.failed = true |
oauthV2.policy_name.fault.name |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | oauthV2.SetTokenInfo.fault.name = invalid_access_token |
oauthv2.policy_name.fault.cause |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | oauthV2.SetTokenInfo.cause = Invalid Access Token |
Ejemplo de respuesta de error
{ "fault": { "faultstring": "Invalid Access Token", "detail": { "errorcode": "keymanagement.service.invalid_access_token" } } }
Ejemplo de regla de falla
<FaultRule name=SetOAuthV2Info Faults"> <Step> <Name>AM-InvalidTokenResponse</Name> <Condition>(fault.name = "invalid_access_token")</Condition> </Step> <Condition>(oauthV2.failed = true) </Condition> </FaultRule>
Política DeleteOAuthV2Info
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa |
---|---|---|
steps.oauth.v2.invalid_access_token |
401 |
El token de acceso enviado a la política no es válido. |
steps.oauth.v2.invalid_request-authorization_code_invalid |
401 |
El código de autorización enviado a la política no es válido. |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound |
401 |
Consulta La verificación del token de acceso de Oauth2.0 muestra el error “Se produjo una llamada a la API no válida, ya que no se encontró ninguna coincidencia de apiproduct” para obtener información sobre la solución de este error. |
Errores en la implementación
Consulta el mensaje reportado en la IU para obtener información sobre los errores de implementación.
Variables con fallas
Estas variables se configuran cuando esta política activa un error en el entorno de ejecución.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name = "invalid_access_token" |
oauthV2.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | oauthV2.DeleteTokenInfo.failed = true |
oauthV2.policy_name.fault.name |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | oauthV2.DeleteTokenInfo.fault.name = invalid_access_token |
oauthv2.policy_name.fault.cause |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | oauthV2.DeleteTokenInfo.cause = Invalid Access Token |
Ejemplo de respuesta de error
{ "fault": { "faultstring": "Invalid Access Token", "detail": { "errorcode": "keymanagement.service.invalid_access_token" } } }
Ejemplo de regla de falla
<faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="DeleteOAuthV2Info_Faults"> <Step> <Name>AM-InvalidTokenResponse</Name> </Step> <Condition>(fault.name = "invalid_access_token")</Condition> </FaultRule>
Política PythonScript
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Lo que necesitas saber sobre errores de políticas y Controla fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.script.ScriptEvaluationFailed |
500 |
La política de PythonScript puede arrojar varios tipos diferentes de errores de ScriptExecutionFailed. Los tipos de errores más comunes que aparecen son NameError y ZeroDivisionError. | build |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidResourceUrlFormat |
Si el formato de la URL del recurso especificado en elemento <ResourceURL> o <IncludeURL> de la política de PythonScript no es válida, la implementación del proxy de la API falla. |
build |
InvalidResourceUrlReference |
Si los elementos <ResourceURL> o <IncludeURL> hacen referencia a un archivo de PythonScript que no existe, la implementación del proxy de API falla.
El archivo de origen al que se hace referencia debe existir a nivel de proxy de API, entorno u organización. |
build |
Variables con fallas
Estas variables se configuran cuando esta política activa un error en el entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "ScriptExecutionFailed" |
pythonscript.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | pythonscript.PythonScript-1.failed = true |
Ejemplo de respuesta de error
{ "fault": { "faultstring": "Execution of SetResponse failed with error: Pythonscript runtime error: "ReferenceError: "status" is not defined.\"", "detail": { "errorcode": "steps.script.ScriptExecutionFailed" } } }
Ejemplo de regla de falla
<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>
Política de cuotas
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
policies.ratelimit.FailedToResolveQuotaIntervalReference |
500 |
Ocurre si el elemento <Interval> no está definido dentro de la política Quota . Este elemento es obligatorio y se usa para especificar el intervalo de tiempo aplicable a la cuota. El intervalo de tiempo puede ser de minutos, horas, días, semanas o meses, según se defina con el elemento <TimeUnit> . |
build |
policies.ratelimit.FailedToResolveQuotaIntervalTimeUnitReference |
500 |
Ocurre si el elemento <TimeUnit> no está definido dentro de la política Quota . Este elemento es obligatorio y se usa para especificar la unidad de tiempo aplicable a la cuota. El intervalo de tiempo puede ser en minutos, horas, días, semanas o meses. |
build |
policies.ratelimit.InvalidMessageWeight |
500 |
Este error se produce si el valor del elemento <MessageWeight> que se especificó a través de una variable de flujo no es válido (un número que no es entero). |
build |
policies.ratelimit.QuotaViolation |
500 |
Se superó el límite de la cuota. | N/A |
Errores en la implementación
Nombre del error | Causa | Corregir |
---|---|---|
InvalidQuotaInterval |
Si el intervalo de cuota especificado en el elemento <Interval> no es un número entero, fallará la implementación del proxy de la API. Por ejemplo, si el intervalo de cuota especificado es 0.1 en el elemento <Interval> , fallará la implementación del proxy de API.
|
build |
InvalidQuotaTimeUnit |
Si la unidad de tiempo especificada en el elemento <TimeUnit> no es compatible, fallará la implementación del proxy de API. Las unidades de tiempo admitidas son minute , hour , day , week y month .
|
build |
InvalidQuotaType |
Si el tipo de cuota especificado por el atributo type en el elemento <Quota> no es válido, fallará la implementación del proxy de la API. Los tipos de cuota admitidos son default , calendar , flexi y rollingwindow .
|
build |
InvalidStartTime |
Si el formato del tiempo especificado en el elemento <StartTime> no es válido, fallará la implementación del proxy de la API. El formato válido es yyyy-MM-dd HH:mm:ss , que es el formato de fecha y hora ISO 8601. Por ejemplo, si la hora especificada en el elemento <StartTime> es 7-16-2017 12:00:00 , fallará la implementación del proxy de API.
|
build |
StartTimeNotSupported |
Si se especifica el elemento <StartTime> cuyo tipo de cuota no es calendar , fallará la implementación del proxy de API. El elemento <StartTime> solo es compatible con el tipo de cuota calendar . Por ejemplo, si el atributo type se establece en flexi o rolling window en el elemento <Quota> , fallará la implementación del proxy de la API.
|
build |
InvalidTimeUnitForDistributedQuota |
Si el elemento <Distributed> se configura como true y el elemento <TimeUnit> se configura como second , fallará la implementación del proxy de la API. La unidad de tiempo second no es válida para una cuota distribuida. |
build |
InvalidSynchronizeIntervalForAsyncConfiguration |
Si el valor especificado para el elemento <SyncIntervalInSeconds> dentro del elemento <AsynchronousConfiguration> en una política de Quota es inferior a cero, fallará la implementación del proxy de la API. |
build |
InvalidAsynchronizeConfigurationForSynchronousQuota |
Si el valor del elemento <AsynchronousConfiguration> se establece en true en una política Quota , que también tiene una configuración asíncrona definida con el elemento <AsynchronousConfiguration> , la implementación del proxy de la API falla. |
build |
Variables con fallas
Estas variables se establecen cuando esta política activa un error. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "QuotaViolation" |
ratelimit.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | ratelimit.QT-QuotaPolicy.failed = true |
Ejemplo de respuesta de error
{ "fault":{ "detail":{ "errorcode":"policies.ratelimit.QuotaViolation" }, "faultstring":"Rate limit quota violation. Quota limit exceeded. Identifier : _default" } }
Ejemplo de regla de falla
<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>
Política ResetQuota
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
policies.resetquota.InvalidRLPolicy |
500 |
La política de Quota especificada en el elemento <Quota> de la política de ResetQuota no se define en el proxy de API y, por lo tanto, no está disponible durante el flujo. El elemento <Quota> es obligatorio e identifica la política de destino Quota cuyo recuento debe actualizarse a través de la política de ResetQuota . |
build |
policies.resetquota.FailedToResolveAllowCountRef |
N/A | La referencia a la variable que contiene el recuento permitido en el elemento <Allow> de la política no se puede resolver en un valor. Este elemento es obligatorio y especifica el importe para reducir el recuento de cuotas. |
build |
policies.resetquota.FailedToResolveRLPolicy |
500 |
No se puede resolver la variable a la que hace referencia el atributo ref en el elemento <Quota> . |
build |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidCount |
Si el valor de recuento especificado en el elemento <Allow> de la política de ResetQuota no es un número entero, fallará la implementación del proxy de API.
|
build |
RaiseFaultpolicy
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa |
---|---|---|
steps.raisefault.RaiseFault |
500 |
Consulta la cadena de errores. |
Errores en la implementación
Ninguno
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name = "RaiseFault" |
raisefault.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | raisefault.RF-ThrowError.failed = true |
Ejemplo de respuesta de error
{ "fault":{ "detail":{ "errorcode":"steps.raisefault.RaiseFault" }, "faultstring":"Raising fault. Fault name: [name]" } }
Política RegularExpressionProtection
En esta sección, se describen los códigos de error y los mensajes que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Si quieres capturar un error y generar tu propio error personalizado, establece el atributo continueOnError="true"
en el elemento raíz de la política.
Para obtener más información, consulta Lo que necesitas saber sobre los errores de políticas y Controla fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de error | Mensaje |
---|---|
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} |
Errores en la implementación
Código de error | Mensaje | Corregir |
---|---|---|
CannotBeConvertedToNodeset |
RegularExpressionProtection {0}: Result of xpath {1} cannot be converted to nodeset.
Context {2} |
build |
DuplicatePrefix |
RegularExpressionProtection {0}: Duplicate prefix {1} |
build |
EmptyJSONPathExpression |
RegularExpressionProtection {0}: Empty JSONPath expression |
build |
EmptyXPathExpression |
RegularExpressionProtection {0}: Empty XPath expression |
build |
InvalidRegularExpression |
RegularExpressionProtection {0}: Invalid Regular Expression {1}, Context {2} |
build |
JSONPathCompilationFailed |
RegularExpressionProtection {0}: Failed to compile jsonpath {1}. Context {2} |
build |
NONEmptyPrefixMappedToEmptyURI |
RegularExpressionProtection {0}: Non-empty prefix {1} cannot be mapped to empty
uri |
build |
NoPatternsToEnforce |
RegularExpressionProtection {0}: No patterns to enforce in {1} |
build |
NothingToEnforce |
RegularExpressionProtection {0}: at least one of URIPath, QueryParam, Header,
FormParam, XMLPayload, JSONPayload is mandatory |
build |
XPathCompilationFailed |
RegularExpressionProtection {0}: Failed to compile xpath {1}. Context {2} |
build |
Variables con fallas
Estas variables se establecen cuando esta política activa un error. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla anterior. | fault.name Matches "ThreatDetected" |
regularexpressionprotection.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | regularexpressionprotection.Regular-Expressions-Protection-1.failed = true |
Política de SAMLAssertion
En esta sección, se describen los códigos de fallas y los mensajes de error que se muestran, así como las variables de fallas que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
SourceNotConfigured |
Uno o más de los siguientes elementos de la política ValidateSAMLAssertion no están definidos o están vacíos: <Source> , <XPath> , <Namespaces> , <Namespace> .
|
build |
TrustStoreNotConfigured |
Si el elemento <TrustStore> está vacío o no se especifica en la política ValidateSAMLAssertion , falla la implementación del proxy de API.
Se requiere un almacenamiento de confianza válido.
|
build |
NullKeyStoreAlias |
La implementación del proxy de API fallará si el elemento secundario <Alias> está vacío o no se especifica en el elemento <Keystore> de la política GenerateSAMLAssertion . Se requiere un alias del almacén de claves válido.
|
build |
NullKeyStore |
La implementación del proxy de API fallará si el elemento secundario <Name> está vacío o no se especifica en el elemento <Keystore> de la política GenerateSAMLAssertion . Se requiere el nombre de almacén de claves válido.
|
build |
NullIssuer |
Si el elemento <Issuer> está vacío o no se especifica en la política GenerateSAMLAssertion , falla la implementación del proxy de API. Se requiere un valor válido de <Issuer> .
|
build |
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla . El nombre de la falla es la última parte del código de la falla. | fault.name = "InvalidMediaTpe" |
GenerateSAMLAssertion.failed |
Para la configuración de una política de confirmación de SAML validada, el prefijo de error es ValidateSAMLAssertion . |
GenerateSAMLAssertion.failed = true |
Ejemplo de respuesta de error
{ "fault": { "faultstring": "GenerateSAMLAssertion[GenSAMLAssert]: Invalid media type", "detail": { "errorcode": "steps.saml.generate.InvalidMediaTpe" } } }
Ejemplo de regla de falla
<FaultRules> <FaultRule name="invalid_saml_rule"> <Step> <Name>invalid-saml</Name> </Step> <Condition>(GenerateSAMLAssertion.failed = "true")</Condition> </FaultRule> </FaultRules>
Política ServiceCallout
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.servicecallout.ExecutionFailed |
500 |
Este error puede ocurrir en las siguientes situaciones:
|
build |
steps.servicecallout.RequestVariableNotMessageType |
500 |
La variable Request especificada en la política no es del tipo Message . Por ejemplo, si es una string o algún otro tipo que no sea de mensaje, verás este error. |
build |
steps.servicecallout.RequestVariableNotRequestMessageType |
500 |
La variable Request especificada en la política no es del tipo RequestMessage . Por ejemplo, si es un tipo de respuesta, verás este error. |
build |
googletoken.EmptyIDTokenAudience |
500 |
|
|
messaging.adaptors.http.filter.GoogleTokenGenerationFailure |
500 |
Este error puede ocurrir si el proxy de API se configuró con el elemento <Authentication>. Las siguientes son algunas de las posibles causas:
<GoogleAccessToken> y se proporcionan uno o más alcances no válidos. Por ejemplo, busca errores tipográficos o permisos vacíos.
Solo para Apigee Hybrid: Revisa el registro del contenedor del entorno de ejecución y busca |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
URLMissing |
Falta el elemento <URL> dentro de <HTTPTargetConnection> o está vacío. |
build |
ConnectionInfoMissing |
Este error se produce si la política no tiene un elemento <HTTPTargetConnection> o <LocalTargetConnection> . |
build |
InvalidTimeoutValue |
Este error ocurre si el valor de <Timeout> es negativo o cero. |
build |
FAILED_PRECONDITION |
Este error se produce si falta la cuenta de servicio cuando el proxy se configura con la etiqueta <Authentication>.
Por ejemplo: Deployment of \"organizations/foo/apis/apiproxy/revisions/1\" requires a service account identity, but one was not provided with the request. |
|
PERMISSION_DENIED |
Este error se produce si hay un problema de permisos con la cuenta de servicio si el proxy está configurado con la etiqueta <Authentication>. Causas posibles:
|
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Dónde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name = "RequestVariableNotMessageType" |
servicecallout.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | servicecallout.SC-GetUserData.failed = true |
Ejemplo de respuesta de error
{ "fault":{ "detail":{ "errorcode":"steps.servicecallout.RequestVariableNotMessageType" }, "faultstring":"ServiceCallout[ServiceCalloutGetMockResponse]: request variable data_str value is not of type Message" } }
Ejemplo de regla de falla
<FaultRule name="RequestVariableNotMessageType"> <Step> <Name>AM-RequestVariableNotMessageType</Name> </Step> <Condition>(fault.name = "RequestVariableNotMessageType")</Condition> </FaultRule>
Política SOAPMessageValidation
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.messagevalidation.SourceMessageNotAvailable |
500 |
Este error se produce si una variable especificada en el elemento
|
build |
steps.messagevalidation.NonMessageVariable |
500 |
Este error ocurre si el elemento Las variables del tipo de mensaje representan respuestas y solicitudes HTTP completas. Las variables de flujo integradas de Apigee |
build |
steps.messagevalidation.Failed |
500 | Este error se produce si la política SOAPMessageValidation no valida la carga útil del mensaje de entrada en función del esquema XSD o la definición WSDL. También ocurrirá si hay JSON o XML de formato incorrecto en el mensaje de carga útil. | build |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidResourceType |
El elemento <ResourceURL> en la política SOAPMessageValidation se establece en un tipo de recurso que no es compatible con la política.
|
build |
ResourceCompileFailed |
La secuencia de comandos de recursos a la que se hace referencia en el elemento <ResourceURL> de la política SOAPMessageValidation contiene un error que impide que se compile.
|
build |
RootElementNameUnspecified |
El elemento <Element> en la política SOAPMessageValidation no contiene el nombre del elemento raíz. |
build |
InvalidRootElementName |
El elemento <Element> en la política SOAPMessageValidation contiene un nombre de elemento raíz que no cumple con las reglas XML para nombrar nombres de elementos válidos. |
build |
Política de SpikeArrest
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
policies.ratelimit.FailedToResolveSpikeArrestRate |
500 |
Este error se produce si la referencia a la variable que contiene la configuración de tarifa dentro del elemento <Rate> no se puede resolver en un valor dentro de la política SpikeArrest . Este elemento es obligatorio y se usa para especificar el índice de protección contra aumentos de tráfico en el formato de intpm o intps . |
build |
policies.ratelimit.InvalidMessageWeight |
500 |
Este error se produce si el valor especificado para el elemento <MessageWeight> a través de una variable de flujo no es válido (un número no entero). |
build |
policies.ratelimit.SpikeArrestViolation |
429 |
Se superó el límite de frecuencia. |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidAllowedRate |
Si la tasa de interrupción de aumento de tráfico especificada en el elemento <Rate> de la política SpikeArrest no es un número entero o si la tasa no tiene ps o pm como sufijo, la implementación del proxy de API falla. |
build |
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "SpikeArrestViolation" |
ratelimit.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | ratelimit.SA-SpikeArrestPolicy.failed = true |
Ejemplo de respuesta de error
A continuación, se muestra un ejemplo de respuesta de error:
{ "fault":{ "detail":{ "errorcode":"policies.ratelimit.SpikeArrestViolation" }, "faultstring":"Spike arrest violation. Allowed rate : 10ps" } }
Ejemplo de regla de falla
A continuación, se muestra un ejemplo de regla de falla para manejar una falla de SpikeArrestViolation
:
<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>
Política de VerifyAPIKey
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa |
---|---|---|
keymanagement.service.consumer_key_missing_api_product_association |
400 |
A la credencial de la aplicación le falta una asociación de producto de API. Asocia la aplicación de la clave a un producto de API. Ten en cuenta que esto se aplica a todos los tipos de aplicación, como las apps para desarrolladores y las apps de AppGroups. |
keymanagement.service.DeveloperStatusNotActive |
401 |
El desarrollador que creó la app de desarrollador que tiene la clave de API que usas tiene un estado inactivo. Cuando el estado del desarrollador de una app se establece como inactivo, se desactivan todas las apps para desarrolladores que creó ese desarrollador. Un usuario administrador con los permisos adecuados (como administrador de la organización) puede cambiar el estado de un desarrollador de las siguientes maneras:
|
keymanagement.service.invalid_client-app_not_approved |
401 |
Se revoca la app de desarrollador asociada con la clave de API. Una app revocada no puede acceder a ningún producto de API ni invocar APIs administradas por Apigee. Un administrador de la organización puede cambiar el estado de una app para desarrolladores con la API de Apigee. Consulta Genera pares de claves o actualizar el estado de las apps para desarrolladores. |
oauth.v2.FailedToResolveAPIKey |
401 |
La política espera encontrar la clave de API en una variable que se especifica en el elemento <APIKey> de la política. Este error surge cuando la variable esperada no existe (no se puede resolver). |
oauth.v2.InvalidApiKey |
401 |
Apigee recibió una clave de API, pero no es válida. Cuando Apigee busca la clave en su base de datos, debe coincidir de forma exacta con la que se envió en la solicitud. Si la API funcionó antes, asegúrate de que no se haya vuelto a generar la clave. Si se volvió a generar la clave, verás este error si intentas usar la clave antigua. Para obtener más información, consulta Controla el acceso a tus APIs mediante el registro de apps. |
oauth.v2.InvalidApiKeyForGivenResource |
401 |
Apigee recibió una clave de API y es válida, pero no coincide con una clave aprobada en la app para desarrolladores asociada con el proxy de API a través de un producto. |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa |
---|---|
SpecifyValueOrRefApiKey |
El elemento <APIKey> no tiene un valor ni una clave especificados. |
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "FailedToResolveAPIKey" |
oauthV2.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | oauthV2.VK-VerifyAPIKey.failed = true |
Ejemplos de respuesta de errores
{ "fault":{ "faultstring":"Invalid ApiKey", "detail":{ "errorcode":"oauth.v2.InvalidApiKey" } } }
{ "fault":{ "detail":{ "errorcode":"keymanagement.service.DeveloperStatusNotActive" }, "faultstring":"Developer Status is not Active" } }
Ejemplo de regla de falla
<FaultRule name="FailedToResolveAPIKey"> <Step> <Name>AM-FailedToResolveAPIKey</Name> </Step> <Condition>(fault.name Matches "FailedToResolveAPIKey") </Condition> </FaultRule>
Política VerifyIAM
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Lo que necesitas saber sobre los errores de políticas y Controla fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa |
---|---|---|
steps.verifyiam.CredentialSourceRefUnresolved |
400 |
No se pudo resolver la variable de flujo proporcionada dentro de la fuente de credenciales. |
steps.verifyiam.CredentialValueNotProvided |
400 |
No se encontró la credencial. Si no se proporciona la referencia de la fuente de credenciales, buscamos el lugar predeterminado como el encabezado de autorización. |
steps.verifyiam.Forbidden |
403 |
No se pudo reenviar la solicitud debido a que no hay permisos suficientes, faltan permisos de acceso o cualquier otro problema relacionado. |
steps.verifyiam.MiscellaneousAuthorizationConfigurationError |
500 |
Hay un problema con la solicitud de autenticación a IAM. El productor de la API debe corregir este error según los detalles de la respuesta de error. |
steps.verifyiam.Unauthorized |
401 |
Hay un problema con la credencial, por ejemplo, el valor no es válido o venció. |
steps.verifyiam.UnexpectedAuthorizationInfrastructureError |
500 |
Error interno. |
Errores en la implementación
Esta política no muestra ningún error de implementación específico de la política.
Variables con fallas
Estas variables se configuran cuando esta política activa un error en el entorno de ejecución.
Variables | Dónde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name="Unauthorized" |
verifyiam.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | verifyiam.Verify-IAMToken.failed = true |
Política VerifyJWS
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Ocurre cuando |
---|---|---|
steps.jws.AlgorithmInTokenNotPresentInConfiguration |
401 |
Se produce cuando la política de verificación tiene varios algoritmos. |
steps.jws.AlgorithmMismatch |
401 |
El algoritmo especificado en el encabezado de la política Generate no coincide con el esperado en la política Verify . Los algoritmos especificados deben coincidir. |
steps.jws.ContentIsNotDetached |
401 |
<DetachedContent> se especifica cuando el JWS no contiene una carga útil de contenido desconectado. |
steps.jws.FailedToDecode |
401 |
La política no pudo decodificar el JWS. Es posible que el JWS esté dañado. |
steps.jws.InsufficientKeyLength |
401 |
En el caso de una clave de menos de 32 bytes para el algoritmo HS256 |
steps.jws.InvalidClaim |
401 |
Para una reclamación faltante o una falta de coincidencia de una reclamación, o bien un encabezado faltante o una falta de coincidencia de un encabezado. |
steps.jws.InvalidCurve |
401 |
La curva especificada por la clave no es válida para el algoritmo de curva elíptica. |
steps.jws.InvalidJsonFormat |
401 |
Se encontró un archivo JSON que no es válido en el encabezado JWS. |
steps.jws.InvalidJws |
401 |
Este error ocurre cuando falla la verificación de la firma del JWS. |
steps.jws.InvalidPayload |
401 |
La carga útil JWS no es válida. |
steps.jws.InvalidSignature |
401 |
<DetachedContent> se omite y la JWS tiene una carga útil de contenido desconectada. |
steps.jws.KeyIdMissing |
401 |
La política Verify usa un JWKS como fuente para las claves públicas, pero el JWT firmado no incluye una propiedad kid en el encabezado. |
steps.jws.KeyParsingFailed |
401 |
No se pudo analizar la clave pública a partir de la información de claves determinada. |
steps.jws.MissingPayload |
401 |
Falta la carga útil JWS. |
steps.jws.NoAlgorithmFoundInHeader |
401 |
Ocurre cuando el JWS omite el encabezado del algoritmo. |
steps.jws.NoMatchingPublicKey |
401 |
La política Verify usa un JWKS como fuente para claves públicas, pero kid en el JWS firmado no aparece en el JWKS. |
steps.jws.UnhandledCriticalHeader |
401 |
Un encabezado que encontró la política de verificación de JWS en el encabezado crit no aparece en KnownHeaders . |
steps.jws.UnknownException |
401 |
Se produjo una excepción desconocida. |
steps.jws.WrongKeyType |
401 |
El tipo de clave especificado es incorrecto. Por ejemplo, si especificas una clave RSA para un algoritmo de curva elíptica o una clave de curva para un algoritmo de RSA. |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Ocurre cuando |
---|---|
InvalidAlgorithm |
Los únicos valores válidos son RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512,
HS256, HS384, HS512 . |
|
Otros errores de implementación posibles. |
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "TokenExpired" |
JWS.failed |
Todas las políticas de JWS establecen la misma variable en caso de falla. | jws.JWS-Policy.failed = true |
Ejemplo de respuesta de error
Para controlar errores, se recomienda capturar la parte errorcode
de la respuesta de error. No dependas del texto en la faultstring
, ya que podría cambiar.
Ejemplo de regla de falla
<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>
Política de VerifyJWT
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Ocurre cuando |
---|---|---|
steps.jwt.AlgorithmInTokenNotPresentInConfiguration |
401 |
Se produce cuando la política de verificación tiene varios algoritmos. |
steps.jwt.AlgorithmMismatch |
401 |
El algoritmo especificado en la política Generate no coincide con el esperado en la política Verify . Los algoritmos especificados deben coincidir. |
steps.jwt.FailedToDecode |
401 |
La política no pudo decodificar el JWT. Es posible que el JWT esté dañado. |
steps.jwt.GenerationFailed |
401 |
La política no pudo generar el JWT. |
steps.jwt.InsufficientKeyLength |
401 |
En el caso de las claves inferiores a 32 bytes para el algoritmo HS256, menos de 48 bytes para el algoritmo HS386 y menos de 64 bytes para el algoritmo HS512. |
steps.jwt.InvalidClaim |
401 |
Para una reclamación faltante o una falta de coincidencia de una reclamación, o bien un encabezado faltante o una falta de coincidencia de un encabezado. |
steps.jwt.InvalidConfiguration |
401 |
Los elementos <Algorithm> y <Algorithms> están presentes. |
steps.jwt.InvalidCurve |
401 |
La curva especificada por la clave no es válida para el algoritmo de curva elíptica. |
steps.jwt.InvalidIterationCount |
401 |
El recuento de iteraciones que se usó en el JWT encriptado no es igual al recuento de iteraciones especificado en la configuración de la política VerifyJWT. Esto se aplica solo al JWT que usa <PasswordKey> . |
steps.jwt.InvalidJsonFormat |
401 |
Se encontró un archivo JSON que no es válido en el encabezado o la carga útil. |
steps.jwt.InvalidKeyConfiguration |
401 |
JWKS en el elemento <PublicKey> no es válido. El motivo podría ser que no se puede acceder al extremo del URI de JWKS desde la instancia de Apigee. Prueba la conectividad al extremo mediante la creación de un proxy de transferencia y el uso del extremo JWKS como objetivo. |
steps.jwt.InvalidSaltLength |
401 |
La longitud de salt que se usó en el JWT encriptado no es igual a la longitud de salt especificada en la configuración de la política VerifyJWT. Esto se aplica solo al JWT que usa <PasswordKey> . |
steps.jwt.InvalidPasswordKey |
401 |
La clave especificada no cumplió con los requisitos. |
steps.jwt.InvalidPrivateKey |
401 |
La clave especificada no cumplió con los requisitos. |
steps.jwt.InvalidPublicKey |
401 |
La clave especificada no cumplió con los requisitos. |
steps.jwt.InvalidSecretKey |
401 |
La clave especificada no cumplió con los requisitos. |
steps.jwt.InvalidToken |
401 |
Este error ocurre cuando falla la verificación de la firma del JWT. |
steps.jwt.JwtAudienceMismatch |
401 |
La reclamación del público falló en la verificación del token. |
steps.jwt.JwtIssuerMismatch |
401 |
La reclamación de la entidad emisora falló durante la verificación del token. |
steps.jwt.JwtSubjectMismatch |
401 |
La reclamación de la entidad falló durante la verificación del token. |
steps.jwt.KeyIdMissing |
401 |
La política Verify usa un JWKS como fuente para las claves públicas, pero el JWT firmado no incluye una propiedad kid en el encabezado. |
steps.jwt.KeyParsingFailed |
401 |
No se pudo analizar la clave pública a partir de la información de claves determinada. |
steps.jwt.NoAlgorithmFoundInHeader |
401 |
Ocurre cuando el JWT no contiene un encabezado de algoritmo. |
steps.jwt.NoMatchingPublicKey |
401 |
La política Verify usa un JWKS como fuente para claves públicas, pero kid en el JWT firmado no aparece en el JWKS. |
steps.jwt.SigningFailed |
401 |
En GenerateJWT, ocurre en el caso de una clave que es menor que el tamaño mínimo para los algoritmos HS384 o HS512. |
steps.jwt.TokenExpired |
401 |
La política intenta verificar un token vencido. |
steps.jwt.TokenNotYetValid |
401 |
El token aún no es válido. |
steps.jwt.UnhandledCriticalHeader |
401 |
Un encabezado que encontró la política de verificación de JWT en el encabezado crit no aparece en KnownHeaders . |
steps.jwt.UnknownException |
401 |
Se produjo una excepción desconocida. |
steps.jwt.WrongKeyType |
401 |
El tipo de clave especificado es incorrecto. Por ejemplo, si especificas una clave RSA para un algoritmo de curva elíptica o una clave de curva para un algoritmo de RSA. |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
InvalidNameForAdditionalClaim |
La implementación fallará si la reclamación que se usa en el elemento secundario <Claim> del elemento <AdditionalClaims> es uno de los siguientes nombres registrados: kid , iss , sub , aud , iat , exp , nbf o jti . |
build |
InvalidTypeForAdditionalClaim |
Si la reclamación usada en el elemento secundario <Claim> del elemento <AdditionalClaims> no es del tipo string , number , boolean ni map , la implementación fallará. |
build |
MissingNameForAdditionalClaim |
Si no se especifica el nombre de la reclamación en el elemento secundario <Claim> del elemento <AdditionalClaims> , fallará la implementación. |
build |
InvalidNameForAdditionalHeader |
Este error ocurre cuando el nombre de la reclamación que se usó en el elemento secundario <Claim> del elemento <AdditionalClaims> es alg o typ . |
build |
InvalidTypeForAdditionalHeader |
Si el tipo de reclamación usado en el elemento secundario <Claim> del elemento <AdditionalClaims> no es del tipo string , number , boolean ni map , la implementación fallará. |
build |
InvalidValueOfArrayAttribute |
Este error ocurre cuando el valor del atributo de arreglo en el elemento secundario <Claim> del elemento <AdditionalClaims> no está configurado como true ni false . |
build |
InvalidValueForElement |
Si el valor especificado en el elemento <Algorithm> no es un valor admitido, la implementación fallará. |
build |
MissingConfigurationElement |
Este error se producirá si el elemento <PrivateKey> no se usa con algoritmos de la familia RSA o si el elemento <SecretKey> no se usa con algoritmos de la familia HS. |
build |
InvalidKeyConfiguration |
Si el elemento secundario <Value> no está definido en los elementos <PrivateKey> ni <SecretKey> , la implementación fallará. |
build |
EmptyElementForKeyConfiguration |
Si el atributo de referencia del elemento secundario <Value> de los elementos <PrivateKey> o <SecretKey> está vacío o no se especifica, la implementación fallará. |
build |
InvalidConfigurationForVerify |
Este error se genera si el elemento <Id> se define dentro del elemento <SecretKey> .
|
build |
InvalidEmptyElement |
Este error se produce si el elemento <Source> de la política Verificar JWT está vacío. Si está presente, se debe definir con un nombre de variable de flujo de Apigee.
|
build |
InvalidPublicKeyValue |
Si el valor que se usa en el elemento secundario <JWKS> del elemento <PublicKey> no usa un formato válido como se especifica en RFC 7517, la implementación fallará.
|
build |
InvalidConfigurationForActionAndAlgorithm |
Si el elemento <PrivateKey> se usa con algoritmos de la familia HS o el elemento <SecretKey> se usa con algoritmos de la familia RSA, la implementación fallará. |
build |
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "InvalidToken" |
JWT.failed |
Todas las políticas de JWT establecen la misma variable en caso de falla. | JWT.failed = true |
Ejemplo de respuesta de error
Para controlar errores, se recomienda capturar la parte errorcode
de la respuesta de error. No dependas del texto en la faultstring
, ya que podría cambiar.
Ejemplo de regla de falla
<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>
Política XMLThreatProtection
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.xmlthreatprotection.ExecutionFailed |
500 |
La política XMLThreatProtection puede generar muchos tipos de errores ExecutionFailed .
La mayoría de estos errores se generan cuando se supera un límite específico establecido en la política. Estos tipos de errores incluyen: la longitud del nombre del elemento, el recuento secundario, profundidad del nodo, el recuento de atributos, la longitud del nombre del atributo y entre otros. Puedes ver la lista completa en el artículo Solución de problemas de errores del entorno de ejecución de la política XMLThreatProtection.
|
build |
steps.xmlthreatprotection.InvalidXMLPayload |
500 |
Este error se genera si la carga útil del mensaje de entrada que especifica el elemento <Source> de la política XMLThreatProtection no es un documento XML válido.
|
build |
steps.xmlthreatprotection.SourceUnavailable |
500 |
Este error se genera si la variable mensaje especificada en el elemento <Source> :
|
build |
steps.xmlthreatprotection.NonMessageVariable |
500 |
Este error se genera si el elemento <Source> se configura como una variable que no es del tipo mensaje. |
build |
Errores en la implementación
Ninguno
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name Matches "SourceUnavailable" |
xmlattack.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | xmlattack.XPT-SecureRequest.failed = true |
Ejemplo de respuesta de error
{ "fault": { "faultstring": "XMLThreatProtection[XPT-SecureRequest]: Execution failed. reason: XMLThreatProtection[XTP-SecureRequest]: Exceeded object entry name length at line 2", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Ejemplo de regla de falla
<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>
Política XMLtoJSON
En esta sección, se describen los códigos de falla y los mensajes de error que se muestran, y las variables de falla que establece Apigee cuando esta política activa un error. Esta información es importante para saber si estás desarrollando reglas de fallas con el propósito de manejar fallas. Para obtener más información, consulta Qué debes saber sobre los errores de políticas y Cómo solucionar fallas.
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.xmltojson.ExecutionFailed |
ExecutionFailed |
Este error se produce cuando la carga útil de entrada (XML) está vacía o el XML de entrada no es válido o presenta errores de formato. | build |
steps.xmltojson.InCompatibleTypes |
ExecutionFailed |
Este error se genera si el tipo de variable definida en el elemento <Source> y el elemento <OutputVariable> no son iguales. Es obligatorio que el tipo de variables incluidas dentro del elemento <Source> y el elemento <OutputVariable> coincidan.
|
build |
steps.xmltojson.InvalidSourceType |
ExecutionFailed |
Este error ocurre si el tipo de variable que se usa para definir el elemento <Source> no es válido. Los tipos válidos de variables son mensajes y strings. |
build |
steps.xmltojson.OutputVariableIsNotAvailable |
ExecutionFailed |
Este error se genera si la variable especificada en el elemento <Source> de la política de XML a JSON es de tipo string y no se define el elemento <OutputVariable> .
El elemento <OutputVariable> es obligatorio cuando la variable definida en el elemento <Source> es de tipo de string. |
build |
steps.xmltojson.SourceUnavailable |
ExecutionFailed |
Este error ocurre si la variable mensaje especificada en el elemento <Source> de la política XML a JSON presenta alguna de las siguientes características:
|
build |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
EitherOptionOrFormat |
Si uno de los elementos <Options> o <Format> no se declara en la política de XML a JSON, la implementación del proxy de API falla.
|
build |
UnknownFormat |
Si el elemento <Format> dentro de la política de XML a JSON tiene un formato definido, la implementación del proxy de API falla. Los formatos predefinidos incluyen xml.com , yahoo , google y badgerFish .
|
build |
Variables con fallas
Estas variables se configuran cuando se genera un error de entorno de ejecución. Para obtener más información, consulta Qué debes saber sobre los errores de la política.
Variables | Donde | Ejemplo |
---|---|---|
fault.name="fault_name" |
fault_name es el nombre de la falla, como se indica en la tabla de Errores del entorno de ejecución anterior. El nombre de la falla es la última parte del código de la falla. | fault.name = "SourceUnavailable" |
xmltojson.policy_name.failed |
policy_name es el nombre especificado por el usuario de la política que generó la falla. | xmltojson.XMLtoJSON-1.failed = true |
Ejemplo de respuesta de error
{ "fault": { "faultstring": "XMLToJSON[XMLtoJSON-1]: Source xyz is not available", "detail": { "errorcode": "steps.xml2json.SourceUnavailable" } } }
Ejemplo de regla de falla
<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>
Política XSLTransform
Errores de entorno de ejecución
Estos errores pueden producirse cuando se ejecuta la política.
Código de falla | Estado de HTTP | Causa | Corregir |
---|---|---|---|
steps.xsl.XSLSourceMessageNotAvailable |
500 |
Este error se produce si el mensaje o la variable de string especificada en el elemento <Source> de la política XSLTransform está fuera del alcance (no está disponible en el flujo específico donde se ejecuta la política) o no se puede resolver (no está definido).
|
build |
steps.xsl.XSLEvaluationFailed |
500 |
Este error se produce si la carga útil del archivo XML de entrada no está disponible o tiene una forma incorrecta o si la política XSLTransform falla o no puede transformar el archivo XML de entrada según las reglas de transformación proporcionadas en el archivo XSL. Puede haber muchas causas diferentes por las cuales la política XSLTransform puede fallar. El motivo de la falla en el mensaje de error proporcionará más información sobre la causa. | build |
Errores en la implementación
Estos errores pueden generarse cuando implementas un proxy que contiene esta política.
Nombre del error | Causa | Corregir |
---|---|---|
XSLEmptyResourceUrl |
Si el elemento <ResourceURL> en la política XSLTransform está vacío, la implementación del proxy de API falla. |
build |
XSLInvalidResourceType |
Si el tipo de recurso especificado en el elemento <ResourceURL> de la política de XSLTransform no es del tipo xsl , la implementación del proxy de API falla. |
build |