XmlLoadSettings.MaxElementDepth プロパティ

定義

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

プロパティ値

UInt32

unsigned int

uint32_t

深度の値。 既定値は 256 です。

注釈

ゼロ (0) の値は、XML ドキュメントの要素の深さに制限がないことを意味します。 0 以外の値は、最大深度を指定します。

エンティティは、入れ子の 1 つのレベルとしてカウントされます。 たとえば、入れ子になった 2 つの XML 要素を含む XML ドキュメントを参照するエンティティがある場合は、値を 3 に設定します。

DOM オブジェクトが複製されると、このプロパティの値が複製されたオブジェクトに反映されます。 XML ドキュメントのサイズがこのプロパティによって設定された制限を超えると、ドキュメントの解析時に読み込みエラーが発生します。

このプロパティは、過度の要素深度を持つドキュメントが送信されるサービス拒否攻撃を回避するのに役立ちます。 要素の深さを制限しないと、比較的小さな XML ドキュメントがサービス拒否を引き起こす可能性がある悪用に対して開いたままになります。 MaxElementDepth プロパティは、この脅威を軽減します。 サービス拒否が心配な場合は、このプロパティを値に設定して、ドキュメントを読み込むことができますが、深さは妥当なレベルに制限する必要があります。

適用対象