Está a ver a documentação do Apigee e do Apigee Hybrid.
Ver documentação do
Apigee Edge.
ExecutionFailed
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition policy_name: Execution failed. Reason: error_description at line line_num (possibly around char char_num)", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: Premature end of document while parsing at line 5(possibly around char 0)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Tipos de erros e possíveis causas
A política XMLThreatProtection pode gerar muitos tipos diferentes de erros ExecutionFailed. A tabela abaixo apresenta os diferentes tipos de erros e as respetivas causas possíveis:
Erro | Causa |
ElementNameExceeded | O comprimento máximo da string permitido numa etiqueta XML foi excedido. |
ChildCountExceeded | O número máximo de elementos subordinados permitidos num payload XML foi excedido. |
NodeDepthExceeded | A profundidade máxima de elementos XML permitida num payload XML foi excedida. |
AttributeCountExceeded | O número máximo de atributos num único elemento foi excedido. |
AttributeNameExceeded | O comprimento máximo permitido para um nome de atributo foi excedido. |
AttributeValueExceeded | O comprimento máximo permitido para um valor de atributo foi excedido. |
TextExceeded | O comprimento máximo permitido para texto foi excedido. |
CommentExceeded | O comprimento máximo permitido para um comentário foi excedido. |
PIDataExceeded | O comprimento dos dados das instruções de processamento permitidos foi excedido. |
PITargetExceeded | O comprimento do nome da instrução do processo foi excedido. |
NSURIExceeded | O comprimento do URL do espaço de nomes foi excedido. |
NSPrefixExceeded | O comprimento do prefixo do espaço de nomes foi excedido. |
NSCountExceeded | O número de espaços de nomes usados num único elemento foi excedido. |
Payload XML inválido | A carga útil XML de entrada é inválida. |
ElementNameExceeded
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
O tráfego de tempo de execução devolve um código de resposta 500 com o seguinte erro:
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition policy_name: Execution failed. reason: XMLThreatProtection stepDefinition policy_name: Element name length exceeded num at line line_num(possibly around char char_num)", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Element name length exceeded 5 at line 1(possibly around char 9)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Este erro ocorre se a carga útil de entrada especificada pelo elemento <Source>
da política contiver elementos XML que excedam o comprimento máximo especificado no elemento <Element>
abaixo do elemento <NameLimits>
.
Por exemplo, se o elemento <Element>
for especificado como 5
na política XMLThreatProtection, mas a carga útil de entrada tiver um elemento com mais de 5 carateres, é gerado este erro.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política XMLThreatProtection, o número da linha e o possível número de carateres na carga útil de entrada onde o comprimento do elemento foi excedido.
Por exemplo, na seguinte mensagem de erro, o nome da política é
XML-Threat-Protection-1,
, o número da linha na carga útil é1
e o possível número de carateres é9.
XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Element name length exceeded 5 at line 1(possibly around char 9)
Examine a política com falhas (identificada no passo 1) e tome nota do valor especificado no elemento
<Element>
.Por exemplo, na seguinte política XMLThreatProtection,
<Element>
está definido como5
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>5</Element> <Attribute>5</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>request</Source> <StructureLimits> <NodeDepth>5</NodeDepth> <AttributeCountPerElement>2</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>15</Text> <Attribute>10</Attribute> <NamespaceURI>10</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>10</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Examine o número da linha específico (identificado no passo 1) da carga útil de entrada e verifique se o comprimento do elemento nessa linha é superior ao valor especificado para o elemento
<Element>
(identificado no passo 2). Se o comprimento do elemento exceder este valor, essa é a causa do erro.Segue-se um exemplo de um payload de entrada:
<company> <name>Example</name> <country>USA</country> </company>
A carga útil XML apresentada acima tem um elemento raiz denominado
company
na linha 1 com 7 carateres. Uma vez que o comprimento do elemento é superior a 5 (o valor especificado para o elemento<Element>
), recebe o seguinte erro:XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Element name length exceeded 5 at line 1(possibly around char 9)
Resolução
Se a política XMLThreadProtection se destinar a proteger contra payloads com nomes de elementos que excedam o valor definido, a mensagem de erro é esperada. Neste caso, não é necessária nenhuma ação adicional.
No entanto, se determinar que é possível especificar elementos mais longos no payload sem qualquer consequência, modifique <Element>
para um valor adequado com base nos seus requisitos.
Por exemplo, se considerar que pode permitir elementos com um comprimento máximo de 10, modifique a política XMLThreatProtection da seguinte forma:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>5</Attribute>
<NamespacePrefix>10</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>5</NodeDepth>
<AttributeCountPerElement>2</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>15</Text>
<Attribute>10</Attribute>
<NamespaceURI>10</NamespaceURI>
<Comment>10</Comment>
<ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
ChildCountExceeded
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition policy_name: Execution failed. reason: XMLThreatProtection stepDefinition policy_name: Children count exceeded num at line num(possibly around char num)", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Children count exceeded 3 at line 5(possibly around char 89)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Este erro ocorre se a carga útil da mensagem de entrada especificada pelo elemento <Source>
contiver um elemento XML que contenha mais elementos subordinados do que o valor especificado no elemento <ChildCount>
da política.
Por exemplo, se o elemento <ChildCount>
for 3, mas a carga útil XML de entrada tiver um elemento com mais de 3 elementos secundários, é apresentado este erro.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política XMLThreatProtection e o número da linha onde a contagem de entradas é excedida. Por exemplo, na seguinte mensagem de erro, o nome da política é
XML-Threat-Protection-1
e o número da linha no payload é5
:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Children count exceeded 3 at line 5(possibly around char 89)"
Examine a política com falhas (identificada no passo 1) e tome nota do valor especificado no elemento
<ChildCount>
.No exemplo de política seguinte,
<ChildCount>
está definido como3
(tenha em atenção que os comentários, os elementos incluídos e outros contam para este limite):<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>5</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>request</Source> <StructureLimits> <NodeDepth>5</NodeDepth> <AttributeCountPerElement>2</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>15</Text> <Attribute>10</Attribute> <NamespaceURI>10</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>10</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Examine o número de linha específico (identificado no passo 1) da carga útil de entrada e verifique se o número de elementos subordinados (incluindo todos os comentários, etc.) na carga útil é superior ao valor especificado para o elemento
<ChildCount>
(identificado no passo 2). Se o número de elementos secundários exceder a contagem de elementos secundários, essa é a causa do erro.Segue-se um exemplo de um payload de entrada:
<movie> <title>Jurassic Park</title> <language>English</language> <country>USA</country> <director>Steven Spielberg</director> </movie>
No payload XML apresentado acima, a linha 5 contém um quarto elemento subordinado
<director>
do elemento raiz<movie>
. Uma vez que a contagem de elementos subordinados na carga útil XML de entrada é superior a 3 (o valor especificado para o elemento<ChildCount>
), recebe o seguinte erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Children count exceeded 3 at line 5(possibly around char 89)
Resolução
Se a política XMLThreatProtection se destinar a proteger contra payloads com uma contagem de elementos secundários que exceda um limite específico, a mensagem de erro é esperada. Neste caso, não tem de fazer mais nada.
No entanto, se determinar que é possível incluir um número maior de elementos secundários (incluindo comentários, etc.) no payload sem qualquer consequência, modifique o <ChildCount>
para um valor adequado com base nos seus requisitos.
Por exemplo, se achar que pode permitir até 10 elementos secundários, modifique a política XMLThreatProtection da seguinte forma:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>5</Attribute>
<NamespacePrefix>10</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>5</NodeDepth>
<AttributeCountPerElement>2</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">10</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>15</Text>
<Attribute>10</Attribute>
<NamespaceURI>10</NamespaceURI>
<Comment>10</Comment>
<ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
NodeDepthExceeded
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]: Node depth exceeded [num] at line [num](possibly around char [num])", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Node depth exceeded 5 at line 6(possibly around char 110)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Este erro ocorre se a carga útil da mensagem de entrada especificada pelo elemento <Source>
contiver um documento XML em que a hierarquia de nós excede o número especificado no elemento <NodeDepth>
da política XMLThreatProtection.
Por exemplo, se o elemento <NodeDepth>
for especificado como 4
na política, mas o payload de entrada tiver uma profundidade do nó que exceda 4
, este erro é lançado.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política XMLThreatProtection e o número da linha onde a profundidade do nó é excedida. Por exemplo, na seguinte mensagem de erro, o nome da política é
XML-Threat-Protection-1
e o número da linha no payload é6
:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Node depth exceeded 5 at line 6(possibly around char 109)
Examine a política XMLThreatProtection com falha (identificada no passo 1) e tome nota do valor especificado no elemento
<NodeDepth>
.No exemplo de política XMLThreatProtection seguinte,
<NodeDepth>
está definido como5
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>5</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>request</Source> <StructureLimits> <NodeDepth>5</NodeDepth> <AttributeCountPerElement>2</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>15</Text> <Attribute>10</Attribute> <NamespaceURI>10</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>10</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Examine o número da linha específico (identificado no passo 1) da carga útil de entrada e verifique se a profundidade do nó especificada aí tem uma contagem superior ao número especificado no elemento
<NodeDepth>
(identificado no passo 2). Se o nível de elementos secundários XML exceder a contagem, essa é a causa do erro.Segue-se um exemplo de um payload de entrada:
<hellos> <hello1> <wave1> <wave2> <wave3> <wave4> <wave5>wave</wave5> </wave4> </wave3> </wave2> </wave1> </hello1> <hello2>world2</hello2> <hello3>world3</hello3> <hello4>world4</hello4> <hello5>world5</hello5> <hello6>world6</hello6> </hellos>
A carga útil XML apresentada acima, na linha 6, tem uma profundidade de nó de 6.
.
Uma vez que a profundidade de nó é superior a 5 (o valor especificado para o elemento<NodeDepth>
), recebe o seguinte erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Node depth exceeded 5 at line 6(possibly around char 109)
Resolução
Se a política XMLThreatProtection se destinar a proteger contra payloads com o limite de profundidade do nó específico, a mensagem de erro é esperada. Neste caso, não é necessária nenhuma ação adicional.
No entanto, se determinar que pode permitir uma profundidade do nó maior, modifique <NodeDepth>
para um valor adequado com base nos seus requisitos.
Por exemplo, se considerar que pode permitir uma profundidade do nó de até 10, modifique a política da seguinte forma:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>5</Attribute>
<NamespacePrefix>10</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>10</NodeDepth>
<AttributeCountPerElement>2</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>15</Text>
<Attribute>10</Attribute>
<NamespaceURI>10</NamespaceURI>
<Comment>10</Comment>
<ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
AttributeCountExceeded
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]: Attribute count exceeded [num] at line [num](possibly around char [num])", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Attribute count exceeded 2 at line 3(possibly around char 105)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Este erro ocorre se a carga útil da mensagem de entrada especificada pelo elemento <Source>
da política XMLThreatProtection contiver um documento XML em que o número de atributos de um único elemento excede o número especificado no elemento <AttributeCountPerElement>
da política.
Por exemplo, se o elemento <AttributeCountPerElement>
for especificado como 2
na política XMLThreatProtection, mas a carga útil de entrada tiver um elemento com mais de 2 atributos, é gerado este erro.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política XMLThreatProtection e o número da linha em que o número de atributos é excedido. Por exemplo, na seguinte mensagem de erro, o nome da política é
XMLThreat-Protection-1
e o número da linha no payload é3
:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Attribute count exceeded 2 at line 3(possibly around char 105)
Examine a política com falha (identificada no passo 1) e tome nota do valor especificado no elemento
<AttributeCountPerElement>
.No exemplo de política seguinte,
<AttributeCountPerElement>
está definido como2
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>5</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>request</Source> <StructureLimits> <NodeDepth>10</NodeDepth> <AttributeCountPerElement>2</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>15</Text> <Attribute>10</Attribute> <NamespaceURI>10</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>10</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Examine o número da linha específico (identificado no passo 1) da carga útil de entrada e verifique se o número de atributos especificado excede o número especificado no elemento
<AttributeCountPerElementh>
(identificado no passo 2). Se o número de atributos exceder a contagem, essa é a causa do erro.Segue-se um exemplo de um payload de entrada:
<?xml version="1.0" encoding="UTF-8"?> <bookstore> <book category="cooking" cuisine="Indian" lang="en"> <title>Easy Indian Cooking</title> <author>Suneeta</author> <year>2004</year> <price>300.00</price> </book> </bookstore>
A carga útil XML apresentada acima, na linha 3, tem um elemento com três atributos. Uma vez que a contagem de atributos é superior a 2 (o valor especificado para o elemento
<AttributeCountPerElement>
), recebe o seguinte erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Attribute count exceeded 2 at line 3(possibly around char 105)
Resolução
Se a política XMLThreatProtection se destinar a proteger contra payloads que excedam um número específico de atributos, a mensagem de erro é esperada. Neste caso, não é necessária nenhuma ação adicional.
No entanto, se determinar que é possível permitir um número maior de atributos, modifique <AttributeCountPerElement>
para um valor adequado com base nos seus requisitos.
Por exemplo, se considerar que pode permitir um número de atributos por elemento até 5, modifique a política da seguinte forma:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>5</Attribute>
<NamespacePrefix>10</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>10</NodeDepth>
<AttributeCountPerElement>5</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>15</Text>
<Attribute>10</Attribute>
<NamespaceURI>10</NamespaceURI>
<Comment>10</Comment>
<ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
AttributeNameExceeded
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]: Attribute name length exceeded [num] at line [num](possibly around char [num])", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Attribute name length exceeded 5 at line 3(possibly around char 105)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Este erro ocorre se a carga útil da mensagem de entrada especificada pelo elemento <Source>
da política XMLThreatProtection contiver um documento XML em que um nome de atributo excede o número de carateres especificado no elemento subordinado <Attribute>
do elemento <NameLimits>
da política.
Por exemplo, se o elemento <Attribute>
for especificado como 5
na política, mas o payload de entrada tiver um nome de atributo com mais de 5 carateres, é apresentado este erro.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política XMLThreatProtection e o número da linha em que o comprimento do nome do atributo é excedido. Por exemplo, na seguinte mensagem de erro, o nome da política é
XML-Threat-Protection-1
e o número da linha no payload é3
:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Attribute name length exceeded 5 at line 3(possibly around char 105)
Examine a política com falhas (identificada no passo 1) e tome nota do valor especificado no elemento
<Attribute>
No exemplo de política XMLThreatProtection seguinte,
<Attribute>
está definido como5
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>5</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>request</Source> <StructureLimits> <NodeDepth>10</NodeDepth> <AttributeCountPerElement>2</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>15</Text> <Attribute>10</Attribute> <NamespaceURI>10</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>10</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Examine o número de linha específico (identificado no passo 1) da carga útil de entrada e verifique se o comprimento do atributo especificado tem mais carateres do que o número especificado no elemento
<Attribute>
(identificado no passo 2). Se o número de carateres exceder o valor do atributo, essa é a causa do erro.Segue-se um exemplo de um payload de entrada:
<?xml version="1.0" encoding="UTF-8"?> <bookstore> <book category="cooking" cuisine="Indian" lang="en"> <title>Easy Indian Cooking</title> <author>Suneeta</author> <year>2004</year> <price>300.00</price> </book> </bookstore>
O payload XML apresentado acima, na linha 3, tem dois atributos
category
ecuisine
com um comprimento do nome de 8 e 7 carateres, respetivamente.
. Uma vez que o comprimento do nome do atributo é superior a 5 (o valor especificado para o elemento<Attribute>
), é apresentado o seguinte erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Attribute name length exceeded 5 at line 3(possibly around char 105)
Resolução
Se a política XMLThreatProtection se destinar a proteger contra payloads que excedam um comprimento específico do nome do atributo, a mensagem de erro é esperada. Neste caso, não é necessária nenhuma ação adicional.
No entanto, se determinar que é possível permitir um comprimento do nome do atributo superior, modifique <Attribute>
para um valor adequado com base nos seus requisitos.
Por exemplo, se achar que pode ter nomes de atributos com até 10 carateres, modifique a política da seguinte forma:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>10</Attribute>
<NamespacePrefix>10</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>10</NodeDepth>
<AttributeCountPerElement>5</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>15</Text>
<Attribute>10</Attribute>
<NamespaceURI>10</NamespaceURI>
<Comment>10</Comment>
<ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
AttributeValueExceeded
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]: Attribute value length exceeded [num] at line [num](possibly around char [num])", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Attribute value length exceeded 10 at line 3(possibly around char 111)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Este erro ocorre se a carga útil da mensagem de entrada especificada pelo elemento <Source>
da política contiver um documento XML em que um valor de atributo excede o número de carateres especificado no elemento subordinado <Attribute>
do elemento <ValueLimits>
.
Por exemplo, se o elemento <Attribute>
for especificado como 10
na política XMLThreatProtection, mas a carga útil de entrada tiver um valor de atributo com mais de 10 carateres, é gerado este erro.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política XMLThreatProtection e o número da linha em que o número de atributos é excedido. Por exemplo, na seguinte mensagem de erro, o nome da política é
XML-Threat-Protection-1
e o número da linha no payload é3
:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Attribute value length exceeded 10 at line 3(possibly around char 111)
Examine a política com falhas (identificada no passo 1) e tome nota do valor especificado no elemento subordinado
<Attribute>
do elemento<ValueLimits>
.No exemplo de política XMLThreatProtection seguinte,
<Attribute>
está definido como 10:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>5</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>request</Source> <StructureLimits> <NodeDepth>10</NodeDepth> <AttributeCountPerElement>2</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>15</Text> <Attribute>10</Attribute> <NamespaceURI>10</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>10</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Examine o número da linha específico (identificado no passo 1) da carga útil de entrada e verifique se o comprimento do valor do atributo especificado tem mais carateres do que o número especificado no elemento
<Attribute>
(identificado no passo 2). Se o número de carateres exceder o valor do atributo, essa é a causa do erro.Segue-se um exemplo de um payload de entrada:
<?xml version="1.0" encoding="UTF-8"?> <bookstore> <book category="cooking" cuisine="South Indian" lang="en"> <title>Easy Indian Cooking</title> <author>Suneeta</author> <year>2004</year> <price>300.00</price> </book> </bookstore>
A carga útil XML apresentada acima, na linha 3, tem um atributo (cuisine) com um comprimento de valor de 12 carateres. Uma vez que o comprimento do valor do atributo é superior a 10 (o valor especificado para o elemento
<Attribute>
), recebe o seguinte erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Attribute value length exceeded 10 at line 3(possibly around char 111)
Resolução
Se a política XMLThreatProtection se destinar a proteger contra payloads que excedam um comprimento de valor de atributo específico, a mensagem de erro é esperada. Neste caso, não é necessária nenhuma ação adicional.
No entanto, se determinar que é possível permitir valores de atributos mais longos, modifique o <Attribute>
elemento secundário do elemento <ValueLimits>
para um valor adequado com base nos seus requisitos.
Por exemplo, se considerar que pode atribuir valores de até 15 carateres, modifique a política da seguinte forma:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>10</Attribute>
<NamespacePrefix>10</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>10</NodeDepth>
<AttributeCountPerElement>5</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>15</Text>
<Attribute>15</Attribute>
<NamespaceURI>10</NamespaceURI>
<Comment>10</Comment>
<ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
TextExceeded
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]: Text length exceeded [num] at line [num](possibly around char [num])", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Text length exceeded 15 at line 4(possibly around char 66)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
Causa
Este erro ocorre se a carga útil da mensagem de entrada especificada pelo elemento <Source>
da política XMLThreatProtection contiver um documento XML em que o comprimento do texto de um elemento excede o número de carateres especificado no elemento subordinado <Text>
do elemento <ValueLimits>
da política.
Por exemplo, se o elemento <Text>
for especificado como 15
na política, mas o payload de entrada tiver um texto com mais de 15 carateres, é apresentado este erro.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política XMLThreatProtection e o número da linha em que o número de atributos é excedido. Por exemplo, na seguinte mensagem de erro, o nome da política é
XML-Threat-Protection-1
e o número da linha no payload é4
:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Text length exceeded 15 at line 4(possibly around char 66)
Examine a política com falhas (identificada no passo 1) e tome nota do valor especificado no elemento subordinado
<Text>
do elemento<ValueLimits>
.No exemplo de política XMLThreatProtection seguinte,
<Text>
está definido como15
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>5</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>request</Source> <StructureLimits> <NodeDepth>10</NodeDepth> <AttributeCountPerElement>2</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>15</Text> <Attribute>10</Attribute> <NamespaceURI>10</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>10</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Examine o número da linha específico (identificado no passo 1) da carga útil de entrada e verifique se o comprimento do valor do atributo especificado tem mais carateres do que o número especificado no elemento
<Text>
(identificado no passo 2). Se o número de carateres exceder o valor do atributo, essa é a causa do erro.<food> <name>Veg Sandwich</name> <price>$5.95</price> <description>Vegetarian Sandwich with onions, tomatoes and lettuce</description> <calories>650</calories> </food>
O payload XML apresentado acima, na linha 4, tem texto com um comprimento de 53 carateres. Uma vez que o comprimento do valor do atributo é superior a 15 (o valor especificado para o elemento
<Text>
), recebe o seguinte erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Text length exceeded 15 at line 4(possibly around char 66)
Resolução
Se a política XMLThreatProtection se destinar a proteger contra payloads que excedam um comprimento de texto específico, a mensagem de erro é esperada. Neste caso, não é necessária nenhuma ação adicional.
No entanto, se determinar que é possível permitir comprimentos de texto mais longos, modifique o <Text>
elemento secundário do elemento <ValueLimits>
para um valor adequado com base nos seus requisitos.
Por exemplo, se considerar que pode ter valores de atributos com até 60 carateres, modifique a política da seguinte forma:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>10</Attribute>
<NamespacePrefix>10</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>10</NodeDepth>
<AttributeCountPerElement>5</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>60</Text>
<Attribute>15</Attribute>
<NamespaceURI>10</NamespaceURI>
<Comment>10</Comment>
<ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
CommentExceeded
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]: Comment length exceeded [num] at line [num](possibly around char [num])", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Comment length exceeded 10 at line 2(possibly around char 48)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Este erro ocorre se a carga útil da mensagem de entrada especificada pelo elemento <Source>
da política XMLThreatProtection contiver um documento XML em que o comprimento de um comentário excede o número de carateres especificado no elemento secundário <Comment>
do elemento <ValueLimits>
da política.
Por exemplo, se o elemento <Comment>
for especificado como 10
na política, mas o payload de entrada tiver um comentário com mais de 10 carateres, este erro é gerado.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política XMLThreatProtection e o número da linha onde o comprimento do comentário é excedido. Por exemplo, na seguinte mensagem de erro, o nome da política é
XML-Threat-Protection-1
e o número da linha no payload é2
:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Comment length exceeded 10 at line 2(possibly around char 48)
Examine a política com falhas (identificada no passo 1) e tome nota do valor especificado no elemento subordinado
<Comment>
do elemento<ValueLimits>
.No exemplo de política XMLThreatProtection seguinte,
<Comment>
está definido como10
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>5</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>request</Source> <StructureLimits> <NodeDepth>10</NodeDepth> <AttributeCountPerElement>2</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>15</Text> <Attribute>10</Attribute> <NamespaceURI>10</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>10</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Examine o número da linha específico (identificado no passo 1) da carga útil de entrada e verifique se o comprimento do comentário especificado tem mais carateres do que o número especificado no elemento
<Comment>
(identificado no passo 2). Se o número de carateres exceder o valor do atributo, essa é a causa do erro.Segue-se um exemplo de um payload de entrada:
<food> <!--This is somewhat a long comment--> <name>Veg Sandwich</name> <price>$5.95</price> <description>Vegetarian Sandwich with onions, tomatoes and lettuce</description> <calories>650</calories> </food>
A carga útil XML apresentada acima, na linha 2, tem um comentário com um comprimento de valor de 31 carateres.
.
Uma vez que o comprimento do comentário é superior a 10 (o valor especificado para o elemento<Comment>
), recebe o seguinte erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Comment length exceeded 10 at line 2(possibly around char 48)
Resolução
Se a política XMLThreatProtection se destinar a proteger contra payloads que excedam um comprimento específico de comentários, a mensagem de erro é esperada. Neste caso, não é necessária nenhuma ação adicional.
No entanto, se determinar que é possível permitir um comentário mais longo, modifique o <Comment>
elemento secundário do elemento<ValueLimits>
para um valor adequado com base nos seus requisitos.
Por exemplo, se considerar que pode atribuir valores de até 40 carateres, modifique a política da seguinte forma:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>10</Attribute>
<NamespacePrefix>10</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>10</NodeDepth>
<AttributeCountPerElement>5</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>15</Text>
<Attribute>15</Attribute>
<NamespaceURI>10</NamespaceURI>
<Comment>40</Comment>
<ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
PIDataExceeded
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]: Processing Instruction data length exceeded [num] at line [num](possibly around char [num])", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Processing Instruction data length exceeded 30 at line 2(possibly around char 109)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Este erro ocorre se a carga útil da mensagem de entrada especificada pelo elemento <Source>
da política XMLThreatProtection contiver um documento XML em que uma instrução de dados de processamento excede o número de carateres especificado no elemento subordinado <ProcessingInstructionData>
do elemento <ValueLimits>
da política.
Por exemplo, se o elemento <ProcessingInstructionData>
for especificado como 10
na política XMLThreatProtection, mas a carga útil de entrada tiver uma instrução de processamento com mais de 10 carateres, é gerado este erro.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política XMLThreatProtection e o número da linha em que o comprimento da instrução de processamento é excedido. Por exemplo, na seguinte mensagem de erro, o nome da política é
XML-Threat-Protection-1
e o número da linha no payload é2
:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Processing Instruction data length exceeded 30 at line 2(possibly around char 109)
Examine a política com falhas (identificada no passo 1) e tome nota do valor especificado no elemento subordinado
<ProcessingInstructionData>
do elemento<ValueLimits>
.No exemplo de política XMLThreatProtection seguinte,
<ProcessingInstructionData>
está definido como30
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>5</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>request</Source> <StructureLimits> <NodeDepth>10</NodeDepth> <AttributeCountPerElement>2</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>15</Text> <Attribute>10</Attribute> <NamespaceURI>10</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>30</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Examine o número da linha específico (identificado no passo 1) da carga útil de entrada e verifique se o comprimento dos dados da instrução de processamento especificados aí tem mais carateres do que o número especificado no elemento
<ProcessingInstructionData>
(identificado no passo 2). Se o número de carateres exceder os dados da instrução de processamento, essa é a causa do erro.Segue-se um exemplo de um payload de entrada:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml-stylesheet type="text/xsl" href="mobilephones.xsl"?> <mobilephones> <mobilephone> <name>iPhone</name> <price>$600</price> </mobilephone> <mobilephone> <name>Samsung</name> <price>$500</price> </mobilephone> </mobilephones>
A carga útil XML apresentada acima, na linha 1, tem um elemento de dados de instruções de processamento (
type="text/xsl" href="mobilephones.xsl"?)
com um comprimento de 40 carateres.
). Uma vez que este comprimento é superior a 30 (o valor especificado para o elemento<ProcessingInstructionData>
), recebe o seguinte erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Processing Instruction data length exceeded 30 at line 2(possibly around char 109)
Resolução
Se a política XMLThreatProtection se destinar a proteger contra payloads que excedam um comprimento de dados de instruções de processamento específico, a mensagem de erro é esperada. Neste caso, não é necessária nenhuma ação adicional.
No entanto, se determinar que é possível permitir elementos de dados de instruções de processamento mais longos, modifique o elemento filho <ProcessingInstructionData>
do elemento <ValueLimits>
para um valor adequado com base nos seus requisitos.
Por exemplo, se considerar que pode ter comprimentos de instruções de processamento de dados até 50 carateres, modifique a política da seguinte forma:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>10</Attribute>
<NamespacePrefix>10</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>10</NodeDepth>
<AttributeCountPerElement>5</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>15</Text>
<Attribute>15</Attribute>
<NamespaceURI>10</NamespaceURI>
<Comment>40</Comment>
<ProcessingInstructionData>50</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
PITargetExceeded
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]: Processing Instruction target length exceeded [num] at line [num](possibly around char [num])", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Processing Instruction target length exceeded 10 at line 2(possibly around char 114)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Este erro ocorre se a carga útil da mensagem de entrada especificada pelo elemento <Source>
da política XMLThreatProtection contiver um documento XML em que um destino de instrução de processo excede o número de carateres especificado no elemento subordinado <ProcessingInstructionTarget>
do elemento <NameLimits>
da política.
Por exemplo, se o elemento <ProcessingInstructionTarget>
for especificado como 10
na política XMLThreatProtection, mas o payload de entrada tiver um destino de instrução de processo com mais de 10 carateres, é gerado este erro.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política XMLThreatProtection e o número da linha onde o número de destino da instrução de processamento é excedido. Por exemplo, na seguinte mensagem de erro, o nome da política é
XML-Threat-Protection-1
e o número da linha no payload é1
:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Processing Instruction target length exceeded 10 at line 2(possibly around char 114)
Examine a política XMLThreatProtection com falhas (identificada no passo n.º 1) e tome nota do valor especificado no elemento secundário
<ProcessingInstructionTarget>
do elemento<NameLimits
>.No exemplo de política XMLThreatProtection seguinte,
<ProcessingInstructionTarget>
está definido como10
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>10</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>request</Source> <StructureLimits> <NodeDepth>10</NodeDepth> <AttributeCountPerElement>5</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>20</Text> <Attribute>15</Attribute> <NamespaceURI>40</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>30</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Examine o número da linha específico (identificado no passo 1) da carga útil de entrada e verifique se o comprimento do destino da instrução de processamento especificado tem mais carateres do que o número especificado no elemento
<ProcessingInstructionTarget>
(identificado no passo 2). Se o número de carateres exceder o limite de tamanho do destino, essa é a causa do erro.Segue-se um exemplo de um payload de entrada:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml-stylesheet type="text/xsl" href="mobilephones.xsl"?> <mobilephones> <mobilephone> <name>iPhone</name> <price>$600</price> </mobilephone> <mobilephone> <name>Samsung</name> <price>$500</price> </mobilephone> </mobilephones>
O payload XML apresentado acima, na linha 2, tem um nome de destino da instrução de processamento "
xml-stylesheet"
" com um comprimento de 14 carateres. Uma vez que o nome do destino da instrução de processamento tem mais de 10 carateres (o valor especificado para o elemento<ProcessingInstructionTarget>
), é apresentado o seguinte erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Processing Instruction target length exceeded 10 at line 2(possibly around char 114)
Resolução
Se a política XMLThreatProtection se destinar a proteger contra payloads que excedam um comprimento de destino de instrução de processo específico, a mensagem de erro é esperada. Neste caso, não é necessária nenhuma ação adicional.
No entanto, se determinar que um destino de instrução de processamento pode ser mais longo, modifique o <ProcessingInstructionTarget>
elemento secundário do elemento <NameLimits>
para um valor adequado com base nos seus requisitos.
Por exemplo, se considerar que pode ter alvos de instruções de processamento de até 25 carateres, modifique a política da seguinte forma:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>5</Attribute>
<NamespacePrefix>15</NamespacePrefix>
<ProcessingInstructionTarget>25</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>10</NodeDepth>
<AttributeCountPerElement>2</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>15</Text>
<Attribute>10</Attribute>
<NamespaceURI>40</NamespaceURI>
<Comment>10</Comment>
<ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
NSURIExceeded
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]: Namespace uri length length exceeded [num] at line [num](possibly around char [num])", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Namespace uri length exceeded 10 at line 2(possibly around char 97)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Este erro ocorre se a carga útil da mensagem de entrada especificada pelo elemento <Source>
da política XMLThreatProtection contiver um documento XML em que um URI Namespace exceda o número de carateres especificado no elemento subordinado <NamespaceURI>
do elemento <ValueLimits>
da política.
Por exemplo, se o elemento <NamespaceURI>
for especificado como 10
na política, mas o payload de entrada tiver um URI do espaço de nomes com mais de 10 carateres, é gerado este erro.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política XMLThreatProtection e o número da linha onde o comprimento do URI do espaço de nomes é excedido. Por exemplo, na seguinte mensagem de erro, o nome da política é
XML-Threat-Protection-1
e o número da linha no payload é2
:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace uri length exceeded 10 at line 2(possibly around char 97)
Examine a política com falhas (identificada no passo 1) e tome nota do valor especificado no elemento subordinado
<NamespaceURI>
do elemento<ValueLimits
>.No exemplo de política XMLThreatProtection seguinte,
<NamespaceURI>
está definido como10
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>5</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>request</Source> <StructureLimits> <NodeDepth>10</NodeDepth> <AttributeCountPerElement>2</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>15</Text> <Attribute>10</Attribute> <NamespaceURI>10</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>10</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Examine o número de linha específico (identificado no passo 1) da carga útil de entrada e verifique se o comprimento do URI do espaço de nomes especificado tem mais carateres do que o número especificado no elemento
<NamespaceURI>
(identificado no passo 2). Se o número de carateres exceder o comprimento do URI do espaço de nomes, essa é a causa do erro.Segue-se um exemplo de um payload de entrada:
<?xml version = "1.0" encoding = "UTF-8"?> <profile:user xmlns:profile = "www.example.com/profile"> <profile:name>Rama Krishna</profile:name> <profile:company>Example</profile:company> <profile:phone>(91) 9876543210</profile:phone> </profile:user>
A carga útil XML apresentada acima na linha 2 tem um URI do espaço de nomes,
http://www.example/profile
, com um comprimento de 22 carateres. Uma vez que o comprimento do URI do espaço de nomes é superior a 10 (o valor especificado para o elemento<NamespaceURI>
), é apresentado o seguinte erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace uri length exceeded 10 at line 2(possibly around char 99)
Resolução
Se a política XMLThreatProtection se destinar a proteger contra payloads que excederam um comprimento de URI de espaço de nomes específico, a mensagem de erro é esperada. Neste caso, não é necessária nenhuma ação adicional.
No entanto, se determinar que é possível permitir um URI do espaço de nomes mais longo, modifique o elemento secundário <NamespaceURI>
do elemento <ValueLimits>
para um valor adequado com base nos seus requisitos.
Por exemplo, se considerar que pode ter comprimentos de URI do espaço de nomes de até 30 carateres, modifique a política da seguinte forma:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>5</Attribute>
<NamespacePrefix>10</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>10</NodeDepth>
<AttributeCountPerElement>2</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>15</Text>
<Attribute>10</Attribute>
<NamespaceURI>30</NamespaceURI>
<Comment>10</Comment>
<ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
NSPrefixExceeded
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]: Namespace prefix length exceeded [num] at line [num](possibly around char [num])", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Namespace prefix length exceeded 10 at line 2(possibly around char 105)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Este erro ocorre se a carga útil da mensagem de entrada especificada pelo elemento <Source>
contiver um documento XML em que um prefixo Namespace excede o número de carateres especificado no elemento subordinado <NamespacePrefix>
do elemento <NameLimits>
da política.
Por exemplo, se o elemento <NamespacePrefix>
for especificado como 10
na política XMLThreatProtection, mas a carga útil de entrada tiver um prefixo de espaço de nomes com mais de 10 carateres, este erro é gerado.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política XMLThreatProtection e o número da linha em que o comprimento do prefixo do URI do espaço de nomes é excedido. Por exemplo, na seguinte mensagem de erro, o nome da política é
XML-Threat-Protection-1
e o número da linha no payload é2
:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace prefix length exceeded 10 at line 2(possibly around char 105)
Examine a política com falhas (identificada no passo 1) e tome nota do valor especificado no elemento subordinado
<NamespacePrefix>
do elemento<NameLimits
>.No exemplo de política XMLThreatProtection seguinte,
<NamespacePrefix>
está definido como10
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>10</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>request</Source> <StructureLimits> <NodeDepth>10</NodeDepth> <AttributeCountPerElement>5</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>20</Text> <Attribute>15</Attribute> <NamespaceURI>40</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>30</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Examine o número da linha específico (identificado no passo 1) da carga útil de entrada e verifique se o comprimento do prefixo do espaço de nomes especificado tem mais carateres do que o número especificado no elemento
<NamespacePrefix>
(identificado no passo 2). Se o número de carateres exceder o limite do prefixo do espaço de nomes, essa é a causa do erro.Segue-se um exemplo de um payload de entrada:
<?xml version = "1.0" encoding = "UTF-8"?> <userprofile:user xmlns:userprofile = "www.example/profile"> <userprofile:name>Rama Krishna</userprofile:name> <userprofile:company>Example</userprofile:company> <userprofile:phone>(011) 123-4567</userprofile:phone> </userprofile:user>
A carga útil XML apresentada acima, na linha 2, tem um prefixo de espaço de nomes
userprofile
com um comprimento de 11 carateres. Uma vez que o comprimento do prefixo do URI do espaço de nomes é superior a 10 (o valor especificado para o elemento<NamespacePrefix>
), é apresentado o seguinte erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace prefix length exceeded 10 at line 2(possibly around char 105)
Resolução
Se a política XMLThreatProtection se destinar a proteger contra payloads que excedam um comprimento de prefixo de URI de espaço de nomes específico, a mensagem de erro é esperada. Neste caso, não é necessária nenhuma ação adicional.
No entanto, se determinar que é possível permitir um prefixo URI do espaço de nomes mais longo, modifique o elemento secundário <NamespacePrefix>
do elemento <NameLimits>
para um valor adequado com base nos seus requisitos.
Por exemplo, se considerar que pode ter comprimentos de prefixos de URI de espaço de nomes de até 15 carateres, modifique a política da seguinte forma:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>5</Attribute>
<NamespacePrefix>15</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>10</NodeDepth>
<AttributeCountPerElement>2</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>15</Text>
<Attribute>10</Attribute>
<NamespaceURI>40</NamespaceURI>
<Comment>10</Comment>
<ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
NSCountExceeded
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]: Namespace count exceeded [num] at line [num](possibly around char [num])", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace count exceeded 3 at line 2(possibly around char 234)",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Este erro ocorre se a carga útil da mensagem de entrada especificada pelo elemento <Source>
da política XMLThreatProtection contiver um documento XML em que o número de espaços de nomes usados num único elemento excede o número especificado no elemento secundário <NamespaceCountPerElement>
do elemento <StructureLimits>
da política.
Por exemplo, se o elemento <NamespaceCountPerElement>
for especificado como 3
na política, mas o payload de entrada tiver um elemento com mais de 3 espaços de nomes, este erro é gerado.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política XMLThreatProtection e o número da linha onde o número de espaços de nomes é excedido. Por exemplo, na seguinte mensagem de erro, o nome da política é
XMLThreat-Protection-1
e o número da linha no payload é2
:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace count exceeded 3 at line 2(possibly around char 234)
Examine a política com falhas (identificada no passo 1) e tome nota do valor especificado no elemento subordinado
<NamespaceCountPerElement>
do elemento<StructureLimits
>.No exemplo de política XMLThreatProtection seguinte,
<NamespaceCountPerElement>
está definido como3
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>10</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>request</Source> <StructureLimits> <NodeDepth>10</NodeDepth> <AttributeCountPerElement>5</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>20</Text> <Attribute>15</Attribute> <NamespaceURI>40</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>30</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Examine o número da linha específico (identificado no passo 1) da carga útil de entrada e verifique se o número de espaços de nomes especificados aí para um único elemento é superior ao número especificado no elemento
<NamespaceCountPerElement>
(identificado no passo 2). Se o número de espaços de nomes exceder o limite de contagem de espaços de nomes por elemento, essa é a causa do erro.Segue-se um exemplo de um payload de entrada:
<?xml version = "1.0" encoding = "UTF-8"?> <hellos xmlns:h="https://www.w3schools.com/greeting1" xmlns:a="https://www.w3schools.com/greeting2" xmlns:b="https://www.w3schols.com/greeting3" xmlns:c="https://www.w3schools.com/greeting4"> <a:hello1>world1</a:hello1> <b:hello2>world2</b:hello2> <c:hello2>world2</c:hello2> <h:hello2>world2</h:hello2> </hellos>
A carga útil XML apresentada acima, na linha 2, tem mais de 3 espaços de nomes. Uma vez que a contagem de espaços de nomes é superior a 3 (o valor especificado para o elemento
<NamespaceCountPerElement>
), é apresentado o seguinte erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace count exceeded 3 at line 2(possibly around char 234)
Resolução
Se a política XMLThreatProtection se destinar a proteger contra payloads que excedam um número específico de espaços de nomes num único elemento, a mensagem de erro é esperada. Neste caso, não é necessária nenhuma ação adicional.
No entanto, se determinar que é possível permitir um número maior de espaços de nomes, modifique o elemento <NamespaceCountPerElement>
filho do elemento <StructureLimits>
para um valor adequado com base nos seus requisitos.
Por exemplo, se considerar que pode ter até 5 espaços de nomes num único elemento, modifique a política da seguinte forma:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>10</Attribute>
<NamespacePrefix>10</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>10</NodeDepth>
<AttributeCountPerElement>5</AttributeCountPerElement>
<NamespaceCountPerElement>5</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>20</Text>
<Attribute>15</Attribute>
<NamespaceURI>40</NamespaceURI>
<Comment>10</Comment>
<ProcessingInstructionData>30</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
InvalidXMLPayload
Código de erro
steps.xmlthreatprotection.ExecutionFailed
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. Reason: [error_description]", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: Syntax error while parsing XML prologue",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Este erro ocorre se a carga útil da mensagem de entrada especificada pelo elemento <Source>
da política XMLProtectionPolicy não for um documento XML válido.
Diagnóstico
Examine a mensagem de erro para identificar o nome da política onde o erro ocorreu. No exemplo seguinte, o nome da política é
XML-Threat-Protection-1
.XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: Syntax error while parsing XML prologue
Examine a carga útil de entrada e verifique se o documento XML transmitido na carga útil é, de facto, um documento XML bem formado ou não.
Segue-se um exemplo de um payload de entrada:
<?xml version="1.0" encoding="UTF-8"?> <bookstore> <book category="cooking"> <title lang="en">Easy Indian Cooking</title> <author>Suneeta</author> <year>2004</year> <price>300.00</price> </book> <bookstore>
Na carga útil XML apresentada acima, a linha 9 não fecha o elemento raíz corretamente, pois falta
/
. Uma vez que este não é um XML com formato correto, recebe o seguinte erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: Syntax error while parsing XML prologue
Resolução
Certifique-se de que é transmitido um payload XML de entrada válido a qualquer proxy de API que inclua a política XMLThreatProtection.
Para corrigir o erro de exemplo descrito acima, modifique o payload XML de entrada da seguinte forma:
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book category="cooking">
<title lang="en">Easy Indian Cooking
<author>Suneeta</author>
<year>2004</year>
<price>300.00</price>
</book>
</bookstore>
SourceUnavailable
Código de erro
steps.xmlthreatprotection.SourceUnavailable
Corpo da resposta de erro
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition[policy_name]: Source[var_name] is not available" "detail": { "errorcode": "steps.xmlthreatprotection.SourceUnavailable" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Source requests is not available",
"detail": {
"errorcode": "steps.xmlthreatprotection.SourceUnavailable"
}
}
}
Causa
Este erro ocorre se a variável message especificada no elemento <Source>
da política XMLThreatProtection for:
- Fora do âmbito (não disponível no fluxo específico onde a política está a ser executada)
- Não é um dos valores válidos
request
,response
oumessage
Por exemplo, este erro ocorre se o elemento <Source>
na política estiver definido como uma variável que não existe no fluxo onde a política é executada.
Diagnóstico
Identifique o nome da política XMLThreatProtection e o nome da variável de origem na mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da política XMLThreatProtection é
XML-Threat-Protection-1
e a variável Source érequests:
XMLThreatProtection stepDefinition XML-Threat-Protection-1: Source requests is not available
Examine a política XMLThreatProtection com falhas e verifique o valor especificado para o elemento
<Source>
identificado no passo 1.No exemplo de política XMLThreatProtection seguinte, o elemento
<Source>
está definido comorequests
.<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>10</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>requests</Source> <StructureLimits> <NodeDepth>10</NodeDepth> <AttributeCountPerElement>5</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>20</Text> <Attribute>15</Attribute> <NamespaceURI>40</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>30</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Os valores válidos para o elemento
<Source>
sãorequest
,response
oumessage.
. Uma vez querequests
não é um valor válido e não existe no fluxo onde a política está a ser executada, recebe o erro:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Source requests is not available
Resolução
Certifique-se de que a variável definida no elemento <Source>
da política XMLThreatProtection com falha está definida como request
, response
ou message
e existe no fluxo onde a política é executada.
Para corrigir a política de exemplo apresentada acima, pode modificar o elemento <Source>
para usar a variável request
, porque existe no fluxo de pedidos:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>10</Attribute>
<NamespacePrefix>10</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>request</Source>
<StructureLimits>
<NodeDepth>10</NodeDepth>
<AttributeCountPerElement>5</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>20</Text>
<Attribute>15</Attribute>
<NamespaceURI>40</NamespaceURI>
<Comment>10</Comment>
<ProcessingInstructionData>30</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>
NonMessageVariable
Código de erro
steps.xmlthreatprotection.NonMessageVariable
Corpo da resposta de erro
{ "fault": { "faultstring": "Variable var_name does not resolve to a Message" "detail": { "errorcode": "steps.xmlthreatprotection.NonMessageVariable" } } }
Exemplo de corpo da resposta de erro
{
"fault": {
"faultstring": "Variable message.content does not resolve to a Message",
"detail": {
"errorcode": "steps.xmlthreatprotection.NonMessageVariable"
}
}
}
Causa
Este erro ocorre se o elemento <Source>
na política XMLThreatProtection estiver definido como uma variável que não é do tipo message
.
As variáveis de tipo de mensagem representam pedidos e respostas HTTP completos. As variáveis de fluxo do Apigee incorporadas request
, response
e message
são do tipo Message. Para saber mais sobre as variáveis de mensagens, consulte a referência de variáveis de fluxo.
Diagnóstico
Identifique o nome da variável que é resolvida para um tipo de variável de mensagem a partir da mensagem de erro. Por exemplo, na seguinte mensagem de erro, o nome da variável é
message.content
Variable message.content does not resolve to a Message
Examine todas as políticas XMLThreadProtection no proxy de API onde ocorreu a falha e identifique a política XMLThreadProtection específica onde o elemento
<Source>
é especificado com o nome da variável identificado no passo 1 acima.No exemplo de política XMLThreatProtection seguinte,
<Source>
está definido comomessage.content
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> <DisplayName>XML Threat Protection-1</DisplayName> <Properties/> <NameLimits> <Element>10</Element> <Attribute>10</Attribute> <NamespacePrefix>10</NamespacePrefix> <ProcessingInstructionTarget>10</ProcessingInstructionTarget> </NameLimits> <Source>message.content</Source> <StructureLimits> <NodeDepth>10</NodeDepth> <AttributeCountPerElement>5</AttributeCountPerElement> <NamespaceCountPerElement>3</NamespaceCountPerElement> <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount> </StructureLimits> <ValueLimits> <Text>20</Text> <Attribute>15</Attribute> <NamespaceURI>40</NamespaceURI> <Comment>10</Comment> <ProcessingInstructionData>30</ProcessingInstructionData> </ValueLimits> </XMLThreatProtection>
Uma vez que a variável
message.content
não é do tipo Message, recebe o erro:Variable message.content does not resolve to a Message
Resolução
Certifique-se de que o elemento <Source>
na política XMLThreatProtection com falha está definido como uma variável de fluxo message
que existe no fluxo onde a política é executada.
Para corrigir a política, pode modificar o elemento <Source>
para especificar uma variável do tipo Message. Por exemplo, na política XMLThreatProtection com falha, pode especificar o elemento <Source>
como message
:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
<DisplayName>XML Threat Protection-1</DisplayName>
<Properties/>
<NameLimits>
<Element>10</Element>
<Attribute>10</Attribute>
<NamespacePrefix>10</NamespacePrefix>
<ProcessingInstructionTarget>10</ProcessingInstructionTarget>
</NameLimits>
<Source>message</Source>
<StructureLimits>
<NodeDepth>10</NodeDepth>
<AttributeCountPerElement>5</AttributeCountPerElement>
<NamespaceCountPerElement>3</NamespaceCountPerElement>
<ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
<ValueLimits>
<Text>20</Text>
<Attribute>15</Attribute>
<NamespaceURI>40</NamespaceURI>
<Comment>10</Comment>
<ProcessingInstructionData>30</ProcessingInstructionData>
</ValueLimits>
</XMLThreatProtection>