XmlLoadSettings.MaxElementDepth Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene y establece los límites de la profundidad del elemento de un documento XML que se va a cargar en un objeto DOM.
public:
property unsigned int MaxElementDepth { unsigned int get(); void set(unsigned int value); };
uint32_t MaxElementDepth();
void MaxElementDepth(uint32_t value);
public uint MaxElementDepth { get; set; }
var uInt32 = xmlLoadSettings.maxElementDepth;
xmlLoadSettings.maxElementDepth = uInt32;
Public Property MaxElementDepth As UInteger
Valor de propiedad
Valor de profundidad. El valor predeterminado es 256.
Comentarios
Un valor cero (0) significa que no hay límites en la profundidad del elemento de un documento XML. Un valor distinto de cero especifica la profundidad máxima.
Una entidad cuenta como un nivel de anidamiento. Por ejemplo, si tiene una entidad que hace referencia a un documento XML que incluye dos elementos XML anidados, establezca el valor en 3.
Cuando se clona el objeto DOM, el valor de esta propiedad se propaga al objeto clonado. Cuando el tamaño de un documento XML supera el límite establecido por esta propiedad, se producirá un error de carga cuando el documento se analice.
Esta propiedad ayuda a evitar ataques por denegación de servicio en los que se envía un documento que tiene una profundidad de elemento excesiva. Si no se limita la profundidad del elemento, se abre a la vulnerabilidad de seguridad en la que un documento XML relativamente pequeño puede provocar la denegación de servicio. La propiedad MaxElementDepth mitiga esta amenaza. Si le preocupa la denegación de servicio, debe establecer esta propiedad en un valor que le permita cargar los documentos pero limita la profundidad a un nivel razonable.