Stai visualizzando la documentazione di Apigee e Apigee hybrid.
Visualizza la documentazione di
Apigee Edge.
ExecutionFailed
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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"
}
}
}
Tipi di errori e possibili cause
Il criterio XMLThreatProtection può generare molti tipi diversi di errori ExecutionFailed. Nella tabella seguente sono elencati i diversi tipi di errori e le relative cause possibili:
Errore | Causa |
ElementNameExceeded | La lunghezza massima della stringa consentita in un tag XML è stata superata. |
ChildCountExceeded | È stato superato il numero massimo di elementi secondari consentiti in un payload XML. |
NodeDepthExceeded | È stata superata la profondità massima di elementi XML consentiti in un payload XML. |
AttributeCountExceeded | È stato superato il numero massimo di attributi in un singolo elemento. |
AttributeNameExceeded | La lunghezza massima consentita per un nome attributo è stata superata. |
AttributeValueExceeded | La lunghezza massima consentita per un valore di attributo è stata superata. |
TextExceeded | La lunghezza massima consentita per il testo è stata superata. |
CommentExceeded | La lunghezza massima consentita per un commento è stata superata. |
PIDataExceeded | La lunghezza consentita per i dati dell'istruzione di elaborazione è stata superata. |
PITargetExceeded | La lunghezza del nome dell'istruzione di processo è stata superata. |
NSURIExceeded | È stata superata la lunghezza dell'URL dello spazio dei nomi. |
NSPrefixExceeded | La lunghezza del prefisso dello spazio dei nomi è stata superata. |
NSCountExceeded | È stato superato il numero di spazi dei nomi utilizzati in un singolo elemento. |
Payload XML non valido | Il payload XML di input non è valido. |
ElementNameExceeded
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
Il traffico di runtime restituisce un codice di risposta 500 con il seguente errore:
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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
Questo errore si verifica se il payload di input specificato dall'elemento <Source>
del criterio contiene elementi XML che superano la lunghezza massima specificata nell'elemento <Element>
sotto l'elemento <NameLimits>
.
Ad esempio, se l'elemento <Element>
viene specificato come 5
nel criterio XMLThreatProtection, ma il payload di input ha un elemento che contiene più di 5 caratteri, viene restituito questo errore.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio XMLThreatProtection, il numero di riga e il possibile numero di caratteri nel payload di input in cui è stata superata la lunghezza dell'elemento.
Ad esempio, nel seguente messaggio di errore, il nome del criterio è
XML-Threat-Protection-1,
il numero di riga nel payload è1
, mentre il possibile numero di caratteri è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)
Esamina il criterio non riuscito (identificato nel passaggio 1) e prendi nota del valore specificato nell'elemento
<Element>
.Ad esempio, nel seguente criterio XMLThreatProtection,
<Element>
è impostato su5
:<?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>
Esamina il numero di riga specifico (identificato nel passaggio 1) del payload di input e controlla se la lunghezza dell'elemento su quella riga è superiore al valore specificato per l'elemento
<Element>
(identificato nel passaggio 2). Se la lunghezza dell'elemento supera questo valore, è questa la causa dell'errore.Ecco un esempio di payload di input:
<company> <name>Example</name> <country>USA</country> </company>
Il payload XML mostrato sopra ha un elemento radice denominato
company
nella riga 1, che contiene 7 caratteri. Poiché la lunghezza dell'elemento è maggiore di 5 (il valore specificato per l'elemento<Element>
), viene visualizzato il seguente errore: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)
Risoluzione
Se il criterio XMLThreadProtection protegge dai payload con nomi di elementi che superano il valore definito, è previsto che venga visualizzato un messaggio di errore. In questo caso, non sono necessari ulteriori interventi.
Tuttavia, se determini che gli elementi più lunghi possono essere specificati nel payload senza alcuna conseguenza, modifica <Element>
impostando un valore adeguato in base ai tuoi requisiti.
Ad esempio, se pensi di poter consentire elementi fino a una lunghezza di 10, modifica il criterio XMLThreatProtection come segue:
<?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
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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
Questo errore si verifica se il payload del messaggio di input specificato dall'elemento <Source>
contiene un elemento XML che contiene più elementi secondari rispetto al valore specificato nell'elemento <ChildCount>
del criterio.
Ad esempio, se l'elemento <ChildCount>
è 3, ma il payload XML di input ha un elemento con più di tre elementi secondari, viene restituito questo errore.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio XMLThreatProtection e il numero di riga in cui è stato superato il numero di voci. Ad esempio, nel seguente messaggio di errore, il nome del criterio è
XML-Threat-Protection-1
e il numero di riga nel 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)"
Esamina il criterio non riuscito (identificato nel passaggio 1) e prendi nota del valore specificato nell'elemento
<ChildCount>
.Nel seguente esempio di norme, il valore
<ChildCount>
è impostato su3
(tieni presente che i commenti, gli elementi inclusi e altri vengono conteggiati ai fini del raggiungimento di questo 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>
Esamina il numero di riga specifico (identificato nel passaggio 1) del payload di input e controlla se il numero di elementi secondari (inclusi tutti i commenti e così via) nel payload è maggiore del valore specificato per l'elemento
<ChildCount>
(identificato nel passaggio 2). Se il numero degli elementi secondari supera il conteggio degli elementi secondari, l'errore è dovuto a questa.Ecco un esempio di payload di input:
<movie> <title>Jurassic Park</title> <language>English</language> <country>USA</country> <director>Steven Spielberg</director> </movie>
Nel payload XML mostrato sopra, la riga 5 contiene un quarto elemento secondario
<director>
dell'elemento principale<movie>
. Poiché il numero degli elementi secondari nel payload XML di input è maggiore di 3 (il valore specificato per l'elemento<ChildCount>
), viene visualizzato il seguente errore: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)
Risoluzione
Se il criterio XMLThreatProtection ha lo scopo di proteggere dai payload con un numero di elementi secondari che supera una soglia specifica, il messaggio di errore è previsto. In questo caso, non sono necessarie ulteriori azioni da parte tua.
Tuttavia, se determini che un numero maggiore di elementi secondari (inclusi i commenti e così via) può essere incluso nel payload senza alcuna conseguenza, modifica <ChildCount>
impostando un valore adeguato in base ai tuoi requisiti.
Ad esempio, se pensi di poter consentire fino a 10 elementi secondari, modifica il criterio XMLThreatProtection come segue:
<?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
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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
Questo errore si verifica se il payload del messaggio di input specificato dall'elemento <Source>
contiene un documento XML in cui la gerarchia dei nodi supera il numero specificato nell'elemento <NodeDepth>
del criterio XMLThreatProtection.
Ad esempio, se l'elemento <NodeDepth>
viene specificato come 4
nel criterio, ma il payload di input ha una profondità nodo superiore a 4
, viene restituito questo errore.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio XMLThreatProtection e il numero di riga in cui viene superata la profondità del nodo. Ad esempio, nel seguente messaggio di errore, il nome del criterio è
XML-Threat-Protection-1
e il numero di riga nel 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)
Esamina il criterio XMLThreatProtection che non ha superato il controllo (identificato nel passaggio 1) e prendi nota del valore specificato nell'elemento
<NodeDepth>
.Nel seguente esempio di criterio XMLThreatProtection, il criterio
<NodeDepth>
è impostato su5
:<?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>
Esamina il numero di riga specifico (identificato nel passaggio 1) del payload di input e controlla se la profondità del nodo specificata ha un conteggio più elevato rispetto al numero specificato nell'elemento
<NodeDepth>
(identificato nel passaggio 2). Se il livello degli elementi secondari XML supera il numero, è questa la causa dell'errore.Ecco un esempio di payload di input:
<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>
Il payload XML mostrato sopra alla riga 6 ha una profondità nodo pari a 6
.
Poiché la profondità del nodo è maggiore di 5 (il valore specificato per l'elemento<NodeDepth>
), viene visualizzato il seguente errore: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)
Risoluzione
Se il criterio XMLThreatProtection ha lo scopo di proteggere dai payload con la soglia di profondità del nodo specifica, il messaggio di errore è previsto. In questo caso, non sono necessari ulteriori interventi.
Tuttavia, se stabilisci che è possibile consentire una maggiore profondità dei nodi, modifica <NodeDepth>
impostando un valore adeguato in base ai tuoi requisiti.
Ad esempio, se pensi di poter consentire una profondità dei nodi fino a 10, modifica il criterio come segue:
<?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
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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
Questo errore si verifica se il payload del messaggio di input specificato dall'elemento <Source>
del criterio XMLThreatProtection contiene un documento XML in cui il numero di attributi di un singolo elemento supera il numero specificato nell'elemento <AttributeCountPerElement>
del criterio.
Ad esempio, se l'elemento <AttributeCountPerElement>
viene specificato come 2
nel criterioXMLThreatProtection, ma il payload di input ha un elemento con più di due attributi, viene restituito questo errore.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio XMLThreatProtection e il numero di riga in cui è stato superato il numero di attributi. Ad esempio, nel seguente messaggio di errore, il nome del criterio è
XMLThreat-Protection-1
e il numero di riga nel 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)
Esamina il criterio non riuscito (identificato nel passaggio 1) e prendi nota del valore specificato nell'elemento
<AttributeCountPerElement>
.Nell'esempio di criterio seguente, il criterio
<AttributeCountPerElement>
è impostato su2
:<?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>
Esamina il numero di riga specifico (identificato nel passaggio 1) del payload di input e controlla se il numero di attributi specificati supera il numero specificato nell'elemento
<AttributeCountPerElementh>
(identificato nel passaggio 2). Se il numero di attributi supera il conteggio, allora è questa la causa dell'errore.Ecco un esempio di payload di input:
<?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>
Il payload XML mostrato sopra alla riga 3 ha un elemento con tre attributi. Poiché il numero di attributi è maggiore di 2 (il valore specificato per l'elemento
<AttributeCountPerElement>
), viene visualizzato il seguente errore: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)
Risoluzione
Se il criterio XMLThreatProtection ha lo scopo di proteggere dai payload che superano un numero specifico di attributi, è previsto che venga visualizzato un messaggio di errore. In questo caso, non sono necessari ulteriori interventi.
Tuttavia, se stabilisci che può essere consentito un numero maggiore di attributi, modifica <AttributeCountPerElement>
impostando un valore adeguato in base ai tuoi requisiti.
Ad esempio, se pensi di poter consentire un numero massimo di attributi per elemento, fino a un massimo di cinque, modifica la norma nel seguente modo:
<?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
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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
Questo errore si verifica se il payload del messaggio di input specificato dall'elemento <Source>
del criterio XMLThreatProtection contiene un documento XML in cui il nome di un attributo supera il numero di caratteri specificati nell'elemento secondario <Attribute>
dell'elemento <NameLimits>
del criterio.
Ad esempio, se l'elemento <Attribute>
viene specificato come 5
nel criterio, ma il payload di input ha un nome di attributo con più di 5 caratteri, viene restituito questo errore.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio XMLThreatProtection e il numero di riga in cui viene superata la lunghezza del nome dell'attributo. Ad esempio, nel seguente messaggio di errore, il nome del criterio è
XML-Threat-Protection-1
e il numero di riga nel 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)
Esamina il criterio non riuscito (identificato nel passaggio 1) e prendi nota del valore specificato nell'elemento
<Attribute>
Nel seguente esempio di criterio XMLThreatProtection, il criterio
<Attribute>
è impostato su5
:<?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>
Esamina il numero di riga specifico (identificato nel passaggio 1) del payload di input e controlla se la lunghezza dell'attributo specificato contiene più caratteri rispetto al numero specificato nell'elemento
<Attribute>
(identificato nel passaggio 2). Se il numero di caratteri supera il valore dell'attributo, è questa la causa dell'errore.Ecco un esempio di payload di input:
<?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>
Il payload XML mostrato sopra alla riga 3 ha due attributi
category
ecuisine
con una lunghezza del nome rispettivamente di 8 e 7 caratteri.
Poiché la lunghezza del nome dell'attributo è maggiore di 5 (il valore specificato per l'elemento<Attribute>
), viene visualizzato il seguente errore: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)
Risoluzione
Se il criterio XMLThreatProtection ha lo scopo di proteggere da payload che superano la lunghezza specifica del nome dell'attributo, è previsto il messaggio di errore. In questo caso, non sono necessari ulteriori interventi.
Tuttavia, se stabilisci che è possibile consentire una lunghezza maggiore del nome dell'attributo, modifica <Attribute>
impostando un valore adeguato in base ai tuoi requisiti.
Ad esempio, se pensi che i nomi degli attributi possano contenere fino a 10 caratteri, modifica il criterio come segue:
<?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
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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
Questo errore si verifica se il payload del messaggio di input specificato dall'elemento <Source>
del criterio contiene un documento XML in cui il valore di un attributo supera il numero di caratteri specificati nell'elemento secondario <Attribute>
dell'elemento <ValueLimits>
.
Ad esempio, se l'elemento <Attribute>
viene specificato come 10
nel criterio XMLThreatProtection, ma il payload di input ha un valore dell'attributo con più di 10 caratteri, viene restituito questo errore.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio XMLThreatProtection e il numero di riga in cui è stato superato il numero di attributi. Ad esempio, nel seguente messaggio di errore, il nome del criterio è
XML-Threat-Protection-1
e il numero di riga nel 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)
Esamina il criterio non riuscito (identificato nel passaggio 1) e prendi nota del valore specificato nell'elemento secondario
<Attribute>
dell'elemento<ValueLimits>
.Nel seguente esempio di criterio XMLThreatProtection, il valore
<Attribute>
è impostato su 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>
Esamina il numero di riga specifico (identificato nel passaggio 1) del payload di input e controlla se la lunghezza del valore dell'attributo specificato contiene più caratteri rispetto al numero specificato nell'elemento
<Attribute>
(identificato nel passaggio 2). Se il numero di caratteri supera il valore dell'attributo, è questa la causa dell'errore.Ecco un esempio di payload di input:
<?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>
Il payload XML mostrato sopra alla riga 3 ha un attributo (cuisine) con un valore di 12 caratteri. Poiché la lunghezza del valore dell'attributo è superiore a 10 (il valore specificato per l'elemento
<Attribute>
), viene visualizzato il seguente errore: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)
Risoluzione
Se il criterio XMLThreatProtection ha lo scopo di proteggere dai payload che superano una lunghezza specifica del valore dell'attributo, è previsto il messaggio di errore. In questo caso, non sono necessari ulteriori interventi.
Tuttavia, se stabilisci che possono essere consentiti valori degli attributi più lunghi, modifica l'<Attribute>
elemento secondario dell'elemento <ValueLimits>
impostandolo su un valore adeguato in base ai tuoi requisiti.
Ad esempio, se pensi di poter attribuire valori fino a 15 caratteri, modifica la norma nel seguente modo:
<?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
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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
Questo errore si verifica se il payload del messaggio di input specificato dall'elemento <Source>
del criterio XMLThreatProtection contiene un documento XML in cui la lunghezza del testo di un elemento supera il numero di caratteri specificati nell'elemento secondario <Text>
dell'elemento <ValueLimits>
del criterio.
Ad esempio, se l'elemento <Text>
viene specificato come 15
nel criterio, ma il payload di input ha un testo con più di 15 caratteri, viene restituito questo errore.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio XMLThreatProtection e il numero di riga in cui è stato superato il numero di attributi. Ad esempio, nel seguente messaggio di errore, il nome del criterio è
XML-Threat-Protection-1
e il numero di riga nel 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)
Esamina il criterio non riuscito (identificato nel passaggio 1) e prendi nota del valore specificato nell'elemento secondario
<Text>
dell'elemento<ValueLimits>
.Nel seguente esempio di criterio XMLThreatProtection, il criterio
<Text>
è impostato su15
:<?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>
Esamina il numero di riga specifico (identificato nel passaggio 1) del payload di input e controlla se la lunghezza del valore dell'attributo specificato contiene più caratteri rispetto al numero specificato nell'elemento
<Text>
(identificato nel passaggio 2). Se il numero di caratteri supera il valore dell'attributo, è questa la causa dell'errore.<food> <name>Veg Sandwich</name> <price>$5.95</price> <description>Vegetarian Sandwich with onions, tomatoes and lettuce</description> <calories>650</calories> </food>
Il payload XML mostrato sopra alla riga 4 contiene un testo di 53 caratteri. Poiché la lunghezza del valore dell'attributo è superiore a 15 (il valore specificato per l'elemento
<Text>
), viene visualizzato il seguente errore: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)
Risoluzione
Se il criterio XMLThreatProtection ha lo scopo di proteggere dai payload che superano una lunghezza di testo specifica, il messaggio di errore è previsto. In questo caso, non sono necessari ulteriori interventi.
Tuttavia, se stabilisci che è possibile consentire testo di lunghezza maggiore, modifica l'<Text>
elemento secondario dell'elemento <ValueLimits>
impostandolo su un valore adeguato in base ai tuoi requisiti.
Ad esempio, se pensi di poter avere valori degli attributi che possono contenere fino a 60 caratteri, modifica la norma nel seguente modo:
<?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
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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
Questo errore si verifica se il payload del messaggio di input specificato dall'elemento <Source>
del criterio XMLThreatProtection contiene un documento XML in cui la lunghezza di un commento supera il numero di caratteri specificati nell'elemento secondario <Comment>
dell'elemento <ValueLimits>
del criterio.
Ad esempio, se l'elemento <Comment>
viene specificato come 10
nel criterio, ma il payload di input ha un commento con più di 10 caratteri, viene restituito questo errore.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio XMLThreatProtection e il numero di riga in cui viene superata la lunghezza del commento. Ad esempio, nel seguente messaggio di errore, il nome del criterio è
XML-Threat-Protection-1
e il numero di riga nel 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)
Esamina il criterio non riuscito (identificato nel passaggio 1) e prendi nota del valore specificato nell'elemento secondario
<Comment>
dell'elemento<ValueLimits>
.Nel seguente esempio di criterio XMLThreatProtection, il criterio
<Comment>
è impostato su10
:<?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>
Esamina il numero di riga specifico (identificato nel passaggio 1) del payload di input e controlla se la lunghezza del commento specificato contiene più caratteri rispetto al numero specificato nell'elemento
<Comment>
(identificato nel passaggio 2). Se il numero di caratteri supera il valore dell'attributo, è questa la causa dell'errore.Ecco un esempio di payload di input:
<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>
Il payload XML mostrato sopra alla riga 2 contiene un commento con una lunghezza del valore di 31 caratteri.
.
Poiché la lunghezza del commento è maggiore di 10 (il valore specificato per l'elemento<Comment>
), viene visualizzato il seguente errore: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)
Risoluzione
Se il criterio XMLThreatProtection ha lo scopo di proteggere dai payload che superano una lunghezza specifica del commento, è previsto che venga visualizzato il messaggio di errore. In questo caso, non sono necessari ulteriori interventi.
Tuttavia, se stabilisci che un commento più lungo può essere consentito, modifica l'<Comment>
elemento secondario dell'elemento<ValueLimits>
impostando un valore adeguato in base ai tuoi requisiti.
Ad esempio, se pensi di poter attribuire valori fino a 40 caratteri, modifica la norma nel seguente modo:
<?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
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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
Questo errore si verifica se il payload del messaggio di input specificato dall'elemento <Source>
del criterio XMLThreatProtection contiene un documento XML in cui un'istruzione di elaborazione dei dati supera il numero di caratteri specificato nell'elemento secondario <ProcessingInstructionData>
dell'elemento <ValueLimits>
del criterio.
Ad esempio, se l'elemento <ProcessingInstructionData>
viene specificato come 10
nel criterio XMLThreatProtection, ma il payload di input ha un'istruzione di elaborazione con più di 10 caratteri, viene restituito questo errore.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio XMLThreatProtection e il numero di riga in cui viene superata la lunghezza dell'istruzione di elaborazione. Ad esempio, nel seguente messaggio di errore, il nome del criterio è
XML-Threat-Protection-1
e il numero di riga nel 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)
Esamina il criterio non riuscito (identificato nel passaggio 1) e prendi nota del valore specificato nell'elemento secondario
<ProcessingInstructionData>
dell'elemento<ValueLimits>
.Nel seguente esempio di criterio XMLThreatProtection, il criterio
<ProcessingInstructionData>
è impostato su30
:<?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>
Esamina il numero di riga specifico (identificato nel passaggio 1) del payload di input e controlla se la lunghezza dei dati delle istruzioni di elaborazione specificati contiene più caratteri rispetto al numero specificato nell'elemento
<ProcessingInstructionData>
(identificato nel passaggio 2). Se il numero di caratteri supera i dati dell'istruzione di elaborazione, allora è questa la causa dell'errore.Ecco un esempio di payload di input:
<?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>
Il payload XML mostrato sopra alla riga 1 contiene un elemento dati delle istruzioni di elaborazione (
type="text/xsl" href="mobilephones.xsl"?)
con una lunghezza di 40 caratteri.
Poiché questa lunghezza è maggiore di 30 (il valore specificato per l'elemento<ProcessingInstructionData>
), viene visualizzato il seguente errore: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)
Risoluzione
Se il criterio XMLThreatProtection ha lo scopo di proteggere dai payload che superano una specifica lunghezza dei dati delle istruzioni di elaborazione, il messaggio di errore è previsto. In questo caso, non sono necessari ulteriori interventi.
Tuttavia, se stabilisci che possono essere consentiti elementi di dati delle istruzioni con un'elaborazione più lunga, modifica l'elemento secondario <ProcessingInstructionData>
dell'elemento <ValueLimits>
impostando un valore adeguato in base ai tuoi requisiti.
Ad esempio, se ritieni di poter avere una lunghezza massima di 50 caratteri per le istruzioni di elaborazione dati, modifica il criterio come segue:
<?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
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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
Questo errore si verifica se il payload del messaggio di input specificato dall'elemento <Source>
del criterio XMLThreatProtection contiene un documento XML in cui la destinazione dell'istruzione di processo supera il numero di caratteri specificato nell'elemento secondario <ProcessingInstructionTarget>
dell'elemento <NameLimits>
del criterio.
Ad esempio, se l'elemento <ProcessingInstructionTarget>
viene specificato come 10
nel criterio XMLThreatProtection, ma il payload di input ha una destinazione dell'istruzione di processo con più di 10 caratteri, viene restituito questo errore.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio XMLThreatProtection e il numero di riga in cui viene superato il numero di target dell'istruzione di elaborazione. Ad esempio, nel seguente messaggio di errore, il nome del criterio è
XML-Threat-Protection-1
e il numero di riga nel 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)
Esamina il criterio XMLThreatProtection che non è stato superato (identificato nel passaggio 1) e prendi nota del valore specificato nell'elemento secondario
<ProcessingInstructionTarget>
dell'elemento<NameLimits
>.Nel seguente esempio di criterio XMLThreatProtection, il criterio
<ProcessingInstructionTarget>
è impostato su10
:<?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>
Esamina il numero di riga specifico (identificato nel passaggio 1) del payload di input e controlla se la lunghezza del target dell'istruzione di elaborazione specificata contiene più caratteri rispetto al numero specificato nell'elemento
<ProcessingInstructionTarget>
(identificato nel passaggio 2). Se il numero di caratteri supera il limite di dimensione target, allora la causa dell'errore.Ecco un esempio di payload di input:
<?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>
Il payload XML mostrato sopra alla riga 2 ha un nome target dell'istruzione di elaborazione "
xml-stylesheet"
" con una lunghezza di 14 caratteri. Poiché il nome della destinazione dell'istruzione di elaborazione è più lungo di 10 (il valore specificato per l'elemento<ProcessingInstructionTarget>
), viene visualizzato il seguente errore: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)
Risoluzione
Se il criterio XMLThreatProtection ha lo scopo di proteggere dai payload che superano una specifica lunghezza dell'obiettivo dell'istruzione di processo, è previsto che venga visualizzato un messaggio di errore. In questo caso, non sono necessari ulteriori interventi.
Tuttavia, se determini che una destinazione dell'istruzione di processo può essere più lunga, modifica l'<ProcessingInstructionTarget>
elemento secondario dell'elemento <NameLimits>
impostando un valore adeguato in base ai tuoi requisiti.
Ad esempio, se pensi di poter avere target delle istruzioni di elaborazione fino a 25 caratteri, modifica il criterio come segue:
<?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
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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
Questo errore si verifica se il payload del messaggio di input specificato dall'elemento <Source>
del criterio XMLThreatProtection contiene un documento XML in cui l'URI Namespace supera il numero di caratteri specificati nell'elemento secondario <NamespaceURI>
dell'elemento <ValueLimits>
del criterio.
Ad esempio, se l'elemento <NamespaceURI>
viene specificato come 10
nel criterio, ma il payload di input ha un URI dello spazio dei nomi con più di 10 caratteri, viene restituito questo errore.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio XMLThreatProtection e il numero di riga in cui viene superata la lunghezza dell'URI dello spazio dei nomi. Ad esempio, nel seguente messaggio di errore, il nome del criterio è
XML-Threat-Protection-1
e il numero di riga nel 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)
Esamina il criterio non riuscito (identificato nel passaggio 1) e prendi nota del valore specificato nell'elemento secondario
<NamespaceURI>
dell'elemento<ValueLimits
>.Nel seguente esempio di criterio XMLThreatProtection, il criterio
<NamespaceURI>
è impostato su10
:<?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>
Esamina il numero di riga specifico (identificato nel passaggio 1) del payload di input e controlla se la lunghezza dell'URI dello spazio dei nomi specificato contiene più caratteri rispetto al numero specificato nell'elemento
<NamespaceURI>
(identificato nel passaggio 2). Se il numero di caratteri supera la lunghezza dell'URI dello spazio dei nomi, è questa la causa dell'errore.Ecco un esempio di payload di input:
<?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>
Il payload XML mostrato sopra alla riga 2 ha un URI dello spazio dei nomi,
http://www.example/profile
, con una lunghezza di 22 caratteri. Poiché la lunghezza dell'URI dello spazio dei nomi è superiore a 10 (il valore specificato per l'elemento<NamespaceURI>
), viene visualizzato il seguente errore: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)
Risoluzione
Se il criterio XMLThreatProtection ha lo scopo di proteggere da payload che hanno superato la lunghezza dell'URI dello spazio dei nomi specifica, il messaggio di errore è previsto. In questo caso, non sono necessari ulteriori interventi.
Tuttavia, se stabilisci che è possibile consentire un URI dello spazio dei nomi più lungo, modifica l'elemento secondario <NamespaceURI>
dell'elemento <ValueLimits>
inserendo un valore adeguato in base ai tuoi requisiti.
Ad esempio, se pensi di poter avere una lunghezza dell'URI dello spazio dei nomi fino a 30 caratteri, modifica il criterio come segue:
<?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
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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
Questo errore si verifica se il payload del messaggio di input specificato dall'elemento <Source>
contiene un documento XML in cui il prefisso spazio dei nomi supera il numero di caratteri specificato nell'elemento secondario <NamespacePrefix>
dell'elemento <NameLimits>
del criterio.
Ad esempio, se l'elemento <NamespacePrefix>
viene specificato come 10
nel criterio XMLThreatProtection, ma il payload di input ha un prefisso dello spazio dei nomi con più di 10 caratteri, viene restituito questo errore.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio XMLThreatProtection e il numero di riga in cui viene superata la lunghezza del prefisso dell'URI dello spazio dei nomi. Ad esempio, nel seguente messaggio di errore, il nome del criterio è
XML-Threat-Protection-1
e il numero di riga nel 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)
Esamina il criterio non riuscito (identificato nel passaggio 1) e prendi nota del valore specificato nell'elemento secondario
<NamespacePrefix>
dell'elemento<NameLimits
>.Nel seguente esempio di criterio XMLThreatProtection, il criterio
<NamespacePrefix>
è impostato su10
:<?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>
Esamina il numero di riga specifico (identificato nel passaggio 1) del payload di input e controlla se la lunghezza del prefisso dello spazio dei nomi specificato contiene più caratteri rispetto al numero specificato nell'elemento
<NamespacePrefix>
(identificato nel passaggio 2). Se il numero di caratteri supera il limite del prefisso dello spazio dei nomi, allora è questa la causa dell'errore.Ecco un esempio di payload di input:
<?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>
Il payload XML mostrato sopra alla riga 2 ha un prefisso dello spazio dei nomi
userprofile
con una lunghezza di 11 caratteri. Poiché la lunghezza del prefisso dell'URI dello spazio dei nomi è maggiore di 10 (il valore specificato per l'elemento<NamespacePrefix>
), viene visualizzato il seguente errore: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)
Risoluzione
Se il criterio XMLThreatProtection ha lo scopo di proteggere dai payload che superano la lunghezza del prefisso dell'URI dello spazio dei nomi specifica, il messaggio di errore è previsto. In questo caso, non sono necessari ulteriori interventi.
Tuttavia, se stabilisci che è possibile consentire un prefisso dell'URI dello spazio dei nomi più lungo, modifica l'elemento secondario <NamespacePrefix>
dell'elemento <NameLimits>
inserendo un valore appropriato in base ai tuoi requisiti.
Ad esempio, se pensi di poter avere una lunghezza del prefisso dell'URI dello spazio dei nomi fino a 15 caratteri, modifica il criterio come segue:
<?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
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "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" } } }
Esempio di corpo di risposta di errore
{
"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
Questo errore si verifica se il payload del messaggio di input specificato dall'elemento <Source>
del criterio XMLThreatProtection contiene un documento XML in cui il numero di spazi dei nomi utilizzati in un singolo elemento supera il numero specificato nell'elemento secondario <NamespaceCountPerElement>
dell'elemento <StructureLimits>
del criterio.
Ad esempio, se l'elemento <NamespaceCountPerElement>
viene specificato come 3
nel criterio, ma il payload di input ha un elemento con più di 3 spazi dei nomi, viene restituito questo errore.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio XMLThreatProtection e il numero di riga in cui è stato superato il numero di spazi dei nomi. Ad esempio, nel seguente messaggio di errore, il nome del criterio è
XMLThreat-Protection-1
e il numero di riga nel 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)
Esamina il criterio non riuscito (identificato nel passaggio 1) e prendi nota del valore specificato nell'elemento secondario
<NamespaceCountPerElement>
dell'elemento<StructureLimits
>.Nel seguente esempio di criterio XMLThreatProtection, il criterio
<NamespaceCountPerElement>
è impostato su3
:<?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>
Esamina il numero di riga specifico (identificato nel passaggio 1) del payload di input e controlla se il numero di spazi dei nomi specificato per un singolo elemento è superiore al numero specificato nell'elemento
<NamespaceCountPerElement>
(identificato nel passaggio 2). Se il numero di spazi dei nomi supera il limite per elemento, è questa la causa dell'errore.Ecco un esempio di payload di input:
<?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>
Il payload XML mostrato sopra alla riga 2 ha più di 3 spazi dei nomi. Poiché il numero dello spazio dei nomi è maggiore di 3 (il valore specificato per l'elemento
<NamespaceCountPerElement>
), viene visualizzato il seguente errore: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)
Risoluzione
Se il criterio XMLThreatProtection ha lo scopo di proteggere dai payload che superano un numero specifico di spazi dei nomi in un singolo elemento, si prevede che venga visualizzato il messaggio di errore. In questo caso, non sono necessari ulteriori interventi.
Tuttavia, se stabilisci che è possibile consentire un numero maggiore di spazi dei nomi, modifica l'elemento secondario <NamespaceCountPerElement>
dell'elemento <StructureLimits>
impostandolo su un valore appropriato in base ai tuoi requisiti.
Ad esempio, se pensi di poter avere fino a 5 spazi dei nomi in un singolo elemento, modifica il criterio come segue:
<?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
Codice di errore
steps.xmlthreatprotection.ExecutionFailed
Corpo della risposta di errore
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. Reason: [error_description]", "detail": { "errorcode": "steps.xmlthreatprotection.ExecutionFailed" } } }
Esempio di corpo di risposta di errore
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Execution failed. reason: Syntax error while parsing XML prologue",
"detail": {
"errorcode": "steps.xmlthreatprotection.ExecutionFailed"
}
}
}
Causa
Questo errore si verifica se il payload del messaggio di input specificato dall'elemento <Source>
del criterio XMLProtectionPolicy non è un documento XML valido.
Diagnosi
Esamina il messaggio di errore per identificare il nome del criterio in cui si è verificato. Nell'esempio seguente il nome del criterio è
XML-Threat-Protection-1
.XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: Syntax error while parsing XML prologue
Esamina il payload di input e controlla se il documento XML trasmesso nel payload è effettivamente un documento XML corretto.
Ecco un esempio di payload di input:
<?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>
Nel payload XML mostrato sopra, la riga 9 non chiude correttamente l'elemento principale in quanto manca
/
. Poiché non si tratta di un codice XML nel formato corretto, viene visualizzato l'errore:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: Syntax error while parsing XML prologue
Risoluzione
Assicurati che venga passato un payload XML di input valido a qualsiasi proxy API che includa il criterio XMLThreatProtection.
Per correggere l'errore di esempio descritto sopra, modifica il payload XML di input come segue:
<?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
Codice di errore
steps.xmlthreatprotection.SourceUnavailable
Corpo della risposta di errore
{ "fault": { "faultstring": "XMLThreatProtection stepDefinition[policy_name]: Source[var_name] is not available" "detail": { "errorcode": "steps.xmlthreatprotection.SourceUnavailable" } } }
Esempio di corpo di risposta di errore
{
"fault": {
"faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
Source requests is not available",
"detail": {
"errorcode": "steps.xmlthreatprotection.SourceUnavailable"
}
}
}
Causa
Questo errore si verifica se la variabile message specificata nell'elemento <Source>
del criterio XMLThreatProtection è:
- Fuori ambito (non disponibile nel flusso specifico in cui viene eseguita la norma)
- Non è uno dei valori validi
request
,response
omessage
Ad esempio, questo errore si verifica se l'elemento <Source>
nel criterio è impostato su una variabile che non esiste nel flusso in cui viene eseguito il criterio.
Diagnosi
Identifica il nome del criterio XMLThreatProtection e il nome della variabile Sorgente nel messaggio di errore. Ad esempio, nel seguente messaggio di errore, il nome del criterio XMLThreatProtection è
XML-Threat-Protection-1
e la variabile di origine èrequests:
XMLThreatProtection stepDefinition XML-Threat-Protection-1: Source requests is not available
Esamina il criterio XMLThreatProtection che non ha superato il controllo e controlla il valore specificato per l'elemento
<Source>
identificato nel passaggio 1.Nel seguente esempio di criterio XMLThreatProtection, l'elemento
<Source>
è impostato surequests
.<?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>
I valori validi per l'elemento
<Source>
sonorequest
,response
omessage.
. Poichérequests
non è un valore valido e non esiste nel flusso in cui viene eseguito il criterio, viene visualizzato il seguente errore:XMLThreatProtection stepDefinition XML-Threat-Protection-1: Source requests is not available
Risoluzione
Assicurati che la variabile impostata nell'elemento <Source>
del criterio XMLThreatProtection non riuscito sia impostata su request
, response
o message
e che esista nel flusso in cui viene eseguito il criterio.
Per correggere il criterio di esempio mostrato sopra, puoi modificare l'elemento <Source>
in modo da utilizzare la variabile request
, perché esiste nel flusso di richiesta:
<?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
Codice di errore
steps.xmlthreatprotection.NonMessageVariable
Corpo della risposta di errore
{ "fault": { "faultstring": "Variable var_name does not resolve to a Message" "detail": { "errorcode": "steps.xmlthreatprotection.NonMessageVariable" } } }
Esempio di corpo di risposta di errore
{
"fault": {
"faultstring": "Variable message.content does not resolve to a Message",
"detail": {
"errorcode": "steps.xmlthreatprotection.NonMessageVariable"
}
}
}
Causa
Questo errore si verifica se l'elemento <Source>
nel criterio XMLThreatProtection è impostato su una variabile non di tipo message
.
Le variabili del tipo di messaggio rappresentano intere richieste e risposte HTTP. Le variabili di flusso integrate di Apigee request
, response
e message
sono di tipo Messaggio. Per saperne di più sulle variabili dei messaggi, consulta la documentazione di riferimento sulle variabili di flusso.
Diagnosi
Identifica il nome della variabile che si risolve in un tipo di messaggio di variabile dal messaggio di errore. Ad esempio, nel seguente messaggio di errore il nome della variabile è
message.content
Variable message.content does not resolve to a Message
Esamina tutti i criteri XMLThreadProtection nel proxy API in cui si è verificato l'errore e identifica il criterio XMLThreadProtection specifico in cui viene specificato l'elemento
<Source>
con il nome della variabile identificato nel passaggio 1 precedente.Nel seguente esempio di criterio XMLThreatProtection, il criterio
<Source>
è impostato sumessage.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>
Poiché la variabile
message.content
non è di tipo Message, viene visualizzato l'errore:Variable message.content does not resolve to a Message
Risoluzione
Assicurati che l'elemento <Source>
nel criterio XMLThreatProtection che non ha superato il controllo sia impostato su una variabile di flusso message
esistente nel flusso in cui viene eseguito il criterio.
Per correggere il criterio, puoi modificare l'elemento <Source>
per specificare una variabile di tipo Message. Ad esempio, nel file XMLThreatProtection che non è stato caricato, potresti specificare l'elemento <Source>
come 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>