XmlReaderSettings.MaxCharactersInDocument Vlastnost

Definice

Získá nebo nastaví hodnotu označující maximální povolený počet znaků v dokumentu XML. Nulová hodnota (0) znamená žádné omezení velikosti dokumentu XML. Nenulová hodnota určuje maximální velikost znaků.

public:
 property long MaxCharactersInDocument { long get(); void set(long value); };
public long MaxCharactersInDocument { get; set; }
member this.MaxCharactersInDocument : int64 with get, set
Public Property MaxCharactersInDocument As Long

Hodnota vlastnosti

Maximální povolený počet znaků v dokumentu XML. Výchozí hodnota je 0.

Příklady

Následující kód tuto vlastnost nastaví a pokusí se analyzovat dokument větší než limit. Ve skutečném scénáři byste tento limit nastavili na hodnotu dostatečně velkou pro zpracování platných dokumentů, ale dostatečně malé, abyste omezili hrozbu ze škodlivých dokumentů.

string markup = "<Root>Content</Root>";

XmlReaderSettings settings = new XmlReaderSettings();
settings.MaxCharactersInDocument = 10;

try
{
    XmlReader reader = XmlReader.Create(new StringReader(markup), settings);
    while (reader.Read()) { }
}
catch (XmlException ex)
{
    Console.WriteLine(ex.Message);
}
Dim markup As String = "<Root>Content</Root>"

Dim settings As XmlReaderSettings = New XmlReaderSettings()
settings.MaxCharactersInDocument = 10

Try
    Dim reader As XmlReader = XmlReader.Create(New StringReader(markup), settings)
    While (reader.Read())
    End While
Catch ex As XmlException
    Console.WriteLine(ex.Message)
End Try

Tento kód vytvoří následující výstup:

There is an error in XML document (MaxCharactersInDocument, ).

Poznámky

Nulová hodnota (0) znamená žádné limity počtu znaků v analyzovaném dokumentu. Nenulová hodnota určuje maximální počet znaků, které je možné analyzovat.

Maximální počet znaků dokumentu zahrnuje počet znaků, které jsou výsledkem rozbalených entit.

Pokud se čtenář pokusí přečíst dokument s velikostí, která tuto vlastnost překročí, XmlException vyvolá se.

Tato vlastnost umožňuje zmírnit útoky na dostupnost služby, kdy útočník odesílá extrémně velké dokumenty XML. Omezením velikosti dokumentu můžete útok rozpoznat a spolehlivě obnovit.

Platí pro