XmlLoadSettings.MaxElementDepth 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取并设置要加载到 DOM 对象的 XML 文档的元素深度的限制。
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
属性值
深度值。 默认值为 256。
注解
值为零 (0) 表示对 XML 文档的元素深度没有限制。 非零值指定最大深度。
一个实体计为一级嵌套。 例如,如果有一个实体引用包含两个嵌套 XML 元素的 XML 文档,请将值设置为 3。
当克隆 DOM 对象时,此属性的值将传播到克隆的对象。 当 XML 文档的大小超出此属性所设置的限制时,如果对文档进行分析,则会导致加载错误。
此属性有助于避免拒绝服务攻击,发生拒绝服务攻击时,提交的文档的元素深度过大。 无法限制元素深度会使你面临漏洞的威胁,在这种情况下相对较小的 XML 文档都可能会导致拒绝服务。 MaxElementDepth 属性可缓解此威胁。 如果担心拒绝服务,你应将此属性设为这样一个值:允许你加载文档,同时将深度限制为合理的级别。